{"action":"created","issue":{"url":"https://api.github.com/repos/xrootd/xrootd/issues/437","repository_url":"https://api.github.com/repos/xrootd/xrootd","labels_url":"https://api.github.com/repos/xrootd/xrootd/issues/437/labels{/name}","comments_url":"https://api.github.com/repos/xrootd/xrootd/issues/437/comments","events_url":"https://api.github.com/repos/xrootd/xrootd/issues/437/events","html_url":"https://github.com/xrootd/xrootd/issues/437","id":194563126,"number":437,"title":"Write recovery not working","user":{"login":"esindril","id":1881134,"avatar_url":"https://avatars.githubusercontent.com/u/1881134?v=3","gravatar_id":"","url":"https://api.github.com/users/esindril","html_url":"https://github.com/esindril","followers_url":"https://api.github.com/users/esindril/followers","following_url":"https://api.github.com/users/esindril/following{/other_user}","gists_url":"https://api.github.com/users/esindril/gists{/gist_id}","starred_url":"https://api.github.com/users/esindril/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/esindril/subscriptions","organizations_url":"https://api.github.com/users/esindril/orgs","repos_url":"https://api.github.com/users/esindril/repos","events_url":"https://api.github.com/users/esindril/events{/privacy}","received_events_url":"https://api.github.com/users/esindril/received_events","type":"User","site_admin":false},"labels":[{"id":32797267,"url":"https://api.github.com/repos/xrootd/xrootd/labels/bug","name":"bug","color":"fc2929","default":true}],"state":"open","locked":false,"assignee":{"login":"abh3","id":2657143,"avatar_url":"https://avatars.githubusercontent.com/u/2657143?v=3","gravatar_id":"","url":"https://api.github.com/users/abh3","html_url":"https://github.com/abh3","followers_url":"https://api.github.com/users/abh3/followers","following_url":"https://api.github.com/users/abh3/following{/other_user}","gists_url":"https://api.github.com/users/abh3/gists{/gist_id}","starred_url":"https://api.github.com/users/abh3/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/abh3/subscriptions","organizations_url":"https://api.github.com/users/abh3/orgs","repos_url":"https://api.github.com/users/abh3/repos","events_url":"https://api.github.com/users/abh3/events{/privacy}","received_events_url":"https://api.github.com/users/abh3/received_events","type":"User","site_admin":false},"assignees":[{"login":"abh3","id":2657143,"avatar_url":"https://avatars.githubusercontent.com/u/2657143?v=3","gravatar_id":"","url":"https://api.github.com/users/abh3","html_url":"https://github.com/abh3","followers_url":"https://api.github.com/users/abh3/followers","following_url":"https://api.github.com/users/abh3/following{/other_user}","gists_url":"https://api.github.com/users/abh3/gists{/gist_id}","starred_url":"https://api.github.com/users/abh3/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/abh3/subscriptions","organizations_url":"https://api.github.com/users/abh3/orgs","repos_url":"https://api.github.com/users/abh3/repos","events_url":"https://api.github.com/users/abh3/events{/privacy}","received_events_url":"https://api.github.com/users/abh3/received_events","type":"User","site_admin":false}],"milestone":{"url":"https://api.github.com/repos/xrootd/xrootd/milestones/10","html_url":"https://github.com/xrootd/xrootd/milestone/10","labels_url":"https://api.github.com/repos/xrootd/xrootd/milestones/10/labels","id":2186318,"number":10,"title":"4.5.1","description":null,"creator":{"login":"esindril","id":1881134,"avatar_url":"https://avatars.githubusercontent.com/u/1881134?v=3","gravatar_id":"","url":"https://api.github.com/users/esindril","html_url":"https://github.com/esindril","followers_url":"https://api.github.com/users/esindril/followers","following_url":"https://api.github.com/users/esindril/following{/other_user}","gists_url":"https://api.github.com/users/esindril/gists{/gist_id}","starred_url":"https://api.github.com/users/esindril/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/esindril/subscriptions","organizations_url":"https://api.github.com/users/esindril/orgs","repos_url":"https://api.github.com/users/esindril/repos","events_url":"https://api.github.com/users/esindril/events{/privacy}","received_events_url":"https://api.github.com/users/esindril/received_events","type":"User","site_admin":false},"open_issues":1,"closed_issues":0,"state":"open","created_at":"2016-12-09T10:33:21Z","updated_at":"2016-12-09T10:33:25Z","due_on":null,"closed_at":null},"comments":1,"created_at":"2016-12-09T10:33:25Z","updated_at":"2016-12-09T13:07:38Z","closed_at":null,"body":"\r\nHi Andy,\r\n\r\nI've been experimenting with the write recovery mechanism in the client and I found something a bit puzzling. I artificially put a sleep(70) in the XrdOfs::write method so that I can easily trigger a write recovery on the client side.\r\n\r\nThis works as expected, the only thing is that when the client retries he gets an error from the server like:\r\n```bash\r\nRun: [ERROR] Server responded with an error: [3003] Output file /tmp/file1.dat is already opened by 1 writer; open denied.\r\n```\r\n\r\nWhich seems strange since the client is trying to recover a write error and server says there is already 1 writer - but this is exactly the same client which is now in the recovery procedure. To be more explicit this is what I do:\r\n\r\n```bash\r\nXRD_LOGLEVEL=Dump xrdcp /etc/passwd -f root://localhost//tmp/file1.dat\r\n\r\n[2016-12-09 11:19:02.723040 +0100][Debug  ][Utility           ] Unable to process user config file: [ERROR] OS Error: No such file or directory\r\n[2016-12-09 11:19:02.723334 +0100][Debug  ][PlugInMgr         ] Initializing plug-in manager...\r\n[2016-12-09 11:19:02.723348 +0100][Debug  ][PlugInMgr         ] No default plug-in, loading plug-in configs...\r\n[2016-12-09 11:19:02.723359 +0100][Debug  ][PlugInMgr         ] Processing plug-in definitions in /etc/xrootd/client.plugins.d...\r\n[2016-12-09 11:19:02.723414 +0100][Debug  ][PlugInMgr         ] Processing plug-in definitions in /home/esindril//.xrootd/client.plugins.d...\r\n[2016-12-09 11:19:02.723425 +0100][Debug  ][PlugInMgr         ] Unable to process directory /home/esindril//.xrootd/client.plugins.d: [ERROR] OS Error: No such file or directory\r\n[2016-12-09 11:19:02.723517 +0100][Dump   ][App               ] Chunk size: 16777216, parallel chunks 4, streams: 1\r\n[2016-12-09 11:19:02.723571 +0100][Dump   ][Utility           ] URL: root://localhost//tmp/file1.dat\r\n[2016-12-09 11:19:02.723571 +0100][Dump   ][Utility           ] Protocol:  root\r\n[2016-12-09 11:19:02.723571 +0100][Dump   ][Utility           ] User Name: \r\n[2016-12-09 11:19:02.723571 +0100][Dump   ][Utility           ] Password:  \r\n[2016-12-09 11:19:02.723571 +0100][Dump   ][Utility           ] Host Name: localhost\r\n[2016-12-09 11:19:02.723571 +0100][Dump   ][Utility           ] Port:      1094\r\n[2016-12-09 11:19:02.723571 +0100][Dump   ][Utility           ] Path:      /tmp/file1.dat\r\n[2016-12-09 11:19:02.723602 +0100][Dump   ][Utility           ] URL: root://localhost:1094//tmp/file1.dat\r\n[2016-12-09 11:19:02.723602 +0100][Dump   ][Utility           ] Protocol:  root\r\n[2016-12-09 11:19:02.723602 +0100][Dump   ][Utility           ] User Name: \r\n[2016-12-09 11:19:02.723602 +0100][Dump   ][Utility           ] Password:  \r\n[2016-12-09 11:19:02.723602 +0100][Dump   ][Utility           ] Host Name: localhost\r\n[2016-12-09 11:19:02.723602 +0100][Dump   ][Utility           ] Port:      1094\r\n[2016-12-09 11:19:02.723602 +0100][Dump   ][Utility           ] Path:      /tmp/file1.dat\r\n[2016-12-09 11:19:02.723616 +0100][Dump   ][Utility           ] URL: root://localhost:1094//tmp/file1.dat\r\n[2016-12-09 11:19:02.723616 +0100][Dump   ][Utility           ] Protocol:  root\r\n[2016-12-09 11:19:02.723616 +0100][Dump   ][Utility           ] User Name: \r\n[2016-12-09 11:19:02.723616 +0100][Dump   ][Utility           ] Password:  \r\n[2016-12-09 11:19:02.723616 +0100][Dump   ][Utility           ] Host Name: localhost\r\n[2016-12-09 11:19:02.723616 +0100][Dump   ][Utility           ] Port:      1094\r\n[2016-12-09 11:19:02.723616 +0100][Dump   ][Utility           ] Path:      /tmp/file1.dat\r\n[2016-12-09 11:19:02.723710 +0100][Dump   ][FileSystem        ] [0xdc8f450@localhost:1094] Sending kXR_stat (path: /tmp/file1.dat, flags: none)\r\n[2016-12-09 11:19:02.723806 +0100][Debug  ][Poller            ] Available pollers: built-in\r\n[2016-12-09 11:19:02.723820 +0100][Debug  ][Poller            ] Attempting to create a poller according to preference: built-in\r\n[2016-12-09 11:19:02.723827 +0100][Debug  ][Poller            ] Creating poller: built-in\r\n[2016-12-09 11:19:02.723848 +0100][Debug  ][Poller            ] Creating and starting the built-in poller...\r\n[2016-12-09 11:19:02.724080 +0100][Debug  ][Poller            ] Using 1 poller threads\r\n[2016-12-09 11:19:02.724097 +0100][Debug  ][TaskMgr           ] Starting the task manager...\r\n[2016-12-09 11:19:02.724152 +0100][Debug  ][TaskMgr           ] Task manager started\r\n[2016-12-09 11:19:02.724161 +0100][Debug  ][JobMgr            ] Starting the job manager...\r\n[2016-12-09 11:19:02.724282 +0100][Debug  ][JobMgr            ] Job manager started, 3 workers\r\n[2016-12-09 11:19:02.724299 +0100][Debug  ][TaskMgr           ] Registering task: \"FileTimer task\" to be run at: [2016-12-09 11:19:02 +0100]\r\n[2016-12-09 11:19:02.724305 +0100][Dump   ][XRootD            ] [localhost:1094] Sending message kXR_stat (path: /tmp/file1.dat, flags: none)\r\n[2016-12-09 11:19:02.724350 +0100][Dump   ][Utility           ] URL: localhost:1094\r\n[2016-12-09 11:19:02.724350 +0100][Dump   ][Utility           ] Protocol:  root\r\n[2016-12-09 11:19:02.724350 +0100][Dump   ][Utility           ] User Name: \r\n[2016-12-09 11:19:02.724350 +0100][Dump   ][Utility           ] Password:  \r\n[2016-12-09 11:19:02.724350 +0100][Dump   ][Utility           ] Host Name: localhost\r\n[2016-12-09 11:19:02.724350 +0100][Dump   ][Utility           ] Port:      1094\r\n[2016-12-09 11:19:02.724350 +0100][Dump   ][Utility           ] Path:      \r\n[2016-12-09 11:19:02.724379 +0100][Debug  ][PostMaster        ] Creating new channel to: localhost:1094 1 stream(s)\r\n[2016-12-09 11:19:02.724416 +0100][Debug  ][PostMaster        ] [localhost:1094 #0] Stream parameters: Network Stack: IPAuto, Connection Window: 120, ConnectionRetry: 5, Stream Error Widnow: 1800\r\n[2016-12-09 11:19:02.724451 +0100][Debug  ][TaskMgr           ] Registering task: \"TickGeneratorTask for: localhost:1094\" to be run at: [2016-12-09 11:19:17 +0100]\r\n[2016-12-09 11:19:02.724486 +0100][Dump   ][PostMaster        ] [localhost:1094 #0] Sending message kXR_stat (path: /tmp/file1.dat, flags: none) (0xaa1a20) through substream 0 expecting answer at 0\r\n[2016-12-09 11:19:02.724629 +0100][Debug  ][PostMaster        ] [localhost:1094] Found 1 address(es): [::ffff:127.0.0.1]:1094\r\n[2016-12-09 11:19:02.724712 +0100][Debug  ][AsyncSock         ] [localhost:1094 #0.0] Attempting connection to [::ffff:127.0.0.1]:1094\r\n[2016-12-09 11:19:02.724944 +0100][Debug  ][Poller            ] Adding socket 0xaa7f10 to the poller\r\n[2016-12-09 11:19:02.725080 +0100][Debug  ][AsyncSock         ] [localhost:1094 #0.0] Async connection call returned\r\n[2016-12-09 11:19:02.725115 +0100][Debug  ][XRootDTransport   ] [localhost:1094 #0.0] Sending out the initial hand shake + kXR_protocol\r\n[2016-12-09 11:19:02.725165 +0100][Dump   ][AsyncSock         ] [localhost:1094 #0.0] Wrote a message:  (0x94000950), 44 bytes\r\n[2016-12-09 11:19:02.725358 +0100][Dump   ][XRootDTransport   ] [msg: 0x94000950] Expecting 8 bytes of message body\r\n[2016-12-09 11:19:02.725367 +0100][Dump   ][AsyncSock         ] [localhost:1094 #0.0] Received message header, size: 8\r\n[2016-12-09 11:19:02.725375 +0100][Dump   ][AsyncSock         ] [localhost:1094 #0.0] Received a message of 16 bytes\r\n[2016-12-09 11:19:02.725381 +0100][Debug  ][XRootDTransport   ] [localhost:1094 #0.0] Got the server hand shake response (type: server [], protocol version 310)\r\n[2016-12-09 11:19:02.725388 +0100][Dump   ][XRootDTransport   ] [msg: 0x94000950] Expecting 8 bytes of message body\r\n[2016-12-09 11:19:02.725391 +0100][Dump   ][AsyncSock         ] [localhost:1094 #0.0] Received message header, size: 8\r\n[2016-12-09 11:19:02.725396 +0100][Dump   ][AsyncSock         ] [localhost:1094 #0.0] Received a message of 16 bytes\r\n[2016-12-09 11:19:02.725401 +0100][Debug  ][XRootDTransport   ] [localhost:1094 #0.0] kXR_protocol successful (type: server [], protocol version 310)\r\n[2016-12-09 11:19:02.725459 +0100][Debug  ][XRootDTransport   ] [localhost:1094 #0.0] Sending out kXR_login request, username: esindril, cgi: ?xrd.cc=ch&xrd.tz=1&xrd.appname=xrdcp&xrd.info=&xrd.hostname=esvm000.cern.ch&xrd.rn=v4.5.0, dual-stack: false, private IPv4: false, private IPv6: false\r\n[2016-12-09 11:19:02.725491 +0100][Dump   ][AsyncSock         ] [localhost:1094 #0.0] Wrote a message:  (0x94000a60), 114 bytes\r\n[2016-12-09 11:19:02.725567 +0100][Dump   ][XRootDTransport   ] [msg: 0x94000950] Expecting 16 bytes of message body\r\n[2016-12-09 11:19:02.725574 +0100][Dump   ][AsyncSock         ] [localhost:1094 #0.0] Received message header, size: 8\r\n[2016-12-09 11:19:02.725578 +0100][Dump   ][AsyncSock         ] [localhost:1094 #0.0] Received a message of 24 bytes\r\n[2016-12-09 11:19:02.725585 +0100][Debug  ][XRootDTransport   ] [localhost:1094 #0.0] Logged in, session: 01000000226a00001500000001000000\r\n[2016-12-09 11:19:02.725599 +0100][Debug  ][PostMaster        ] [localhost:1094 #0] Stream 0 connected.\r\n[2016-12-09 11:19:02.725606 +0100][Debug  ][Utility           ] Monitor library name not set. No monitoring\r\n[2016-12-09 11:19:02.725631 +0100][Dump   ][AsyncSock         ] [localhost:1094 #0.0] Wrote a message: kXR_stat (path: /tmp/file1.dat, flags: none) (0xaa1a20), 38 bytes\r\n[2016-12-09 11:19:02.725669 +0100][Dump   ][AsyncSock         ] [localhost:1094 #0.0] Successfully sent message: kXR_stat (path: /tmp/file1.dat, flags: none) (0xaa1a20).\r\n[2016-12-09 11:19:02.725682 +0100][Dump   ][XRootD            ] [localhost:1094] Message kXR_stat (path: /tmp/file1.dat, flags: none) has been successfully sent.\r\n[2016-12-09 11:19:02.725702 +0100][Dump   ][PostMaster        ] [localhost:1094 #0.0] All messages consumed, disable uplink\r\n[2016-12-09 11:19:02.725755 +0100][Dump   ][XRootDTransport   ] [msg: 0x940008c0] Expecting 37 bytes of message body\r\n[2016-12-09 11:19:02.725764 +0100][Dump   ][AsyncSock         ] [localhost:1094 #0.0] Received message header for 0x940008c0 size: 8\r\n[2016-12-09 11:19:02.725782 +0100][Dump   ][AsyncSock         ] [localhost:1094 #0.0] Received message 0x940008c0 of 45 bytes\r\n[2016-12-09 11:19:02.725789 +0100][Dump   ][PostMaster        ] [localhost:1094 #0] Handling received message: 0x940008c0.\r\n[2016-12-09 11:19:02.725855 +0100][Dump   ][XRootD            ] [localhost:1094] Got a kXR_ok response to request kXR_stat (path: /tmp/file1.dat, flags: none)\r\n[2016-12-09 11:19:02.725926 +0100][Dump   ][XRootD            ] [localhost:1094] Parsing the response to kXR_stat (path: /tmp/file1.dat, flags: none) as StatInfo: 77628596117634049 1855 48 1481277530\r\n[2016-12-09 11:19:02.726000 +0100][Dump   ][App               ] Processing source entry: /etc/passwd, type local file, target file: root://localhost//tmp/file1.dat\r\n[2016-12-09 11:19:02.726027 +0100][Dump   ][Utility           ] URL: file:///etc/passwd\r\n[2016-12-09 11:19:02.726027 +0100][Dump   ][Utility           ] Protocol:  file\r\n[2016-12-09 11:19:02.726027 +0100][Dump   ][Utility           ] User Name: \r\n[2016-12-09 11:19:02.726027 +0100][Dump   ][Utility           ] Password:  \r\n[2016-12-09 11:19:02.726027 +0100][Dump   ][Utility           ] Host Name: \r\n[2016-12-09 11:19:02.726027 +0100][Dump   ][Utility           ] Port:      1094\r\n[2016-12-09 11:19:02.726027 +0100][Dump   ][Utility           ] Path:      /etc/passwd\r\n[2016-12-09 11:19:02.726145 +0100][Dump   ][Utility           ] Adding job with properties: 'checkSumMode' = 'none', 'checkSumPreset' = '', 'checkSumType' = '', 'chunkSize' = '16777216', 'coerce' = '0', 'dynamicSource' = '0', 'force' = '1', 'initTimeout' = '600', 'makeDir' = '0', 'parallelChunks' = '4', 'posc' = '0', 'source' = 'file:///etc/passwd', 'target' = 'root://localhost//tmp/file1.dat', 'thirdParty' = 'none', 'tpcTimeout' = '1800', 'zipArchive' = '0'\r\n[2016-12-09 11:19:02.726175 +0100][Debug  ][Utility           ] CopyProcess: 2 jobs to prepare\r\n[2016-12-09 11:19:02.726192 +0100][Dump   ][Utility           ] URL: file:///etc/passwd\r\n[2016-12-09 11:19:02.726192 +0100][Dump   ][Utility           ] Protocol:  file\r\n[2016-12-09 11:19:02.726192 +0100][Dump   ][Utility           ] User Name: \r\n[2016-12-09 11:19:02.726192 +0100][Dump   ][Utility           ] Password:  \r\n[2016-12-09 11:19:02.726192 +0100][Dump   ][Utility           ] Host Name: \r\n[2016-12-09 11:19:02.726192 +0100][Dump   ][Utility           ] Port:      1094\r\n[2016-12-09 11:19:02.726192 +0100][Dump   ][Utility           ] Path:      /etc/passwd\r\n[2016-12-09 11:19:02.726207 +0100][Dump   ][Utility           ] URL: root://localhost//tmp/file1.dat\r\n[2016-12-09 11:19:02.726207 +0100][Dump   ][Utility           ] Protocol:  root\r\n[2016-12-09 11:19:02.726207 +0100][Dump   ][Utility           ] User Name: \r\n[2016-12-09 11:19:02.726207 +0100][Dump   ][Utility           ] Password:  \r\n[2016-12-09 11:19:02.726207 +0100][Dump   ][Utility           ] Host Name: localhost\r\n[2016-12-09 11:19:02.726207 +0100][Dump   ][Utility           ] Port:      1094\r\n[2016-12-09 11:19:02.726207 +0100][Dump   ][Utility           ] Path:      /tmp/file1.dat\r\n[2016-12-09 11:19:02.726227 +0100][Dump   ][Utility           ] URL: file:///etc/passwd\r\n[2016-12-09 11:19:02.726227 +0100][Dump   ][Utility           ] Protocol:  file\r\n[2016-12-09 11:19:02.726227 +0100][Dump   ][Utility           ] User Name: \r\n[2016-12-09 11:19:02.726227 +0100][Dump   ][Utility           ] Password:  \r\n[2016-12-09 11:19:02.726227 +0100][Dump   ][Utility           ] Host Name: \r\n[2016-12-09 11:19:02.726227 +0100][Dump   ][Utility           ] Port:      1094\r\n[2016-12-09 11:19:02.726227 +0100][Dump   ][Utility           ] Path:      /etc/passwd\r\n[2016-12-09 11:19:02.726253 +0100][Dump   ][Utility           ] URL: root://localhost//tmp/file1.dat\r\n[2016-12-09 11:19:02.726253 +0100][Dump   ][Utility           ] Protocol:  root\r\n[2016-12-09 11:19:02.726253 +0100][Dump   ][Utility           ] User Name: \r\n[2016-12-09 11:19:02.726253 +0100][Dump   ][Utility           ] Password:  \r\n[2016-12-09 11:19:02.726253 +0100][Dump   ][Utility           ] Host Name: localhost\r\n[2016-12-09 11:19:02.726253 +0100][Dump   ][Utility           ] Port:      1094\r\n[2016-12-09 11:19:02.726253 +0100][Dump   ][Utility           ] Path:      /tmp/file1.dat\r\n[2016-12-09 11:19:02.726269 +0100][Debug  ][Utility           ] Creating a classic copy job, from file:///etc/passwd to root://localhost:1094//tmp/file1.dat\r\n[2016-12-09 11:19:02.726403 +0100][Debug  ][Utility           ] Opening /etc/passwd for reading\r\n[2016-12-09 11:19:02.726473 +0100][Debug  ][Utility           ] Opening root://localhost:1094//tmp/file1.dat?oss.asize=1855 for writing\r\n[2016-12-09 11:19:02.726517 +0100][Dump   ][Utility           ] URL: root://localhost:1094//tmp/file1.dat?oss.asize=1855\r\n[2016-12-09 11:19:02.726517 +0100][Dump   ][Utility           ] Protocol:  root\r\n[2016-12-09 11:19:02.726517 +0100][Dump   ][Utility           ] User Name: \r\n[2016-12-09 11:19:02.726517 +0100][Dump   ][Utility           ] Password:  \r\n[2016-12-09 11:19:02.726517 +0100][Dump   ][Utility           ] Host Name: localhost\r\n[2016-12-09 11:19:02.726517 +0100][Dump   ][Utility           ] Port:      1094\r\n[2016-12-09 11:19:02.726517 +0100][Dump   ][Utility           ] Path:      /tmp/file1.dat\r\n[2016-12-09 11:19:02.726564 +0100][Dump   ][Utility           ] URL: root://localhost:1094//tmp/file1.dat?oss.asize=1855\r\n[2016-12-09 11:19:02.726564 +0100][Dump   ][Utility           ] Protocol:  root\r\n[2016-12-09 11:19:02.726564 +0100][Dump   ][Utility           ] User Name: \r\n[2016-12-09 11:19:02.726564 +0100][Dump   ][Utility           ] Password:  \r\n[2016-12-09 11:19:02.726564 +0100][Dump   ][Utility           ] Host Name: localhost\r\n[2016-12-09 11:19:02.726564 +0100][Dump   ][Utility           ] Port:      1094\r\n[2016-12-09 11:19:02.726564 +0100][Dump   ][Utility           ] Path:      /tmp/file1.dat\r\n[2016-12-09 11:19:02.726596 +0100][Debug  ][File              ] [0xaa91e0@root://localhost:1094//tmp/file1.dat?oss.asize=1855] Sending an open command\r\n[2016-12-09 11:19:02.726616 +0100][Dump   ][XRootD            ] [localhost:1094] Sending message kXR_open (file: /tmp/file1.dat?oss.asize=1855, mode: 0644, flags: kXR_delete kXR_open_updt kXR_async kXR_retstat )\r\n[2016-12-09 11:19:02.726634 +0100][Dump   ][PostMaster        ] [localhost:1094 #0] Sending message kXR_open (file: /tmp/file1.dat?oss.asize=1855, mode: 0644, flags: kXR_delete kXR_open_updt kXR_async kXR_retstat ) (0xaa9370) through substream 0 expecting answer at 0\r\n[2016-12-09 11:19:02.726712 +0100][Dump   ][AsyncSock         ] [localhost:1094 #0.0] Wrote a message: kXR_open (file: /tmp/file1.dat?oss.asize=1855, mode: 0644, flags: kXR_delete kXR_open_updt kXR_async kXR_retstat ) (0xaa9370), 53 bytes\r\n[2016-12-09 11:19:02.726728 +0100][Dump   ][AsyncSock         ] [localhost:1094 #0.0] Successfully sent message: kXR_open (file: /tmp/file1.dat?oss.asize=1855, mode: 0644, flags: kXR_delete kXR_open_updt kXR_async kXR_retstat ) (0xaa9370).\r\n[2016-12-09 11:19:02.726737 +0100][Dump   ][XRootD            ] [localhost:1094] Message kXR_open (file: /tmp/file1.dat?oss.asize=1855, mode: 0644, flags: kXR_delete kXR_open_updt kXR_async kXR_retstat ) has been successfully sent.\r\n[2016-12-09 11:19:02.726745 +0100][Dump   ][PostMaster        ] [localhost:1094 #0.0] All messages consumed, disable uplink\r\n[2016-12-09 11:19:02.727471 +0100][Dump   ][XRootDTransport   ] [msg: 0x94000a40] Expecting 46 bytes of message body\r\n[2016-12-09 11:19:02.727500 +0100][Dump   ][AsyncSock         ] [localhost:1094 #0.0] Received message header for 0x94000a40 size: 8\r\n[2016-12-09 11:19:02.727524 +0100][Dump   ][AsyncSock         ] [localhost:1094 #0.0] Received message 0x94000a40 of 54 bytes\r\n[2016-12-09 11:19:02.727536 +0100][Dump   ][PostMaster        ] [localhost:1094 #0] Handling received message: 0x94000a40.\r\n[2016-12-09 11:19:02.727601 +0100][Dump   ][XRootD            ] [localhost:1094] Got a kXR_ok response to request kXR_open (file: /tmp/file1.dat?oss.asize=1855, mode: 0644, flags: kXR_delete kXR_open_updt kXR_async kXR_retstat )\r\n[2016-12-09 11:19:02.727628 +0100][Dump   ][XRootD            ] [localhost:1094] Parsing the response to kXR_open (file: /tmp/file1.dat?oss.asize=1855, mode: 0644, flags: kXR_delete kXR_open_updt kXR_async kXR_retstat ) as OpenInfo\r\n[2016-12-09 11:19:02.727649 +0100][Dump   ][XRootD            ] [localhost:1094] Parsing StatInfo in response to kXR_open (file: /tmp/file1.dat?oss.asize=1855, mode: 0644, flags: kXR_delete kXR_open_updt kXR_async kXR_retstat )\r\n[2016-12-09 11:19:02.727708 +0100][Debug  ][File              ] [0xaa91e0@root://localhost:1094//tmp/file1.dat?oss.asize=1855] Open has returned with status [SUCCESS] \r\n[2016-12-09 11:19:02.727717 +0100][Debug  ][File              ] [0xaa91e0@root://localhost:1094//tmp/file1.dat?oss.asize=1855] successfully opened at localhost:1094, handle: 0x0, session id: 1\r\n[2016-12-09 11:19:02.727801 +0100][Debug  ][File              ] [0xaa91e0@root://localhost:1094//tmp/file1.dat?oss.asize=1855] Sending a write command for handle 0x0 to localhost:1094\r\n[2016-12-09 11:19:02.727838 +0100][Dump   ][XRootD            ] [localhost:1094] Sending message kXR_write (handle: 0x00000000, offset: 0, size: 1855)\r\n[2016-12-09 11:19:02.727857 +0100][Dump   ][PostMaster        ] [localhost:1094 #0] Sending message kXR_write (handle: 0x00000000, offset: 0, size: 1855) (0xaa9370) through substream 0 expecting answer at 0\r\n\r\n[1.812kB/1.812kB][100%][==================================================][1.812kB/s]  [2016-12-09 11:19:02.728092 +0100][Dump   ][AsyncSock         ] [localhost:1094 #0.0] Wrote a message: kXR_write (handle: 0x00000000, offset: 0, size: 1855) (0xaa9370), 24 bytes\r\n[2016-12-09 11:19:02.728106 +0100][Dump   ][AsyncSock         ] [localhost:1094 #0.0] Will call raw handler to write payload for message: kXR_write (handle: 0x00000000, offset: 0, size: 1855) (0xaa9370).\r\n[2016-12-09 11:19:02.728119 +0100][Dump   ][AsyncSock         ] [localhost:1094 #0.0] Successfully sent message: kXR_write (handle: 0x00000000, offset: 0, size: 1855) (0xaa9370).\r\n[2016-12-09 11:19:02.728125 +0100][Dump   ][XRootD            ] [localhost:1094] Message kXR_write (handle: 0x00000000, offset: 0, size: 1855) has been successfully sent.\r\n[2016-12-09 11:19:02.728129 +0100][Dump   ][PostMaster        ] [localhost:1094 #0.0] All messages consumed, disable uplink\r\n[2016-12-09 11:19:03.724402 +0100][Dump   ][TaskMgr           ] Running task: \"FileTimer task\"\r\n[2016-12-09 11:19:03.724628 +0100][Dump   ][TaskMgr           ] Will rerun task \"FileTimer task\" at [2016-12-09 11:19:18 +0100]\r\n[2016-12-09 11:19:17.726264 +0100][Dump   ][TaskMgr           ] Running task: \"TickGeneratorTask for: localhost:1094\"\r\n[2016-12-09 11:19:17.726362 +0100][Dump   ][TaskMgr           ] Will rerun task \"TickGeneratorTask for: localhost:1094\" at [2016-12-09 11:19:32 +0100]\r\n[2016-12-09 11:19:17.743230 +0100][Dump   ][XRootDTransport   ] [localhost:1094 #0.0] Stream inactive since 15 seconds, TTL: 300, allocated SIDs: 1, open files: 1\r\n[2016-12-09 11:19:17.743266 +0100][Dump   ][XRootDTransport   ] [localhost:1094 #0.0] Stream inactive since 15 seconds, stream timeout: 60, allocated SIDs: 1, wait barrier: 2016-12-09 11:19:02 +0100\r\n[2016-12-09 11:19:18.726463 +0100][Dump   ][TaskMgr           ] Running task: \"FileTimer task\"\r\n[2016-12-09 11:19:18.726520 +0100][Dump   ][TaskMgr           ] Will rerun task \"FileTimer task\" at [2016-12-09 11:19:33 +0100]\r\n[2016-12-09 11:19:32.728149 +0100][Dump   ][TaskMgr           ] Running task: \"TickGeneratorTask for: localhost:1094\"\r\n[2016-12-09 11:19:32.728451 +0100][Dump   ][TaskMgr           ] Will rerun task \"TickGeneratorTask for: localhost:1094\" at [2016-12-09 11:19:47 +0100]\r\n[2016-12-09 11:19:32.758349 +0100][Dump   ][XRootDTransport   ] [localhost:1094 #0.0] Stream inactive since 30 seconds, TTL: 300, allocated SIDs: 1, open files: 1\r\n[2016-12-09 11:19:32.758392 +0100][Dump   ][XRootDTransport   ] [localhost:1094 #0.0] Stream inactive since 30 seconds, stream timeout: 60, allocated SIDs: 1, wait barrier: 2016-12-09 11:19:02 +0100\r\n[2016-12-09 11:19:33.728625 +0100][Dump   ][TaskMgr           ] Running task: \"FileTimer task\"\r\n[2016-12-09 11:19:33.728702 +0100][Dump   ][TaskMgr           ] Will rerun task \"FileTimer task\" at [2016-12-09 11:19:48 +0100]\r\n[2016-12-09 11:19:47.730220 +0100][Dump   ][TaskMgr           ] Running task: \"TickGeneratorTask for: localhost:1094\"\r\n[2016-12-09 11:19:47.730424 +0100][Dump   ][TaskMgr           ] Will rerun task \"TickGeneratorTask for: localhost:1094\" at [2016-12-09 11:20:02 +0100]\r\n[2016-12-09 11:19:47.773481 +0100][Dump   ][XRootDTransport   ] [localhost:1094 #0.0] Stream inactive since 45 seconds, TTL: 300, allocated SIDs: 1, open files: 1\r\n[2016-12-09 11:19:47.773540 +0100][Dump   ][XRootDTransport   ] [localhost:1094 #0.0] Stream inactive since 45 seconds, stream timeout: 60, allocated SIDs: 1, wait barrier: 2016-12-09 11:19:02 +0100\r\n[2016-12-09 11:19:48.730542 +0100][Dump   ][TaskMgr           ] Running task: \"FileTimer task\"\r\n[2016-12-09 11:19:48.730605 +0100][Dump   ][TaskMgr           ] Will rerun task \"FileTimer task\" at [2016-12-09 11:20:03 +0100]\r\n[2016-12-09 11:20:02.732267 +0100][Dump   ][TaskMgr           ] Running task: \"TickGeneratorTask for: localhost:1094\"\r\n[2016-12-09 11:20:02.732384 +0100][Dump   ][TaskMgr           ] Will rerun task \"TickGeneratorTask for: localhost:1094\" at [2016-12-09 11:20:17 +0100]\r\n[2016-12-09 11:20:02.788671 +0100][Dump   ][XRootDTransport   ] [localhost:1094 #0.0] Stream inactive since 60 seconds, TTL: 300, allocated SIDs: 1, open files: 1\r\n[2016-12-09 11:20:02.788748 +0100][Dump   ][XRootDTransport   ] [localhost:1094 #0.0] Stream inactive since 60 seconds, stream timeout: 60, allocated SIDs: 1, wait barrier: 2016-12-09 11:19:02 +0100\r\n[2016-12-09 11:20:02.788800 +0100][Debug  ][AsyncSock         ] [localhost:1094 #0.0] Closing the socket\r\n[2016-12-09 11:20:02.788823 +0100][Debug  ][Poller            ] <[::ffff:127.0.0.1]:40733><--><[::ffff:127.0.0.1]:1094> Removing socket from the poller\r\n[2016-12-09 11:20:02.789292 +0100][Debug  ][PostMaster        ] [localhost:1094 #0] Recovering error for stream #0: [ERROR] Socket error.\r\n[2016-12-09 11:20:02.789402 +0100][Debug  ][PostMaster        ] [localhost:1094 #0] Reporting disconnection to queued message handlers.\r\n[2016-12-09 11:20:02.789418 +0100][Dump   ][XRootD            ] [localhost:1094] Stream event reported for msg kXR_write (handle: 0x00000000, offset: 0, size: 1855)\r\n[2016-12-09 11:20:02.789499 +0100][Debug  ][XRootD            ] [localhost:1094] Handling error while processing kXR_write (handle: 0x00000000, offset: 0, size: 1855): [ERROR] Socket error.\r\n[2016-12-09 11:20:02.789510 +0100][Error  ][XRootD            ] [localhost:1094] Unable to get the response to request kXR_write (handle: 0x00000000, offset: 0, size: 1855)\r\n[2016-12-09 11:20:02.789546 +0100][Dump   ][File              ] [0xaa91e0@root://localhost:1094//tmp/file1.dat?oss.asize=1855] File state error encountered. Message kXR_write (handle: 0x00000000, offset: 0, size: 1855) returned with [ERROR] Socket error\r\n[2016-12-09 11:20:02.789573 +0100][Dump   ][File              ] [0xaa91e0@root://localhost:1094//tmp/file1.dat?oss.asize=1855] Putting message kXR_write (handle: 0x00000000, offset: 0, size: 1855) in the recovery list\r\n[2016-12-09 11:20:02.789579 +0100][Debug  ][File              ] [0xaa91e0@root://localhost:1094//tmp/file1.dat?oss.asize=1855] Running the recovery procedure\r\n[2016-12-09 11:20:02.789590 +0100][Dump   ][File              ] [0xaa91e0@root://localhost:1094//tmp/file1.dat?oss.asize=1855] Sending a recovery open command to root://localhost:1094//tmp/file1.dat?oss.asize=1855\r\n[2016-12-09 11:20:02.789689 +0100][Dump   ][XRootD            ] [localhost:1094] Sending message kXR_open (file: /tmp/file1.dat?oss.asize=1855, mode: 0644, flags: kXR_open_updt )\r\n[2016-12-09 11:20:02.789720 +0100][Dump   ][PostMaster        ] [localhost:1094 #0] Sending message kXR_open (file: /tmp/file1.dat?oss.asize=1855, mode: 0644, flags: kXR_open_updt ) (0x94000b30) through substream 0 expecting answer at 0\r\n[2016-12-09 11:20:02.789951 +0100][Debug  ][PostMaster        ] [localhost:1094] Found 1 address(es): [::ffff:127.0.0.1]:1094\r\n[2016-12-09 11:20:02.790142 +0100][Debug  ][AsyncSock         ] [localhost:1094 #0.0] Attempting connection to [::ffff:127.0.0.1]:1094\r\n[2016-12-09 11:20:02.790366 +0100][Debug  ][Poller            ] Adding socket 0xaa7f10 to the poller\r\n[2016-12-09 11:20:02.790410 +0100][Debug  ][AsyncSock         ] [localhost:1094 #0.0] Async connection call returned\r\n[2016-12-09 11:20:02.790426 +0100][Debug  ][XRootDTransport   ] [localhost:1094 #0.0] Sending out the initial hand shake + kXR_protocol\r\n[2016-12-09 11:20:02.790458 +0100][Dump   ][AsyncSock         ] [localhost:1094 #0.0] Wrote a message:  (0x94000950), 44 bytes\r\n[2016-12-09 11:20:02.790827 +0100][Dump   ][XRootDTransport   ] [msg: 0x94000950] Expecting 8 bytes of message body\r\n[2016-12-09 11:20:02.790840 +0100][Dump   ][AsyncSock         ] [localhost:1094 #0.0] Received message header, size: 8\r\n[2016-12-09 11:20:02.790848 +0100][Dump   ][AsyncSock         ] [localhost:1094 #0.0] Received a message of 16 bytes\r\n[2016-12-09 11:20:02.790855 +0100][Debug  ][XRootDTransport   ] [localhost:1094 #0.0] Got the server hand shake response (type: server [], protocol version 310)\r\n[2016-12-09 11:20:02.790862 +0100][Dump   ][XRootDTransport   ] [msg: 0x94000950] Expecting 8 bytes of message body\r\n[2016-12-09 11:20:02.790866 +0100][Dump   ][AsyncSock         ] [localhost:1094 #0.0] Received message header, size: 8\r\n[2016-12-09 11:20:02.790871 +0100][Dump   ][AsyncSock         ] [localhost:1094 #0.0] Received a message of 16 bytes\r\n[2016-12-09 11:20:02.790876 +0100][Debug  ][XRootDTransport   ] [localhost:1094 #0.0] kXR_protocol successful (type: server [], protocol version 310)\r\n[2016-12-09 11:20:02.790976 +0100][Debug  ][XRootDTransport   ] [localhost:1094 #0.0] Sending out kXR_login request, username: esindril, cgi: ?xrd.cc=ch&xrd.tz=1&xrd.appname=xrdcp&xrd.info=&xrd.hostname=esvm000.cern.ch&xrd.rn=v4.5.0, dual-stack: false, private IPv4: false, private IPv6: false\r\n[2016-12-09 11:20:02.791011 +0100][Dump   ][AsyncSock         ] [localhost:1094 #0.0] Wrote a message:  (0x94000d60), 114 bytes\r\n[2016-12-09 11:20:02.791102 +0100][Dump   ][XRootDTransport   ] [msg: 0x94000d60] Expecting 16 bytes of message body\r\n[2016-12-09 11:20:02.791112 +0100][Dump   ][AsyncSock         ] [localhost:1094 #0.0] Received message header, size: 8\r\n[2016-12-09 11:20:02.791117 +0100][Dump   ][AsyncSock         ] [localhost:1094 #0.0] Received a message of 24 bytes\r\n[2016-12-09 11:20:02.791124 +0100][Debug  ][XRootDTransport   ] [localhost:1094 #0.0] Logged in, session: 02000000226a00001600000002000000\r\n[2016-12-09 11:20:02.791131 +0100][Debug  ][XRootDTransport   ] [localhost:1094 #0.0] Sending out kXR_endsess for session: 01000000226a00001500000001000000\r\n[2016-12-09 11:20:02.791149 +0100][Dump   ][AsyncSock         ] [localhost:1094 #0.0] Wrote a message:  (0x94000950), 24 bytes\r\n[2016-12-09 11:20:02.791445 +0100][Dump   ][XRootDTransport   ] [msg: 0x94000950] Expecting 24 bytes of message body\r\n[2016-12-09 11:20:02.791455 +0100][Dump   ][AsyncSock         ] [localhost:1094 #0.0] Received message header, size: 8\r\n[2016-12-09 11:20:02.791460 +0100][Dump   ][AsyncSock         ] [localhost:1094 #0.0] Received a message of 32 bytes\r\n[2016-12-09 11:20:02.791468 +0100][Debug  ][PostMaster        ] [localhost:1094 #0] Stream 0 connected.\r\n[2016-12-09 11:20:02.791503 +0100][Dump   ][AsyncSock         ] [localhost:1094 #0.0] Wrote a message: kXR_open (file: /tmp/file1.dat?oss.asize=1855, mode: 0644, flags: kXR_open_updt ) (0x94000b30), 53 bytes\r\n[2016-12-09 11:20:02.791524 +0100][Dump   ][AsyncSock         ] [localhost:1094 #0.0] Successfully sent message: kXR_open (file: /tmp/file1.dat?oss.asize=1855, mode: 0644, flags: kXR_open_updt ) (0x94000b30).\r\n[2016-12-09 11:20:02.791543 +0100][Dump   ][XRootD            ] [localhost:1094] Message kXR_open (file: /tmp/file1.dat?oss.asize=1855, mode: 0644, flags: kXR_open_updt ) has been successfully sent.\r\n[2016-12-09 11:20:02.791553 +0100][Dump   ][PostMaster        ] [localhost:1094 #0.0] All messages consumed, disable uplink\r\n[2016-12-09 11:20:02.791998 +0100][Dump   ][XRootDTransport   ] [msg: 0x94001190] Expecting 75 bytes of message body\r\n[2016-12-09 11:20:02.792018 +0100][Dump   ][AsyncSock         ] [localhost:1094 #0.0] Received message header for 0x94001190 size: 8\r\n[2016-12-09 11:20:02.792027 +0100][Dump   ][AsyncSock         ] [localhost:1094 #0.0] Received message 0x94001190 of 83 bytes\r\n[2016-12-09 11:20:02.792033 +0100][Dump   ][PostMaster        ] [localhost:1094 #0] Handling received message: 0x94001190.\r\n[2016-12-09 11:20:02.792128 +0100][Dump   ][XRootD            ] [localhost:1094] Got a kXR_error response to request kXR_open (file: /tmp/file1.dat?oss.asize=1855, mode: 0644, flags: kXR_open_updt ) [3003] Output file /tmp/file1.dat is already opened by 1 writer; open denied.\r\n[2016-12-09 11:20:02.792203 +0100][Debug  ][XRootD            ] [localhost:1094] Handling error while processing kXR_open (file: /tmp/file1.dat?oss.asize=1855, mode: 0644, flags: kXR_open_updt ): [ERROR] Error response: Resource deadlock avoided.\r\n[2016-12-09 11:20:02.792257 +0100][Debug  ][File              ] [0xaa91e0@root://localhost:1094//tmp/file1.dat?oss.asize=1855] Open has returned with status [ERROR] Server responded with an error: [3003] Output file /tmp/file1.dat is already opened by 1 writer; open denied.\r\n[2016-12-09 11:20:02.792265 +0100][Debug  ][File              ] [0xaa91e0@root://localhost:1094//tmp/file1.dat?oss.asize=1855] Error while opening at localhost:1094: [ERROR] Server responded with an error: [3003] Output file /tmp/file1.dat is already opened by 1 writer; open denied.\r\n[2016-12-09 11:20:02.792272 +0100][Dump   ][File              ] [0xaa91e0@root://localhost:1094//tmp/file1.dat?oss.asize=1855] Failing message kXR_write (handle: 0x00000000, offset: 0, size: 1855) with [ERROR] Server responded with an error: [3003] Output file /tmp/file1.dat is already opened by 1 writer; open denied.\r\n\r\n[1.812kB/1.812kB][100%][==================================================][30B/s]  \r\nRun: [ERROR] Server responded with an error: [3003] Output file /tmp/file1.dat is already opened by 1 writer; open denied.\r\n\r\n[2016-12-09 11:20:02.792705 +0100][Debug  ][JobMgr            ] Stopping the job manager...\r\n[2016-12-09 11:20:02.792719 +0100][Dump   ][JobMgr            ] Stopping worker #0...\r\n[2016-12-09 11:20:02.793243 +0100][Dump   ][JobMgr            ] Worker #0 stopped\r\n[2016-12-09 11:20:02.793266 +0100][Dump   ][JobMgr            ] Stopping worker #1...\r\n[2016-12-09 11:20:02.793335 +0100][Dump   ][JobMgr            ] Worker #1 stopped\r\n[2016-12-09 11:20:02.793344 +0100][Dump   ][JobMgr            ] Stopping worker #2...\r\n[2016-12-09 11:20:02.793396 +0100][Dump   ][JobMgr            ] Worker #2 stopped\r\n[2016-12-09 11:20:02.793403 +0100][Debug  ][JobMgr            ] Job manager stopped\r\n[2016-12-09 11:20:02.793409 +0100][Debug  ][TaskMgr           ] Stopping the task manager...\r\n[2016-12-09 11:20:02.793528 +0100][Debug  ][TaskMgr           ] Task manager stopped\r\n[2016-12-09 11:20:02.793536 +0100][Debug  ][Poller            ] Stopping the poller...\r\n[2016-12-09 11:20:02.793704 +0100][Debug  ][TaskMgr           ] Requesting unregistration of: \"TickGeneratorTask for: localhost:1094\"\r\n[2016-12-09 11:20:02.793718 +0100][Debug  ][AsyncSock         ] [localhost:1094 #0.0] Closing the socket\r\n[2016-12-09 11:20:02.793724 +0100][Debug  ][Poller            ] <[::ffff:127.0.0.1]:40734><--><[::ffff:127.0.0.1]:1094> Removing socket from the poller\r\n[2016-12-09 11:20:02.793759 +0100][Debug  ][PostMaster        ] [localhost:1094 #0] Destroying stream\r\n[2016-12-09 11:20:02.793769 +0100][Debug  ][AsyncSock         ] [localhost:1094 #0.0] Closing the socket\r\n```\r\n\r\nOn the server side I get the following:\r\n```bash\r\n161209 11:16:15 27170 Starting on Linux 3.10.0-327.4.5.el7.x86_64\r\nCopr.  2004-2012 Stanford University, xrd version v4.5.0\r\n++++++ xrootd standalone@esvm000.cern.ch initialization started.\r\nConfig using configuration file /etc/xrootd/xrootd-standalone.cfg\r\n=====> all.adminpath /var/spool/xrootd\r\nConfig maximum number of connections restricted to 65536\r\nCopr.  2012 Stanford University, xrootd protocol 3.1.0 version v4.5.0\r\n++++++ xrootd protocol initialization started.\r\n=====> all.export /tmp\r\n=====> all.pidpath /var/run/xrootd\r\nConfig exporting /tmp\r\nConfig warning: 'xrootd.seclib' not specified; strong authentication disabled!\r\nConfig Routing for esvm000.cern.ch: local pub4 prv4 \r\nConfig Route all4: esvm000.cern.ch Dest=[::188.184.83.25]:1094\r\n++++++ File system initialization started.\r\n++++++ Storage system initialization started.\r\n=====> all.export /tmp\r\nConfig effective /etc/xrootd/xrootd-standalone.cfg oss configuration:\r\n       oss.alloc        0 0 0\r\n       oss.cachescan    600\r\n       oss.fdlimit      32768 65536\r\n       oss.maxsize      0\r\n       oss.trace        0\r\n       oss.xfr          1 deny 10800 keep 1200\r\n       oss.memfile off  max 3743987712\r\n       oss.defaults  r/w  nocheck nodread nomig norcreate nopurge nostage xattr\r\n       oss.path /tmp r/w  nocheck nodread nomig norcreate nopurge nostage xattr\r\n------ Storage system initialization completed.\r\nConfig effective /etc/xrootd/xrootd-standalone.cfg ofs configuration:\r\n       all.role server\r\n       ofs.maxdelay   60\r\n       ofs.persist    manual hold 600 logdir /var/spool/xrootd/standalone/.ofs/posc.log\r\n       ofs.trace      0\r\n------ File system server initialization completed.\r\nConfig warning: 'xrootd.prepare logdir' not specified; prepare tracking disabled.\r\n161209 11:16:15 27170 XrootdConfig: Unable to create; permission denied\r\n------ xrootd protocol initialization completed.\r\n161209 11:16:15 27170 XrdConfig: Unable to create home directory //standalone; permission denied\r\n161209 11:16:15 27170 XrdConfig: Unable to create envfile /var/run/xrootd/xrootd.standalone.env; no such file or directory\r\n------ xrootd standalone@esvm000.cern.ch:1094 initialization completed.\r\n161209 11:19:02 27174 XrootdXeq: esindril.27188:21@localhost pvt IPv4 login\r\n161209 11:20:02 27175 XrootdXeq: esindril.27188:22@localhost pvt IPv4 login\r\n161209 11:20:02 27195 XrootdXeq: Output file /tmp/file1.dat is already opened by 1 writer; open denied.\r\n161209 11:20:02 27195 XrootdXeq: esindril.27188:22@localhost disc 0:00:00\r\n161209 11:20:07 27174 XrootdXeq: esindril.27188:21@localhost disc 0:01:05\r\n```\r\n\r\nThis is a vanilla XRootD 4.5.0 installation. This behavior seems strange to me. Note in the server logs that the first connection with file descriptor 21 is closed all the way at the end and I assume this is why the server keeps the counter for the writers updated. But I would expect that a client should be able to recover from a write error rather than getting this message.\r\n\r\nThanks,\r\nElvin\r\n"},"comment":{"url":"https://api.github.com/repos/xrootd/xrootd/issues/comments/266009505","html_url":"https://github.com/xrootd/xrootd/issues/437#issuecomment-266009505","issue_url":"https://api.github.com/repos/xrootd/xrootd/issues/437","id":266009505,"user":{"login":"ljanyst","id":126975,"avatar_url":"https://avatars.githubusercontent.com/u/126975?v=3","gravatar_id":"","url":"https://api.github.com/users/ljanyst","html_url":"https://github.com/ljanyst","followers_url":"https://api.github.com/users/ljanyst/followers","following_url":"https://api.github.com/users/ljanyst/following{/other_user}","gists_url":"https://api.github.com/users/ljanyst/gists{/gist_id}","starred_url":"https://api.github.com/users/ljanyst/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/ljanyst/subscriptions","organizations_url":"https://api.github.com/users/ljanyst/orgs","repos_url":"https://api.github.com/users/ljanyst/repos","events_url":"https://api.github.com/users/ljanyst/events{/privacy}","received_events_url":"https://api.github.com/users/ljanyst/received_events","type":"User","site_admin":false},"created_at":"2016-12-09T13:07:38Z","updated_at":"2016-12-09T13:07:38Z","body":"Have a look if `kXR_endsess` is handled properly on both sides."}}
{"actor":{"display_login":"ljanyst"}}