Skip to content
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 in validatecommittedsize #9750

Closed
garlicnation opened this issue Aug 30, 2022 · 2 comments · Fixed by #9855
Closed

Error in validatecommittedsize #9750

garlicnation opened this issue Aug 30, 2022 · 2 comments · Fixed by #9855
Assignees
Labels
api: storage Issues related to the Cloud Storage API. priority: p2 Moderately-important priority. Fix may not be included in next release. type: bug Error or flaw in code with unintended results or allowing sub-optimal usage patterns.

Comments

@garlicnation
Copy link

During a transfer using the cpp library, we observed this error.

ValidateCommittedSize: the server indicates that 41943040000 bytes are committed but given the current request no more than 41810919424 should be. This could be caused by multiple applications trying to use the same resumable upload, but could be a bug in the library or the service. If you believe this is a bug, please contact support or report the bug at https://github.com/googleapis/google-cloud-cpp/issues/new Include as much information as you can including this message, session_id

I have the session id and other information to share out of band(don't want to post on github)

@coryan coryan added type: bug Error or flaw in code with unintended results or allowing sub-optimal usage patterns. api: storage Issues related to the Cloud Storage API. priority: p2 Moderately-important priority. Fix may not be included in next release. labels Aug 30, 2022
@coryan
Copy link
Contributor

coryan commented Aug 30, 2022

Start at P2 because this looks like it could be elsewhere. Will increase the priority if needed.

@coryan coryan self-assigned this Aug 30, 2022
@coryan
Copy link
Contributor

coryan commented Sep 12, 2022

@garlicnation as we discussed elsewhere, there is one scenario that could explain this problem:

  1. The application is uploading object X, and has uploaded 10 * 256 KiB.
  2. Assume the service has received all the data, i.e., 10 * 256KiB but has not committed the full amount.
  3. The application has checkpointed the upload id.
  4. The application restarts before finalizing the upload, it reads the upload id, and asks the C++ client library to resume the upload.
  5. The client library queries the service and the service returns that 4 * 256 KiB have been uploaded.
  6. The application sends 2 * 256 KiB.
  7. The service responds that now 10 * 256 KiB are committed.

All of these steps are possible, but (with the current API) the client library returns at error, and the application will need to manually resume the upload (once again, though eventually it should converge).

I cannot assert that this is the problem you noticed, but it is plausible. I am going to think about improvements to the error (maybe reference this note). Beyond that, I do not think there is enough information to take action at this point.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
api: storage Issues related to the Cloud Storage API. priority: p2 Moderately-important priority. Fix may not be included in next release. type: bug Error or flaw in code with unintended results or allowing sub-optimal usage patterns.
Projects
None yet
Development

Successfully merging a pull request may close this issue.

2 participants