You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@cassandra.apache.org by "Jun Rao (JIRA)" <ji...@apache.org> on 2009/11/19 22:19:39 UTC

[jira] Created: (CASSANDRA-565) BufferedRandomAccessFile.read doesn't always do full reads

BufferedRandomAccessFile.read doesn't always do full reads
----------------------------------------------------------

                 Key: CASSANDRA-565
                 URL: https://issues.apache.org/jira/browse/CASSANDRA-565
             Project: Cassandra
          Issue Type: Bug
          Components: Core
            Reporter: Jun Rao
            Assignee: Jun Rao
         Attachments: issue565.patchev1

BufferedRandomAccessFile.read may read fewer bytes than required, even when EOF is not reached. This breaks commit log recovery, which assumes that when a read returns less than required, the EOF is reached.

-- 
This message is automatically generated by JIRA.
-
You can reply to this email to add a comment to the issue online.


[jira] Commented: (CASSANDRA-565) BufferedRandomAccessFile.read doesn't always do full reads

Posted by "Jonathan Ellis (JIRA)" <ji...@apache.org>.
    [ https://issues.apache.org/jira/browse/CASSANDRA-565?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=12780274#action_12780274 ] 

Jonathan Ellis commented on CASSANDRA-565:
------------------------------------------

since the contract for RandomAccessFile that BRAF is patterned on is that read() may return less bytes even if it is not EOF, IMO we should probably make the read-with-retry loop a separate method (readFully?)

> BufferedRandomAccessFile.read doesn't always do full reads
> ----------------------------------------------------------
>
>                 Key: CASSANDRA-565
>                 URL: https://issues.apache.org/jira/browse/CASSANDRA-565
>             Project: Cassandra
>          Issue Type: Bug
>          Components: Core
>            Reporter: Jun Rao
>            Assignee: Jun Rao
>             Fix For: 0.5
>
>         Attachments: issue565.patchev1
>
>
> BufferedRandomAccessFile.read may read fewer bytes than required, even when EOF is not reached. This breaks commit log recovery, which assumes that when a read returns less than required, the EOF is reached.

-- 
This message is automatically generated by JIRA.
-
You can reply to this email to add a comment to the issue online.


[jira] Updated: (CASSANDRA-565) BufferedRandomAccessFile.read doesn't always do full reads

Posted by "Jun Rao (JIRA)" <ji...@apache.org>.
     [ https://issues.apache.org/jira/browse/CASSANDRA-565?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]

Jun Rao updated CASSANDRA-565:
------------------------------

    Attachment: issue565.patchev2

Patch v2. Use the existing readFully method in CommitLog instead.

> BufferedRandomAccessFile.read doesn't always do full reads
> ----------------------------------------------------------
>
>                 Key: CASSANDRA-565
>                 URL: https://issues.apache.org/jira/browse/CASSANDRA-565
>             Project: Cassandra
>          Issue Type: Bug
>          Components: Core
>            Reporter: Jun Rao
>            Assignee: Jun Rao
>             Fix For: 0.5
>
>         Attachments: issue565.patchev1, issue565.patchev2
>
>
> BufferedRandomAccessFile.read may read fewer bytes than required, even when EOF is not reached. This breaks commit log recovery, which assumes that when a read returns less than required, the EOF is reached.

-- 
This message is automatically generated by JIRA.
-
You can reply to this email to add a comment to the issue online.


[jira] Commented: (CASSANDRA-565) BufferedRandomAccessFile.read doesn't always do full reads

Posted by "Hudson (JIRA)" <ji...@apache.org>.
    [ https://issues.apache.org/jira/browse/CASSANDRA-565?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=12780538#action_12780538 ] 

Hudson commented on CASSANDRA-565:
----------------------------------

Integrated in Cassandra #264 (See [http://hudson.zones.apache.org/hudson/job/Cassandra/264/])
    BufferedRandomAccessFile.read doesn't always do full reads; patched by junrao, reviewed by jbellis for 


> BufferedRandomAccessFile.read doesn't always do full reads
> ----------------------------------------------------------
>
>                 Key: CASSANDRA-565
>                 URL: https://issues.apache.org/jira/browse/CASSANDRA-565
>             Project: Cassandra
>          Issue Type: Bug
>          Components: Core
>            Reporter: Jun Rao
>            Assignee: Jun Rao
>             Fix For: 0.5
>
>         Attachments: issue565.patchev1, issue565.patchev2
>
>
> BufferedRandomAccessFile.read may read fewer bytes than required, even when EOF is not reached. This breaks commit log recovery, which assumes that when a read returns less than required, the EOF is reached.

-- 
This message is automatically generated by JIRA.
-
You can reply to this email to add a comment to the issue online.


[jira] Commented: (CASSANDRA-565) BufferedRandomAccessFile.read doesn't always do full reads

Posted by "Jonathan Ellis (JIRA)" <ji...@apache.org>.
    [ https://issues.apache.org/jira/browse/CASSANDRA-565?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=12780288#action_12780288 ] 

Jonathan Ellis commented on CASSANDRA-565:
------------------------------------------

(now that I see that this is documented behavior I withdraw the request for a test)

> BufferedRandomAccessFile.read doesn't always do full reads
> ----------------------------------------------------------
>
>                 Key: CASSANDRA-565
>                 URL: https://issues.apache.org/jira/browse/CASSANDRA-565
>             Project: Cassandra
>          Issue Type: Bug
>          Components: Core
>            Reporter: Jun Rao
>            Assignee: Jun Rao
>             Fix For: 0.5
>
>         Attachments: issue565.patchev1
>
>
> BufferedRandomAccessFile.read may read fewer bytes than required, even when EOF is not reached. This breaks commit log recovery, which assumes that when a read returns less than required, the EOF is reached.

-- 
This message is automatically generated by JIRA.
-
You can reply to this email to add a comment to the issue online.


[jira] Closed: (CASSANDRA-565) BufferedRandomAccessFile.read doesn't always do full reads

Posted by "Jun Rao (JIRA)" <ji...@apache.org>.
     [ https://issues.apache.org/jira/browse/CASSANDRA-565?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]

Jun Rao closed CASSANDRA-565.
-----------------------------


> BufferedRandomAccessFile.read doesn't always do full reads
> ----------------------------------------------------------
>
>                 Key: CASSANDRA-565
>                 URL: https://issues.apache.org/jira/browse/CASSANDRA-565
>             Project: Cassandra
>          Issue Type: Bug
>          Components: Core
>            Reporter: Jun Rao
>            Assignee: Jun Rao
>             Fix For: 0.5
>
>         Attachments: issue565.patchev1, issue565.patchev2
>
>
> BufferedRandomAccessFile.read may read fewer bytes than required, even when EOF is not reached. This breaks commit log recovery, which assumes that when a read returns less than required, the EOF is reached.

-- 
This message is automatically generated by JIRA.
-
You can reply to this email to add a comment to the issue online.


[jira] Commented: (CASSANDRA-565) BufferedRandomAccessFile.read doesn't always do full reads

Posted by "Jonathan Ellis (JIRA)" <ji...@apache.org>.
    [ https://issues.apache.org/jira/browse/CASSANDRA-565?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=12780298#action_12780298 ] 

Jonathan Ellis commented on CASSANDRA-565:
------------------------------------------

+1

> BufferedRandomAccessFile.read doesn't always do full reads
> ----------------------------------------------------------
>
>                 Key: CASSANDRA-565
>                 URL: https://issues.apache.org/jira/browse/CASSANDRA-565
>             Project: Cassandra
>          Issue Type: Bug
>          Components: Core
>            Reporter: Jun Rao
>            Assignee: Jun Rao
>             Fix For: 0.5
>
>         Attachments: issue565.patchev1, issue565.patchev2
>
>
> BufferedRandomAccessFile.read may read fewer bytes than required, even when EOF is not reached. This breaks commit log recovery, which assumes that when a read returns less than required, the EOF is reached.

-- 
This message is automatically generated by JIRA.
-
You can reply to this email to add a comment to the issue online.


[jira] Commented: (CASSANDRA-565) BufferedRandomAccessFile.read doesn't always do full reads

Posted by "Jonathan Ellis (JIRA)" <ji...@apache.org>.
    [ https://issues.apache.org/jira/browse/CASSANDRA-565?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=12780272#action_12780272 ] 

Jonathan Ellis commented on CASSANDRA-565:
------------------------------------------

Can you add a test illustrating the bug?

> BufferedRandomAccessFile.read doesn't always do full reads
> ----------------------------------------------------------
>
>                 Key: CASSANDRA-565
>                 URL: https://issues.apache.org/jira/browse/CASSANDRA-565
>             Project: Cassandra
>          Issue Type: Bug
>          Components: Core
>            Reporter: Jun Rao
>            Assignee: Jun Rao
>             Fix For: 0.5
>
>         Attachments: issue565.patchev1
>
>
> BufferedRandomAccessFile.read may read fewer bytes than required, even when EOF is not reached. This breaks commit log recovery, which assumes that when a read returns less than required, the EOF is reached.

-- 
This message is automatically generated by JIRA.
-
You can reply to this email to add a comment to the issue online.


[jira] Updated: (CASSANDRA-565) BufferedRandomAccessFile.read doesn't always do full reads

Posted by "Jun Rao (JIRA)" <ji...@apache.org>.
     [ https://issues.apache.org/jira/browse/CASSANDRA-565?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]

Jun Rao updated CASSANDRA-565:
------------------------------

    Attachment: issue565.patchev1

Attach a patch.

> BufferedRandomAccessFile.read doesn't always do full reads
> ----------------------------------------------------------
>
>                 Key: CASSANDRA-565
>                 URL: https://issues.apache.org/jira/browse/CASSANDRA-565
>             Project: Cassandra
>          Issue Type: Bug
>          Components: Core
>            Reporter: Jun Rao
>            Assignee: Jun Rao
>             Fix For: 0.5
>
>         Attachments: issue565.patchev1
>
>
> BufferedRandomAccessFile.read may read fewer bytes than required, even when EOF is not reached. This breaks commit log recovery, which assumes that when a read returns less than required, the EOF is reached.

-- 
This message is automatically generated by JIRA.
-
You can reply to this email to add a comment to the issue online.