github-actions[bot] commented on code in PR #66348:
URL: https://github.com/apache/doris/pull/66348#discussion_r3701149185
##########
fe/fe-filesystem/fe-filesystem-azure/src/main/java/org/apache/doris/filesystem/azure/AzureObjStorage.java:
##########
@@ -230,7 +232,7 @@ public UploadPartResult uploadPart(String remotePath,
String uploadId, int partN
AzureUri uri = AzureUri.parse(remotePath);
BlockBlobClient blockBlobClient =
getClient().getBlobContainerClient(uri.container())
.getBlobClient(uri.key()).getBlockBlobClient();
- String blockId = toBlockId(partNum);
+ String blockId = multipartBlockId(uploadId, partNum);
Review Comment:
[P1] Preserve compatibility with legacy uncommitted block IDs. A failed or
crashed pre-upgrade upload can leave 4-byte decoded block IDs on this blob (the
old `toBlockId` format), while this retry now stages a 47-byte decoded
`UUID:part` ID. Azure rejects Put Block with HTTP 400 when its ID length
differs from existing uncommitted blocks, so a valid same-key retry remains
unusable until service GC. This happens before the exact-ID completion
safeguards and is not covered by the new-ID-only tests. Please keep a
compatible decoded length during the rolling window or isolate the new upload
from the legacy block namespace, and seed a legacy residual block in the
regression test. Azure contract:
https://learn.microsoft.com/en-us/rest/api/storageservices/put-block
--
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.
To unsubscribe, e-mail: [email protected]
For queries about this service, please contact Infrastructure at:
[email protected]
---------------------------------------------------------------------
To unsubscribe, e-mail: [email protected]
For additional commands, e-mail: [email protected]