You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@cassandra.apache.org by "Pavel Yaskevich (JIRA)" <ji...@apache.org> on 2011/02/25 20:06:21 UTC
[jira] Commented: (CASSANDRA-2250)
BufferedRandomAccessFile.read(byte[], int, int) method reads max
DEFAULT_BUFFER_SIZE
[ https://issues.apache.org/jira/browse/CASSANDRA-2250?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=12999478#comment-12999478 ]
Pavel Yaskevich commented on CASSANDRA-2250:
--------------------------------------------
On my opinion return less than length bytes is acceptable if file does not contain all required length, relying on DEFAULT_BUFFER_SIZE as max length makes bytes(byte[], int, int) and bytes(byte[]) useless
> BufferedRandomAccessFile.read(byte[], int, int) method reads max DEFAULT_BUFFER_SIZE
> ------------------------------------------------------------------------------------
>
> Key: CASSANDRA-2250
> URL: https://issues.apache.org/jira/browse/CASSANDRA-2250
> Project: Cassandra
> Issue Type: Sub-task
> Components: Core
> Reporter: Pavel Yaskevich
>
> Test to reproduce:
> {code}
> File tempFile = File.createTempFile("braf", null);
> tempFile.deleteOnExit();
> BufferedRandomAccessFile file = new BufferedRandomAccessFile(tempFile, "rw");
> byte[] bigData = new byte[BufferedRandomAccessFile.DEFAULT_BUFFER_SIZE + 10];
> for (int i = 0; i < bigData.length; i++)
> bigData[i] = 'd';
> long initialPosition = file.getFilePointer();
> file.write(bigData); // writing data
> assert file.getFilePointer() == initialPosition + bigData.length;
> assert file.length() == initialPosition + bigData.length; // file size should equals to last position
> // reading written buffer
> file.seek(initialPosition);
> data = new byte[bigData.length];
> assert file.read(data) == data.length; <-- Fails (returns DEFAULT_BUFFER_SIZE as file.read(..) result)
> {code}
>
--
This message is automatically generated by JIRA.
-
For more information on JIRA, see: http://www.atlassian.com/software/jira