Title: LargeFileUpload problem if 1 byte left from last slice · Issue #2581 · microsoftgraph/msgraph-sdk-java · GitHub
Open Graph Title: LargeFileUpload problem if 1 byte left from last slice · Issue #2581 · microsoftgraph/msgraph-sdk-java
X Title: LargeFileUpload problem if 1 byte left from last slice · Issue #2581 · microsoftgraph/msgraph-sdk-java
Description: Describe the bug Hello, i have a problem to upload files if exactly 1 byte is missing in the last slice. The upload is throwing an exception: java.util.concurrent.CancellationException: The upload task was retried the maximum number of t...
Open Graph Description: Describe the bug Hello, i have a problem to upload files if exactly 1 byte is missing in the last slice. The upload is throwing an exception: java.util.concurrent.CancellationException: The upload ...
X Description: Describe the bug Hello, i have a problem to upload files if exactly 1 byte is missing in the last slice. The upload is throwing an exception: java.util.concurrent.CancellationException: The upload ...
Opengraph URL: https://github.com/microsoftgraph/msgraph-sdk-java/issues/2581
X: @github
Domain: github.com
{"@context":"https://schema.org","@type":"DiscussionForumPosting","headline":"LargeFileUpload problem if 1 byte left from last slice","articleBody":"### Describe the bug\n\nHello,\ni have a problem to upload files if exactly 1 byte is missing in the last slice.\n\nThe upload is throwing an exception:\njava.util.concurrent.CancellationException: The upload task was retried the maximum number of times without success and has been cancelled.\n\nE.g.\nFilesize: 288001\n\nSlice: 32000\nUploaded 32000 bytes of 288001 total bytes\nUploaded 64000 bytes of 288001 total bytes\nUploaded 96000 bytes of 288001 total bytes\nUploaded 128000 bytes of 288001 total bytes\nUploaded 160000 bytes of 288001 total bytes\nUploaded 192000 bytes of 288001 total bytes\nUploaded 224000 bytes of 288001 total bytes\nUploaded 256000 bytes of 288001 total bytes\nUploaded 288000 bytes of 288001 total bytes\n-> last one missing\n\nSlice: 16000\nUploaded 16000 bytes of 288001 total bytes\nUploaded 32000 bytes of 288001 total bytes\nUploaded 48000 bytes of 288001 total bytes\nUploaded 64000 bytes of 288001 total bytes\nUploaded 80000 bytes of 288001 total bytes\nUploaded 96000 bytes of 288001 total bytes\nUploaded 112000 bytes of 288001 total bytes\nUploaded 128000 bytes of 288001 total bytes\nUploaded 144000 bytes of 288001 total bytes\nUploaded 160000 bytes of 288001 total bytes\nUploaded 176000 bytes of 288001 total bytes\nUploaded 192000 bytes of 288001 total bytes\nUploaded 208000 bytes of 288001 total bytes\nUploaded 224000 bytes of 288001 total bytes\nUploaded 240000 bytes of 288001 total bytes\nUploaded 256000 bytes of 288001 total bytes\nUploaded 272000 bytes of 288001 total bytes\nUploaded 288000 bytes of 288001 total bytes\n-> last one missing\n\nSlice: 64000\nUploaded 64000 bytes of 288001 total bytes\nUploaded 128000 bytes of 288001 total bytes\nUploaded 192000 bytes of 288001 total bytes\nUploaded 256000 bytes of 288001 total bytes\nUploaded 288001 bytes of 288001 total bytes\n-> Ok\n\nI created a testfile with filesize 256001\n\nUploaded 64000 bytes of 256001 total bytes\nUploaded 128000 bytes of 256001 total bytes\nUploaded 192000 bytes of 256001 total bytes\nUploaded 256000 bytes of 256001 total bytes\n-> last one missing\n\nSlice: 96000 \nUploaded 96000 bytes of 256001 total bytes\nUploaded 192000 bytes of 256001 total bytes\nUploaded 256001 bytes of 256001 total bytes\n-> Ok\n\n\n\n\n` CreateUploadSessionPostRequestBody uploadSessionRequest = new CreateUploadSessionPostRequestBody();\n DriveItemUploadableProperties properties = new DriveItemUploadableProperties();\n properties.getAdditionalData().put(\"@microsoft.graph.conflictBehavior\", \"replace\");\n uploadSessionRequest.setItem(properties);\n\n UploadSession uploadSession = graphClient\n .drives()\n .byDriveId(driveId)\n .items()\n .byDriveItemId(pfad)\n .createUploadSession()\n .post(uploadSessionRequest);\n\n // Create the upload task\n int maxSliceSize = 320 * 100;\n LargeFileUploadTask\u003cDriveItem> largeFileUploadTask = new LargeFileUploadTask\u003c>(\n graphClient.getRequestAdapter(),\n uploadSession,\n fileStream,\n streamSize,\n maxSliceSize,\n DriveItem::createFromDiscriminatorValue);\n\n int maxAttempts = 5;\n\n // Create a callback used by the upload provider\n IProgressCallback callback = (current, max) -> System.out.println(\n String.format(\"Uploaded %d bytes of %d total bytes\", current, max));\n\n // Do the upload\n\n UploadResult\u003cDriveItem> uploadResult = largeFileUploadTask.upload(maxAttempts, callback);\n if (uploadResult.isUploadSuccessful()) {\n logger.info(\"Upload complete\");\n logger.info(\"Item ID: {}\",uploadResult.itemResponse.getId());\n } else {\n logger.info(\"Upload failed\");\n }`\n\n\n\n\n\n### Expected behavior\n\nUpload complete file\n\n### How to reproduce\n\nCreate a file with filesize = x * maxSliceSize +1 \n\n### SDK Version\n\n6.62.0\n\n### Latest version known to work for scenario above?\n\n_No response_\n\n### Known Workarounds\n\n_No response_\n\n### Debug output\n\n\u003cdetails>\u003csummary>Click to expand log\u003c/summary>\n```\n\nError Message:\nCaused by: java.util.concurrent.CancellationException: The upload task was retried the maximum number of times without success and has been cancelled.\n\tat com.microsoft.graph.core.tasks.LargeFileUploadTask.upload(LargeFileUploadTask.java:149)\n\n```\n\u003c/details>\n\n\n### Configuration\n\n Linux\nJava 8\nx64\n\n### Other information\n\n_No response_","author":{"url":"https://github.com/assachs","@type":"Person","name":"assachs"},"datePublished":"2026-04-27T15:08:16Z","url":"https://github.com/microsoftgraph/msgraph-sdk-java/issues/2581"}
| react-profiling | 0 |
| react-import-map | react,react-dom,react-dom/client,react-dom/profiling,react-is,react-reconciler,react/compiler-runtime,react/jsx-dev-runtime,react/jsx-runtime,scheduler@d5750093facf |
| route-pattern | /_view_fragments/issues/show/:user_id/:repository/:id/issue_layout(.:format) |
| route-controller | voltron_issues_fragments |
| route-action | issue_layout |
| fetch-nonce | v2:fc3cb87a-4e07-61c3-c9e4-26dbebd282e7 |
| current-catalog-service-hash | 81bb79d38c15960b92d99bca9288a9108c7a47b18f2423d0f6438c5b7bcd2114 |
| request-id | 8B86:133F24:A5C33:E3B76:6AF6BADE |
| html-safe-nonce | 062c549a1deb6ce4858501c526bcdec34ae7a28fab508e8809c111a247255d01 |
| visitor-payload | eyJyZWZlcnJlciI6IiIsInJlcXVlc3RfaWQiOiI4Qjg2OjEzM0YyNDpBNUMzMzpFM0I3Njo2QUY2QkFERSIsInZpc2l0b3JfaWQiOiI1NTEzNjk4OTM3MDEwNTY3OTAyIiwicmVnaW9uX2VkZ2UiOiJpYWQiLCJyZWdpb25fcmVuZGVyIjoiaWFkIn0= |
| visitor-hmac | 3755d89ad65342532a1f697cea888ce1777647ec0b9081e4a0ecabb49725aa01 |
| hovercard-subject-tag | issue:4336776445 |
| github-keyboard-shortcuts | repository,issues,copilot |
| google-site-verification | Apib7-x98H0j5cPqHWwSMm6dNU4GmODRoqxLiDzdx9I |
| octolytics-url | https://collector.github.com/github/collect |
| analytics-location | / |
| fb:app_id | 1401488693436528 |
| apple-itunes-app | app-id=1477376905, app-argument=https://github.com/_view_fragments/issues/show/microsoftgraph/msgraph-sdk-java/2581/issue_layout |
| twitter:image | https://opengraph.githubassets.com/66dc7f6fd43aaefb198cc97d16b8457d3636d9ea94c338906688c6d2e1f2379b/microsoftgraph/msgraph-sdk-java/issues/2581 |
| twitter:card | summary_large_image |
| og:image | https://opengraph.githubassets.com/66dc7f6fd43aaefb198cc97d16b8457d3636d9ea94c338906688c6d2e1f2379b/microsoftgraph/msgraph-sdk-java/issues/2581 |
| og:image:alt | Describe the bug Hello, i have a problem to upload files if exactly 1 byte is missing in the last slice. The upload is throwing an exception: java.util.concurrent.CancellationException: The upload ... |
| og:image:width | 1200 |
| og:image:height | 600 |
| og:site_name | GitHub |
| og:type | object |
| og:author:username | assachs |
| hostname | github.com |
| expected-hostname | github.com |
| None | 8dfae1499400ee498ab0f86538d1c034e6c1b4f51c63ecade775c3b0894e3379 |
| turbo-cache-control | no-preview |
| go-import | github.com/microsoftgraph/msgraph-sdk-java git https://github.com/microsoftgraph/msgraph-sdk-java.git |
| octolytics-dimension-user_id | 17304259 |
| octolytics-dimension-user_login | microsoftgraph |
| octolytics-dimension-repository_id | 103300409 |
| octolytics-dimension-repository_nwo | microsoftgraph/msgraph-sdk-java |
| octolytics-dimension-repository_public | true |
| octolytics-dimension-repository_is_fork | false |
| octolytics-dimension-repository_network_root_id | 103300409 |
| octolytics-dimension-repository_network_root_nwo | microsoftgraph/msgraph-sdk-java |
| turbo-body-classes | logged-out env-production page-responsive |
| disable-turbo | false |
| browser-stats-url | https://api.github.com/_private/browser/stats |
| browser-errors-url | https://api.github.com/_private/browser/errors |
| release | ee168845eb2be91203b179104ac9977fe4ea69a3 |
| ui-target | full |
| theme-color | #1e2327 |
| color-scheme | light dark |
| react-app-name | issues |
Links:
Viewport: width=device-width