Ren Koike created HDDS-16191:
--------------------------------

             Summary: Extract PendingFlush state object from 
BlockDataStreamOutput
                 Key: HDDS-16191
                 URL: https://issues.apache.org/jira/browse/HDDS-16191
             Project: Apache Ozone
          Issue Type: Improvement
          Components: Ozone Client
            Reporter: Ren Koike
            Assignee: Ren Koike


BlockDataStreamOutput tracks in-flight flush state across several scattered 
fields (putBlockFutures, futures, buffersForPutBlock, totalDataFlushedLength, 
writtenDataLength) that are read and written from multiple methods with 
implicit ordering assumptions.

Extract these into a PendingFlush object that encapsulates the lifecycle of a 
flush operation. This makes ownership and lifecycle explicit and reduces the 
surface area for ordering bugs.

The Ratis path has a similar pattern in BlockOutputStream. If this abstraction 
proves effective, it may be applied there in a later phase.

No behavior change — pure structural refactoring.



--
This message was sent by Atlassian Jira
(v8.20.10#820010)

---------------------------------------------------------------------
To unsubscribe, e-mail: [email protected]
For additional commands, e-mail: [email protected]

Reply via email to