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