xichen01 commented on code in PR #5524:
URL: https://github.com/apache/ozone/pull/5524#discussion_r1378562201


##########
hadoop-ozone/client/src/main/java/org/apache/hadoop/ozone/client/io/KeyOutputStream.java:
##########
@@ -555,6 +565,12 @@ public synchronized void close() throws IOException {
       if (!isException) {
         Preconditions.checkArgument(writeOffset == offset);
       }
+      if (requiresAtomicWrite) {
+        long expectedSize = blockOutputStreamEntryPool.getDataSize();
+        Preconditions.checkArgument(expectedSize == offset,

Review Comment:
   Done.



##########
hadoop-ozone/client/src/main/java/org/apache/hadoop/ozone/client/io/KeyDataStreamOutput.java:
##########
@@ -81,6 +81,14 @@ enum StreamAction {
 
   private long clientID;
 
+  /**
+   * Indicates if an atomic write is required. When set to true,
+   * the amount of data written must match the declared size during the commit.
+   * A mismatch will prevent the commit from succeeding.
+   * This is essential for operations like S3 put to ensure atomicity.
+   */
+  private boolean requiresAtomicWrite;

Review Comment:
   Done



-- 
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]

Reply via email to