The session close flag was only computed after each append, so a known-size upload which fits in a single chunk sent all its data and then issued a zero-payload append purely to close the session - one wasted round trip per small file on the default batched upload path. Set the close flag before the first append when the size is known to fit in one chunk.