Branch: refs/heads/stable-4.12.x Home: https://github.com/xrootd/xrootd Commit: e2325fa6dd40d7bab082e761548ce872b75653f3 https://github.com/xrootd/xrootd/commit/e2325fa6dd40d7bab082e761548ce872b75653f3 Author: Brian Bockelman <[log in to unmask]> Date: 2021-02-03 (Wed, 03 Feb 2021) Changed paths: M src/XrdTpc/XrdTpcState.cc M src/XrdTpc/XrdTpcState.hh M src/XrdTpc/XrdTpcStream.cc M src/XrdTpc/XrdTpcStream.hh Log Message: ----------- XrdTpc: Fix the return value of `Stream::Write` This is an internal API and really should match the semantics of the POSIX `write()` call as it returns the size of the write. Conflicts: src/XrdTpc/XrdTpcState.cc Commit: 1532ac0f8e038b7db560daff74bea6eddf2c5bbd https://github.com/xrootd/xrootd/commit/1532ac0f8e038b7db560daff74bea6eddf2c5bbd Author: Brian Bockelman <[log in to unmask]> Date: 2021-02-03 (Wed, 03 Feb 2021) Changed paths: M src/XrdTpc/XrdTpcStream.hh Log Message: ----------- XrdTpc: Catch all negative return values not just SFS_ERROR. Commit: 78594091680c407ba1c22953c58e56afa9aafe16 https://github.com/xrootd/xrootd/commit/78594091680c407ba1c22953c58e56afa9aafe16 Author: Brian Bockelman <[log in to unmask]> Date: 2021-02-03 (Wed, 03 Feb 2021) Changed paths: M src/XrdTpc/XrdTpcStream.cc M src/XrdTpc/XrdTpcStream.hh Log Message: ----------- XrdTpc: Factor out recursive writes. This separates the writing methods of the stream to avoid potential recursion when dumping buffered data. This also allows the buffer to accept partial data so the beginning offset of the buffer is always a multiple of the buffer size (i.e., the buffer offsets always stay MB-aligned). With this, a single incoming buffer from curl may be split across two entries in order to keep alignment. Commit: 72f3cea2f3b02fa7b043862cd33dcb0568843cf0 https://github.com/xrootd/xrootd/commit/72f3cea2f3b02fa7b043862cd33dcb0568843cf0 Author: Brian Bockelman <[log in to unmask]> Date: 2021-02-03 (Wed, 03 Feb 2021) Changed paths: M src/XrdTpc/XrdTpcStream.hh Log Message: ----------- XrdTpc: Do not allow partial buffer writes The multistream code uses an occupied buffer as an indication that a request is ongoing; for now, we can't do partial buffer writes as this causes the back-off code to think the buffer is free and start too many requests. Commit: 8e4b6ae9f60050ff1530c2c559af3ee461695465 https://github.com/xrootd/xrootd/commit/8e4b6ae9f60050ff1530c2c559af3ee461695465 Author: Brian Bockelman <[log in to unmask]> Date: 2021-02-03 (Wed, 03 Feb 2021) Changed paths: M src/XrdTpc/XrdTpcTPC.cc M src/XrdTpc/XrdTpcTPC.hh Log Message: ----------- XrdTpc: Adjust buffer size based on number of streams. As we only write when buffers are full and we don't need a full 16MB buffer when we are doing single-streams (for single stream, we're only waiting to accumulate a "large-enough" MB-aligned buffer), we can simply decrease the buffer size. Saves some allocated-but-unused space. Commit: 19a48f45a45983223a7942eae1db0bb097788d6a https://github.com/xrootd/xrootd/commit/19a48f45a45983223a7942eae1db0bb097788d6a Author: Brian Bockelman <[log in to unmask]> Date: 2021-02-03 (Wed, 03 Feb 2021) Changed paths: M src/XrdTpc/XrdTpcStream.cc Log Message: ----------- XrdTpc: Always populate error buffer with messages. Even when there's an internal logic error, make sure the Write method populates the error message - if nothing else, will be useful for debugging. Compare: https://github.com/xrootd/xrootd/compare/f8153c5caf0b...19a48f45a459 ######################################################################## 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