Print

Print


Ok, found the culprit.  It's here:

https://github.com/xrootd/xrootd/blob/master/src/XrdXrootd/XrdXrootdTransit.cc#L418

*If* a stall occurs (you can tweak the `XrdOfsHandle::WaitLock` code to never wait and this causes a stall easily), then the XrdXrootdProtocol object is scheduled to re-run at a later point.  It's re-run in that function.

However, it doesn't appear to invoke the appropriate callback for `realProt->Process` as in the other overload of `XrdXrootdTransit::Process`, meaning the callback doesn't get pushed until the client itself causes activity (such as disconnecting).

-- 
You are receiving this because you are subscribed to this thread.
Reply to this email directly or view it on GitHub:
https://github.com/xrootd/xrootd/issues/810#issuecomment-416820467

########################################################################
Use REPLY-ALL to reply to list

To unsubscribe from the XROOTD-DEV list, click the following link:
https://listserv.slac.stanford.edu/cgi-bin/wa?SUBED1=XROOTD-DEV&A=1