Subject says it all - xrootd client's ReadV is not thread-safe.
In particular, from the protocol definition in 3.19 (kXR_read Request):
8) Sending requests using the same streamid when a kXR_oksofar status code has been returned may produced unpredictable results. A client must serialize all requests using the streamid in the presence of partial results.
Indeed - the "old" client uses the same stream ID for all threads. So, one should not expect ReadV to be safe for the old client. This was not immediately obvious; ROOT handles this incorrectly AFAICT.
Can I request the new client is thread-safe with respect to ReadV?
Thanks,
Brian
########################################################################
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
|