bshashikant commented on issue #673: HDDS-3064. Get Key is hung when READ delay is injected in chunk file path. URL: https://github.com/apache/hadoop-ozone/pull/673#issuecomment-599111536 > @adoroszlai @bshashikant I am not saying we wait for the entire block to be read. The client will be reused for all the chunk reads. Lets take a scenario. > Chunk1 fails on dn1. Succeded on dn2. > Chunk2 -> we should try reading from either dn2 or dn3. We will need to mark dn1 timed out in the code. Currently we can still retry dn1. > Chunk3 -> dn2, dn3 fail. We should retry dn1 before failing the read. > For retrying dn1 we will need to reestablish the connection. I think we are handling this. > > Regarding the deadline, if we set a deadline at t=0, the stub will fail at t=30 even if the client is able to read chunks from the stub. Please verify if this is how the deadline works. I think we will need to differentiate between this scenario and scenario where chunk read is timing out. @lokeshj1703 , in the read path, once a read op fails on a datanode, the same op never gets retried on the same datanode. bb --- Regarding the deadline, if we set a deadline at t=0, the stub will fail at t=30 even if the client is able to read chunks from the stub. Please verify if this is how the deadline works. I think we will need to differentiate between this scenario and scenario where chunk read is timing out. The deadline which is set is for on the rpc call. If the rpc response doesn't complete within teh deadline , it marks it deadline exceeded. The same deadline is being used in Ratis as well. The client itself doesn't maintain a timer as such.
---------------------------------------------------------------- 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. For queries about this service, please contact Infrastructure at: [email protected] With regards, Apache Git Services --------------------------------------------------------------------- To unsubscribe, e-mail: [email protected] For additional commands, e-mail: [email protected]
