Print

Print


Hi folks,

Somehow, this one seems to have gotten lost in the rush for finishing 3.0.0.  This fixes the fact that ReadV gives the incorrect return code when asynchronous mode is used, leading to an occasional degradation of performance in ROOT.  We really should fix this before the ROOT release.

Pete - this is the latest version of the readv2 patch for tomorrow's ROOT pre-release build.

Brian

--- a/src/XrdClient/XrdClient.cc
+++ b/src/XrdClient/XrdClient.cc
@@ -769,6 +769,7 @@ kXR_int64 XrdClient::ReadV(char *buf, kXR_int64 *offsets, int *lens, int nbuf)
             fCounters.ReadVAsyncSubChunks++;
             fCounters.ReadVAsyncBytes += reqvect[startitem].len;
             Read_Async(reqvect[startitem].offset, reqvect[startitem].len, false);
+            res = reqvect[startitem].len;
          }
       } else {
          if (buf) {