hnasrullakhan opened a new issue, #46: URL: https://github.com/apache/arrow-java/issues/46
### Describe the usage question you have. Please include as many useful details as possible. Hi community, I have a trying to modify data buffers of string column. if i print the buffer readable bytes after ` buffers.set(index, compressedBuf); `, i see the right value. ``` List<ArrowBuf> buffers = fieldVector.getFieldBuffers(); int index = buffers.size() - 1; ArrowBuf compressedBuf = null; ArrowBuf originalBuf = buffers.get(index); ByteBuffer originalBuffer = originalBuf.nioBuffer(0, (int) originalBuf.readableBytes()); // Compress the buffer using LZ4 byte[] originalBytes = new byte[originalBuffer.remaining()]; System.out.println("This is buffer id: "+ index + " originalbytes: "+ originalBuf.readableBytes()); originalBuffer.get(originalBytes); int maxCompressedLength = compressor.maxCompressedLength(originalBytes.length); byte[] compressedBytes = new byte[maxCompressedLength]; int compressedLength = compressor.compress(originalBytes, 0, originalBytes.length, compressedBytes, 0, maxCompressedLength); // Allocate a new ArrowBuf for the compressed data compressedBuf = allocator.buffer(compressedLength); compressedBuf.writeBytes(compressedBytes, 0, compressedLength); compressedBuf.writerIndex(compressedLength); System.out.println("This is buffer id: "+ index+ " compressedbytes: "+ compressedBuf.readableBytes()); buffers.set(index, compressedBuf); // Replace with compressed buffer ``` When i update my fieldvector. ``` int nullCount = fieldVector.getNullCount(); // Get the null count ArrowFieldNode fieldNode = new ArrowFieldNode(fieldVectorValueCount, nullCount); ArrowBuf validityBuffer = fieldVector.getValidityBuffer(); // Assuming it exists ArrowBuf offsetBuffer = fieldVector.getOffsetBuffer(); // Assuming it exists // Update FieldVector with the new compressed buffers fieldVector.clear(); // Clear existing buffers (to prevent memory leaks) fieldVector.loadFieldBuffers(fieldNode,java.util.Arrays.asList(validityBuffer, offsetBuffer, compressedBuf)); // Load the new (compressed) buffers fieldVector.setValueCount(fieldVectorValueCount); // Reset value count after buffer replacement Field field1 = fieldVector.getField(); ``` and i check the buffers again then buffers reflect old value. please advise . ### Component(s) Java -- This is an automated message from the Apache Git Service. To respond to the message, please log on to GitHub and use the URL above to go to the specific comment. To unsubscribe, e-mail: issues-unsubscr...@arrow.apache.org.apache.org For queries about this service, please contact Infrastructure at: us...@infra.apache.org