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

   ## What changes were proposed in this pull request?
   
   A datanode is stopped and before the stale node handler is triggered, SCM is 
restarted. When SCM restarts its loads all the only pipelines and nodes from 
RocksDB, and then all the nodes will register again.
   
   In the case of EC pipelines, there is nothing to trigger the close of a 
pipeline (and the containers on it) except:
   
   1. The Container getting full and the DN triggering the close
   2. The stale / dead node handlers noticing a node on it has gone dead.
   
   In the case above, the EC pipeline will sit forever in an Open state, but 
any attempt to write to it will likely result in errors on the client due to 
one of the nodes not being available. These errors still will not trigger it to 
close.
   
   A solution to this problem, is to add logic to the pipeline scrubber to 
close any pipelines that have unregistered nodes. Stale / Dead nodes should be 
handled by the existing stale / dead node handlers.
   
   
   ## What is the link to the Apache JIRA
   
   https://issues.apache.org/jira/browse/HDDS-7341
   
   ## How was this patch tested?
   
   New unit test and validated on a docker compose cluster.


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