Sumit Agrawal created HDDS-8329:
-----------------------------------

             Summary: Performance Impact during container close when still 
Client is writting
                 Key: HDDS-8329
                 URL: https://issues.apache.org/jira/browse/HDDS-8329
             Project: Apache Ozone
          Issue Type: Bug
            Reporter: Sumit Agrawal
            Assignee: Sumit Agrawal
             Fix For: 1.4.0


Steps for container closure:
 # SCM allocates blocks to client for write
 # Client perform write to blocks at DN pipeline
 # DN when identify container is about to full (default 90% of 5GB container 
size)
 # Then DN send notification to SCM for close
 # SCM move state from Open to closing and send notification to DN to close
 # At DN on success close, notify SCM for closure

During Step 5, If client still writing to DN for blocks allocated before SCM 
receive close, those write will be rejected when DN close container.

This causes retry for client to allocate new block and retry write.

As solution,
 * SCM will move state to closing, so that it will not allocate new blocks to 
client
 * SCM will wait for a configured time before sending to DN close (as a buffer 
time), where Client can perform write.

This buffer time is configurable and initially set as "2.5 minutes" which is 5 
times DN notification interval (i.e. 30 sec * 5).

 

Problem not intended to solve:
 * over subscription and container size - This is best approach to complete the 
write from client within configured time. Container size can cross the 5GB 
default limit, which does not much impact to system.
 * Slow client writer - If client is writing slowly, it may cross buffer time 
and can fail. This solution will provide optimal time as configured and will 
not handle slow client writer.



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