ivandika3 opened a new pull request, #9626:
URL: https://github.com/apache/ozone/pull/9626

   ## What changes were proposed in this pull request?
   Currently, it seems that OMKeyRequest#allocateBlock calls SCM's 
allocateBlock RPC even if the requested size is 0, we can skip this call for 
createKey to save redundant SCM calls.
   
   This might be useful if we only want to test the write OM metadata 
performance without involving HDDS layer (i.e. SCM and DN). Additionally, S3 
users might also benefit from this since from S3G logs, there are quite a 
number of requests with 0 requested data size.
   
   Note that OFS / O3FS always use a dataSize = 0 (since FS users do not know 
how much data is going to be uploaded). For that reason, createFile will not 
enable the feature. Note: since OmKeyArgs.dataSize is optional, it should be 
more appropriate to not specify the data size if we don't know final data size 
of the key. This would make the API simpler, but since dataSize seems to always 
be sent in createFile, we have to work around this.
   
   Test should validate that SCM allocateBlock should never be called when 
uploading a zero-sized key (either by OMKeyCreateRequest or 
OMAllocateBlockRequest (from the BlockOutputStreamEntryPool#allocateNewBlock)).
   
   This might be useful if we only want to test the write OM metadata 
performance without involving HDDS layer (i.e. SCM and DN).
   
   ## What is the link to the Apache JIRA
   
   https://issues.apache.org/jira/browse/HDDS-14355
   
   ## How was this patch tested?
   
   UT and IT.
   
   Clean CI run: https://github.com/ivandika3/ozone/actions/runs/20914276140
   


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