diff --git a/weed-shell.md b/weed-shell.md index bb6b50f..1390774 100644 --- a/weed-shell.md +++ b/weed-shell.md @@ -106,6 +106,40 @@ no under replicated volumes ``` +# Check and Fix chunks replication +if use see in logs: +``` +I0212 22:22:56.666094 filechunk_manifest.go:197 read http://fast-volume-1:8080/2480,09a6290e6159aedd failed, err: http://fast-volume-1:8080/2480,09a6290e6159aedd?readDeleted=true: 404 Not Found +``` +1. volume.check.disk +``` +> lock; volume.check.disk -v -force -slow -volumeId 2480 -nonRepairThreshold 1 -syncDeleted +load collection logs-data volume 2480 index size 2621232 from fast-volume-3:8080 ... +load collection logs-data volume 2480 index size 2621232 from fast-volume-1:8080 ... +volume 2480 fast-volume-1:8080 has 163827 entries, fast-volume-3:8080 missed 0 and partially deleted 0 entries +volume 2480 fast-volume-3:8080 has 163827 entries, fast-volume-1:8080 missed 0 and partially deleted 0 entries +``` +2. volume.fsck +Search for files that are in the filler, but there are no chunks on the volume servers +``` +lock;volume.fsck -findMissingChunksInFiler -verifyNeedles -collection logs-data -volumeId 2480 -v +checking directory /buckets/logs-data/2023-02-13 +total 128 directories, 5148091 files +find missing file chunks in dataNodeId fast-volume-1:8080 volume 2480 ... +/buckets/logs-data/2022-10-10/39228128_2022-10-10.log +find missing file chunks in dataNodeId fast-volume-3:8080 volume 2480 ... +/buckets/logs-data/2022-10-10/39228128_2022-10-10.log +``` + +3. fs.verify +Check the status of all chunks uploaded in the last hour: +``` +fs.verify -v -modifyTimeAgo 1h +... +total 807944 directories, 121461080 files +verified 53218 files, error 0 files +``` + # One more trick You can skip the "fs." prefix, for all "fs.*" commands: ```