<p>mc mirror overwrite saat ini rusak</p>

Dibuat pada 29 Jan 2020  Β·  12Komentar  Β·  Sumber: minio/mc

Perilaku yang diharapkan

mc mirror --overwrite seharusnya mendeteksi file yang diubah

Perilaku sebenarnya

Sepertinya, saat ini tidak

Langkah-langkah untuk mereproduksi perilaku

$ mc mb myminio/mybucket 
Bucket created successfully `myminio/mybucket`.

$ echo one > testdir/testfile.txt

$ cat testdir/testfile.txt 
one

$ mc mirror --overwrite testdir myminio/mybucket 
...estfile.txt:  4 B / 4 B ┃▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓┃ 227 B/s 0s

$ mc cat myminio/mybucket/testfile.txt
one

$ echo two > testdir/testfile.txt

$ cat testdir/testfile.txt 
two

$ mc mirror --overwrite testdir myminio/mybucket 
 0 B / ? ┃░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░▓┃ 0s

$ mc cat myminio/mybucket/testfile.txt
one

mc --versi

mc versi RELEASE.2020-01-25T03-02-19Z

Sistem Informasi

Klien dan Server: Fedora 31 dengan XFS sebagai sistem file
versi minio 2020-01-25T02:50:51Z

community medium stale

Komentar yang paling membantu

Dengan --overwrite dan --preserve:

$ mc mb myminio/mybucket
Bucket created successfully `myminio/mybucket`.

$ echo one > testdir/testfile.txt

$ cat testdir/testfile.txt 
one

$ mc mirror --overwrite --preserve testdir myminio/mybucket 
...estfile.txt:  4 B / 4 B ┃▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓┃ 283 B/s 0s

$ mc cat myminio/mybucket/testfile.txt
one

$ echo two > testdir/testfile.txt

$ cat testdir/testfile.txt 
two

$ mc mirror --overwrite --preserve testdir myminio/mybucket 
 0 B / ? ┃░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░▓┃ 0s

$ mc cat myminio/mybucket/testfile.txt
one

Semua 12 komentar

Dengan --overwrite dan --preserve:

$ mc mb myminio/mybucket
Bucket created successfully `myminio/mybucket`.

$ echo one > testdir/testfile.txt

$ cat testdir/testfile.txt 
one

$ mc mirror --overwrite --preserve testdir myminio/mybucket 
...estfile.txt:  4 B / 4 B ┃▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓┃ 283 B/s 0s

$ mc cat myminio/mybucket/testfile.txt
one

$ echo two > testdir/testfile.txt

$ cat testdir/testfile.txt 
two

$ mc mirror --overwrite --preserve testdir myminio/mybucket 
 0 B / ? ┃░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░▓┃ 0s

$ mc cat myminio/mybucket/testfile.txt
one

@sebschlue ini sebenarnya diketahui & diharapkan. mc mirror tidak mendeteksi perubahan pada file jika ukurannya tidak berubah, seperti one & two memiliki panjang yang sama.

@vadmeste Apa batasan yang menyebabkan ini? Tampaknya tidak nyaman di terbaik.

@vadmeste Apa batasan yang menyebabkan ini? Tampaknya tidak nyaman di terbaik.

Tidak ada checksum yang disimpan di sisi server (ETag tidak sama dengan md5sum objek dalam beberapa kasus)

Di saluran Slack, beberapa mengonfirmasi bahwa itu akan berfungsi saat menggunakan --preserve

@vadmeste Apa batasan yang menyebabkan ini? Tampaknya tidak nyaman di terbaik.

Tidak ada checksum yang disimpan di sisi server (ETag tidak sama dengan md5sum objek dalam beberapa kasus)

Aduh. Itu berarti untuk memotret hal-hal tertentu kita harus mengandalkan rsync.
Apakah ada cara untuk menambahkan/mengubah beberapa metadata tidak berbahaya yang dicentang untuk memaksa ini? Atau memastikan etag sama dengan hash?

Tidak ada checksum yang disimpan di sisi server (ETag tidak sama dengan md5sum objek dalam beberapa kasus)

Aduh. Itu berarti untuk memotret hal-hal tertentu kita harus mengandalkan rsync.
Apakah ada cara untuk menambahkan/mengubah beberapa metadata tidak berbahaya yang dicentang untuk memaksa ini? Atau memastikan etag sama dengan hash?

Untuk itu gunakan rclone @seqizz yang menghitung checksum seluruh konten - ETag tidak md5sum tidak selalu melihat SSE-C, Multipart dll - dan md5sum tidak dapat diandalkan banyak objek di luar sana dapat dengan mudah mencocokkan md5sum yang sama - https: //www.mscs.dal.ca/~selinger/md5collision/ dan tampaknya cukup umum dalam skala.

Kecuali tentu saja kami dapat menghitung checksum seluruh objek menggunakan teknik seperti blake2b - kami perlu menghitung ini sebelum mengunggah konten, memperlambat ini secara signifikan yang akan Anda unggah.

rsync dimaksudkan untuk disk lokal ke disk jarak jauh menggunakan protokol delta yang membaca kedua ujungnya untuk checksum ini tidak terduga jika terjadi penyimpanan objek, karena biaya cloud.

Ah, tentu saja, saya hanya menembak bebas karena saat ini tidak terikat oleh "biaya lalu lintas cloud" :) Saya akan memeriksa rclone. Terima kasih.

Hanya ingin tahu, apakah mungkin untuk menambahkan tajuk lain seperti etag tetapi mengandung hash untuk minio (saat membuat/memodifikasi), tanpa merusak kompatibilitas?

Hanya ingin tahu, apakah mungkin untuk menambahkan tajuk lain seperti etag tetapi mengandung hash untuk minio (saat membuat/memodifikasi), tanpa merusak kompatibilitas?

Sangat mungkin @seqizz itu akan sangat spesifik mc , artinya kami tidak memiliki kendali atas backend penyimpanan Anda, jadi setiap perubahan status di sana tidak akan dipahami dengan benar oleh mc .

ini dapat menyebabkan salinan ganda dll seperti masalah, itu dibiarkan dengan sengaja karena kami tidak dapat menemukan cara yang hemat biaya untuk melakukannya dengan benar untuk semua kasus penggunaan umum.

Bisakah masalah ini ditutup?

IMHO ini perlu didokumentasikan lebih jelas, sebaiknya di bagian cermin dokumentasi mc secara langsung.
Tapi ya kalau begini cara kerja minio, tidak terdengar seperti bug. πŸ‘

Masalah ini secara otomatis ditandai sebagai basi karena tidak ada aktivitas terbaru. Ini akan ditutup setelah 21 hari jika tidak ada aktivitas lebih lanjut yang terjadi. Terima kasih atas kontribusi Anda.

Apakah halaman ini membantu?
0 / 5 - 0 peringkat

Masalah terkait

tru2dagame picture tru2dagame  Β·  6Komentar

kevinlul picture kevinlul  Β·  13Komentar

zllovesuki picture zllovesuki  Β·  19Komentar

silvernode picture silvernode  Β·  8Komentar

philipkozeny picture philipkozeny  Β·  9Komentar