New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Error: Backend down when using gateway to aws s3 #6934
Comments
@tomerzel87 We will try to reproduce this issue and get back to you with more questions. |
@tomerzel87, looks like you lost network connectivity to s3 backend while this object was being written. Cache writes occur simultaneously with backend writes - if there was a network issue, it would cause cache to fail as well. Is this happening consistently on all uploads or just a one-off issue? |
@poornas we wrote several blobs to AWS which caused our internet connection to become a bit slow. |
@tomerzel87, the underlying minio-go client by default is configured to retry the upload upto 5 times before it returns the Backend Down error |
@poornas I can tell you that we tested with minio as gateway to AWS and without. |
@tomerzel87, retry starts at 30 seconds with exponential backoff. You mentioned that writes to AWS without minio as gateway had no timeouts - was this the case when you turn off cache? Can you paste your cache settings and how you are starting gateway with docker to help debug further |
@poornas our cache settings: I've mounted an external directory as the caching directory and it had ~150GB of free space to utilize. |
@tomerzel87 , tried to repro this issue starting gateway with docker container like so,
and ran some automated tests that upload objects to the gateway. I was able to simulate the error you see when I killed my network connection - after the retries, the client fails with Object storage backend is unreachable.
Can you run tcpdump while uploading to gateway with cache on, and attach packet trace? Also, which client is being used for uploading to the gateway? |
@poornas It will take me awhile to reproduce this on our lab due to other responsibilities. |
@tomerzel87, were you able to reproduce this with tcpdump enabled? |
PUTs will no longer be cached. Hence we will close this as a won't fix. @tomerzel87 let us know your thoughts. |
We discussed again, this time we are going to cache PUTs but we will be doing it with a new backend style. |
only on download. Fixes: minio#7458, minio#7573, minio#6265, minio#6630, minio#7938 and minio#6934 This will allow cache to consistently work for server and gateways. Range GET requests will be cached in the background after the request is served from the backend. - All cached content is automatically bitrot protected. - Avoid ETag verification if cache-control header is set and cached content is still valid. - This PR changes the cache backend format, and all existing content will be migrated to the new format. Until the data is migrated completely, all content will be served from the backend.
only on download. Fixes: minio#7458, minio#7573, minio#6265, minio#6630, minio#7938 and minio#6934 This will allow cache to consistently work for server and gateways. Range GET requests will be cached in the background after the request is served from the backend. - All cached content is automatically bitrot protected. - Avoid ETag verification if cache-control header is set and cached content is still valid. - This PR changes the cache backend format, and all existing content will be migrated to the new format. Until the data is migrated completely, all content will be served from the backend.
only on download. Fixes: minio#7458, minio#7573, minio#6265, minio#6630, minio#7938 and minio#6934 This will allow cache to consistently work for server and gateways. Range GET requests will be cached in the background after the request is served from the backend. - All cached content is automatically bitrot protected. - Avoid ETag verification if cache-control header is set and cached content is still valid. - This PR changes the cache backend format, and all existing content will be migrated to the new format. Until the data is migrated completely, all content will be served from the backend.
only on download. Fixes: minio#7458, minio#7573, minio#6265, minio#6630, minio#7938 and minio#6934 This will allow cache to consistently work for server and gateways. Range GET requests will be cached in the background after the request is served from the backend. - All cached content is automatically bitrot protected. - Avoid ETag verification if cache-control header is set and cached content is still valid. - This PR changes the cache backend format, and all existing content will be migrated to the new format. Until the data is migrated completely, all content will be served from the backend.
only on download. Fixes: minio#7458, minio#7573, minio#6265, minio#6630, minio#7938 and minio#6934 This will allow cache to consistently work for server and gateways. Range GET requests will be cached in the background after the request is served from the backend. - All cached content is automatically bitrot protected. - Avoid ETag verification if cache-control header is set and cached content is still valid. - This PR changes the cache backend format, and all existing content will be migrated to the new format. Until the data is migrated completely, all content will be served from the backend.
only on download. Fixes: minio#7458, minio#7573, minio#6265, minio#6630, minio#7938 and minio#6934 This will allow cache to consistently work for server and gateways. Range GET requests will be cached in the background after the request is served from the backend. - All cached content is automatically bitrot protected. - Avoid ETag verification if cache-control header is set and cached content is still valid. - This PR changes the cache backend format, and all existing content will be migrated to the new format. Until the data is migrated completely, all content will be served from the backend.
When writing multiple objects to a minio acting as a gateway to AWS with local cache, getting the following errors:
API: PutObject(bucket=data, object=agents/group-ADCDPL/agent-S0W1/resources/chunks/full_vol:DISK01:2018-12-06_114645.676Z:2805a94d-be66-47a9-b726-df3w82f57188:00001911.chunk.bin)
Time: 12:01:46 UTC 12/06/2018
RequestID: 156DBCAEBF30D7AF
RemoteHost: 192.1.1.2
UserAgent: jclouds/2.1.0 java/1.8.0_181
Error: Backend down
1: cmd/fs-v1-helpers.go:349:cmd.fsCreateFile()
2: cmd/disk-cache-fs.go:396:cmd.(*cacheFSObjects).PutObject()
3: cmd/disk-cache-fs.go:277:cmd.(*cacheFSObjects).Put()
4: cmd/disk-cache.go:696:cmd.cacheObjects.PutObject.func2()
The local cache is not close to being full.
Your Environment
minio version
): Version: 2018-11-22T02:51:56Zuname -a
): Linux ubuntu16 4.4.0-139-genericThe text was updated successfully, but these errors were encountered: