public void copyOnWrite() {
            int size = partBuf.readableBytes();
            if (size > 0) {
                ByteBuf buf = ByteBufAlloc.byteBuffer(size, writeOptions.allocType());
                buf.writeBytes(partBuf.duplicate());
                CompositeByteBuf copy = ByteBufAlloc.compositeByteBuffer().addComponent(true, buf);
                this.partBuf.release();
                this.partBuf = copy;
            }
        }
The minPartSize represents the minimum size of a part for a multipart object.
s3stream/src/main/java/com/automq/stream/s3/operator/MultiPartWriter.java