Comments (4)
file content does not match hash
That error is an integrity check to ensure that pack files uploaded by restic are not corrupted (totally unrelated to NTP). It can occur if either the backup client encounters a bitflip, the data is corrupted while transferring it to the rest-server or the rest-server encounters a bitflip while verifying the pack file. Bitflips are usually caused by a bit flips in memory or in the CPU while processing data.
the client returns 'Fatal: unable to save snapshot: server response unexpected: 400 Bad Request (400)'
Could you provide the log output from the client, in particular the retrying after
lines?
Judging from the debug log, I'd expect the client to have retried the failed upload multiple times, however, without the client logs this is just a guess.
Assuming my guess is correct, this means that the bitflip likely occurred at the client which tried to upload the corrupted data multiple times. If this is just a one time event, you can probably ignore it. However, you must run restic check --read-data
to ensure that the repository has not been corrupted.
from rest-server.
Thanks, that makes sense. I wonder if I need to do some other integrity checks on the client. This happens with almost every backup attempt.
Here's output from the client during a failure:
Save(<data/992e4e7839>) returned error, retrying after 552.330144ms: server response unexpected: 400 Bad Request (400)
Save(<data/992e4e7839>) returned error, retrying after 1.080381816s: server response unexpected: 400 Bad Request (400)
Save(<data/992e4e7839>) returned error, retrying after 1.31013006s: server response unexpected: 400 Bad Request (400)
Save(<data/992e4e7839>) returned error, retrying after 1.582392691s: server response unexpected: 400 Bad Request (400)
Save(<data/992e4e7839>) returned error, retrying after 2.340488664s: server response unexpected: 400 Bad Request (400)
Save(<data/992e4e7839>) returned error, retrying after 4.506218855s: server response unexpected: 400 Bad Request (400)
Save(<data/992e4e7839>) returned error, retrying after 3.221479586s: server response unexpected: 400 Bad Request (400)
Save(<data/992e4e7839>) returned error, retrying after 5.608623477s: server response unexpected: 400 Bad Request (400)
Save(<data/992e4e7839>) returned error, retrying after 7.649837917s: server response unexpected: 400 Bad Request (400)
Save(<data/992e4e7839>) returned error, retrying after 15.394871241s: server response unexpected: 400 Bad Request (400)
Fatal: unable to save snapshot: server response unexpected: 400 Bad Request (400)
Here is the server output:
POST /backup/data/eacb1db8d6fb6fc83ab30e2e4e1e369d29a53970312465a8103e7b72903f5364
saveBlob()
POST /backup/data/992e4e783954618e70d415aa8e7420ccda42f11c29898bd9200c1020d4c97d0c
saveBlob()
POST /backup/data/2c8e4b6e70a82a10b00bc7cf8edec82957a141c4a47a9ce79a3d9c96633e7ed3
saveBlob()
POST /backup/data/a8f6daa5def316dec67a9c0a2b9b534f0394308b5e1ef92991b35f891f7206f7
saveBlob()
POST /backup/data/a2e0f1e183c4815568ff29ff8d9128f87529bfadbf1d45b6c1a99453c41f41cd
saveBlob()
file content does not match hash
DELETE /backup/data/992e4e783954618e70d415aa8e7420ccda42f11c29898bd9200c1020d4c97d0c
deleteBlob()
DELETE /backup/locks/6ccd40e283d859deef7e2412075624db975bf40d589f8777da9775cf478d7f7d
deleteBlob()
unexpected EOF
from rest-server.
Please run some stress tests like memtest86 / prime95 to make sure the system is working correctly. That frequent data corruption usually indicates a hardware problem.
from rest-server.
Closing as I don't think there's anything we can do here on the rest-server side.
from rest-server.
Related Issues (20)
- WARNING: fsync is not supported by the data storage HOT 7
- Support X-Forwarded-For in logging when behind a proxy HOT 1
- Migration of already existing repositories leads to 404 HOT 7
- Base URL flag HOT 2
- rest-server doesn't correctly implement REST API HOT 2
- Prepend log with date/time
- FR: add Host-level access control HOT 6
- Secure default or configurable TLS settings
- Ensure that written data is correctly written HOT 2
- Additional metric: last snapshot date/timestamp(per repository) HOT 4
- Build & publish docker images HOT 5
- rest-server.socket example file contains 8080 instead of default port 8000
- customize log format
- Cannot change the listen port on docker container HOT 4
- Segfault on 0.11.0 and 0.12.1 HOT 3
- Add the possibility to disable the use of "--time"-flag (when --append-only is active) HOT 2
- systemd: address family not supported by protocol HOT 2
- List(data) failed HOT 3
- Server-side checksumming HOT 3
Recommend Projects
-
React
A declarative, efficient, and flexible JavaScript library for building user interfaces.
-
Vue.js
🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
-
Typescript
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
-
TensorFlow
An Open Source Machine Learning Framework for Everyone
-
Django
The Web framework for perfectionists with deadlines.
-
Laravel
A PHP framework for web artisans
-
D3
Bring data to life with SVG, Canvas and HTML. 📊📈🎉
-
Recommend Topics
-
javascript
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
-
web
Some thing interesting about web. New door for the world.
-
server
A server is a program made to process requests and deliver data to clients.
-
Machine learning
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
-
Visualization
Some thing interesting about visualization, use data art
-
Game
Some thing interesting about game, make everyone happy.
Recommend Org
-
Facebook
We are working to build community through open source technology. NB: members must have two-factor auth.
-
Microsoft
Open source projects and samples from Microsoft.
-
Google
Google ❤️ Open Source for everyone.
-
Alibaba
Alibaba Open Source for everyone
-
D3
Data-Driven Documents codes.
-
Tencent
China tencent open source team.
from rest-server.