lpavanvenkat commented on PR #11685:
URL: https://github.com/apache/ozone/pull/11685#issuecomment-6435394058

   @errose28 @sumitagrawl  agreed on keeping open key and MPU stats separate. 
My original proposal for HDDS-16364 follows that:
   
   Problem: at MPU initiate, OM writes a multipart open key with size 0 and no 
blocks, which stays until the upload is completed or aborted. Recon counts it 
as a regular open key, while committed parts are reported by 
/keys/open/mpu/summary.
   
   For example, start 2 multipart uploads and commit 2 parts of 5 MiB to each, 
without completing either upload. Recon then reports:
   
   /keys/open/summary: 2 open keys, 0 bytes
   /keys/open/mpu/summary: 2 uploads, 20971520 bytes (20 MiB)
   Showing these as 2 open keys with 0 bytes is misleading, since the uploads 
already hold 20 MiB of committed parts.
   
   Fix (Recon only): exclude multipart open keys (isMultipartKey=true) from 
/keys/open and /keys/open/summary, and report uploads only via 
/keys/open/mpu/summary.
   
   With the same 2 uploads, while a third part of one upload is still being 
written, Recon would report:
   
   /keys/open/summary: 1 open key (the part being written)
   /keys/open/mpu/summary: 2 uploads, 20971520 bytes (20 MiB)
   Behavior for parts being written is unchanged: they are counted as open keys 
until they commit, then move to the MPU total.
   
   This matches OM: getExpiredOpenKeys (used by OpenKeyCleanupService) skips 
these keys, and expired ones are cleaned up only by 
MultipartUploadCleanupService. The tradeoff is that the stored open key totals 
must be recomputed after upgrade, via a Recon upgrade action that queues a task 
reinitialization (as existing upgrade actions do).
   
   Would you prefer this, or leaving the open key view as is?
   
   CC: @devmadhuu @priyeshkaratha 


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