Print

Print


The other problem was there was a sequencing bug in the server that allowed duplicate opens during recovery. That’s corrected for 4.8.2 and, I’m pretty confident that is sufficient for most cases. Steven does point out an aberrant case (very small file writes) that could escape that fix. That would require fixing the client’s handling of endsess. So, I think we will be doing that for 4.8.2 as well.

Andy

From: simonmichal
Sent: Thursday, March 22, 2018 6:02 AM
To: xrootd/xrootd
Cc: Andrew Hanushevsky ; Mention
Subject: Re: [xrootd/xrootd] C++ API to XRootD should allow the "open file" retry logic to be turned off (#673)

From what it see in XrdXrootdProtocol::do_Endsess() it can happen that the server actually responds with kXR_wait to an kXR_endsess request (@abh3 : could you confirm?):

https://github.com/xrootd/xrootd/blob/master/src/XrdXrootd/XrdXrootdXeq.cc#L711-L712

I think the kXR_wait response is not taken into account on the client side logic:

https://github.com/xrootd/xrootd/blob/master/src/XrdCl/XrdClXRootDTransport.cc#L2012-L2036

If the response is not an error the client declares the handshake as successful (@ljanyst : could you give me another 'holy shit' if you think this might be true? ;-).

This could be the source of our problem.


You are receiving this because you were mentioned.
Reply to this email directly, view it on GitHub, or mute the thread.


You are receiving this because you commented.
Reply to this email directly, view it on GitHub, or mute the thread.

{"api_version":"1.0","publisher":{"api_key":"05dde50f1d1a384dd78767c55493e4bb","name":"GitHub"},"entity":{"external_key":"github/xrootd/xrootd","title":"xrootd/xrootd","subtitle":"GitHub repository","main_image_url":"https://cloud.githubusercontent.com/assets/143418/17495839/a5054eac-5d88-11e6-95fc-7290892c7bb5.png","avatar_image_url":"https://cloud.githubusercontent.com/assets/143418/15842166/7c72db34-2c0b-11e6-9aed-b52498112777.png","action":{"name":"Open in GitHub","url":"https://github.com/xrootd/xrootd"}},"updates":{"snippets":[{"icon":"PERSON","message":"@abh3 in #673: The other problem was there was a sequencing bug in the server that allowed duplicate opens during recovery. That’s corrected for 4.8.2 and, I’m pretty confident that is sufficient for most cases. Steven does point out an aberrant case (very small file writes) that could escape that fix. That would require fixing the client’s handling of endsess. So, I think we will be doing that for 4.8.2 as well.\n\nAndy\n\nFrom: simonmichal \nSent: Thursday, March 22, 2018 6:02 AM\nTo: xrootd/xrootd \nCc: Andrew Hanushevsky ; Mention \nSubject: Re: [xrootd/xrootd] C++ API to XRootD should allow the \"open file\" retry logic to be turned off (#673)\n\nFrom what it see in XrdXrootdProtocol::do_Endsess() it can happen that the server actually responds with kXR_wait to an kXR_endsess request (@abh3 : could you confirm?):\n\nhttps://github.com/xrootd/xrootd/blob/master/src/XrdXrootd/XrdXrootdXeq.cc#L711-L712\n\nI think the kXR_wait response is not taken into account on the client side logic:\n\nhttps://github.com/xrootd/xrootd/blob/master/src/XrdCl/XrdClXRootDTransport.cc#L2012-L2036\n\nIf the response is not an error the client declares the handshake as successful (@ljanyst : could you give me another 'holy shit' if you think this might be true? ;-).\n\nThis could be the source of our problem.\n\n—\nYou are receiving this because you were mentioned.\nReply to this email directly, view it on GitHub, or mute the thread.\n"}],"action":{"name":"View Issue","url":"https://github.com/xrootd/xrootd/issues/673#issuecomment-375458191"}}}

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