You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@cassandra.apache.org by "Nate McCall (JIRA)" <ji...@apache.org> on 2010/07/27 08:13:16 UTC

[jira] Created: (CASSANDRA-1324) Update thrift API to support ByteBuffer based allocation

Update thrift API to support ByteBuffer based allocation 
---------------------------------------------------------

                 Key: CASSANDRA-1324
                 URL: https://issues.apache.org/jira/browse/CASSANDRA-1324
             Project: Cassandra
          Issue Type: Improvement
          Components: Core
            Reporter: Nate McCall
            Assignee: Nate McCall


THRIFT-830 has a patch that uses ByteBuffer instead of byte[] internally. The use of ByteBuffer could save substantial overhead if we converted everything over to match.

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


[jira] Commented: (CASSANDRA-1324) Update thrift API to support ByteBuffer based allocation

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

Nate McCall commented on CASSANDRA-1324:
----------------------------------------

Sounds good. I'll roll another patch this evening after I trace through those errors.

> Update thrift API to support ByteBuffer based allocation 
> ---------------------------------------------------------
>
>                 Key: CASSANDRA-1324
>                 URL: https://issues.apache.org/jira/browse/CASSANDRA-1324
>             Project: Cassandra
>          Issue Type: Improvement
>          Components: Core
>            Reporter: Nate McCall
>            Assignee: Nate McCall
>             Fix For: 0.7.0
>
>         Attachments: 1324-trunk.patch
>
>
> THRIFT-830 has a patch that uses ByteBuffer instead of byte[] internally. The use of ByteBuffer could save substantial overhead if we converted everything over to match.

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


[jira] Commented: (CASSANDRA-1324) Update thrift API to support ByteBuffer based allocation

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

Chris Goffinet commented on CASSANDRA-1324:
-------------------------------------------

Nate any update on this?

> Update thrift API to support ByteBuffer based allocation 
> ---------------------------------------------------------
>
>                 Key: CASSANDRA-1324
>                 URL: https://issues.apache.org/jira/browse/CASSANDRA-1324
>             Project: Cassandra
>          Issue Type: Improvement
>          Components: Core
>            Reporter: Nate McCall
>             Fix For: 0.7.0
>
>         Attachments: 1324-trunk.patch
>
>
> THRIFT-830 has a patch that uses ByteBuffer instead of byte[] internally. The use of ByteBuffer could save substantial overhead if we converted everything over to match.

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


[jira] Resolved: (CASSANDRA-1324) Update thrift API to support ByteBuffer based allocation

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

Jonathan Ellis resolved CASSANDRA-1324.
---------------------------------------

      Assignee:     (was: Nate McCall)
    Resolution: Duplicate

redundant wrt CASSANDRA-1367

> Update thrift API to support ByteBuffer based allocation 
> ---------------------------------------------------------
>
>                 Key: CASSANDRA-1324
>                 URL: https://issues.apache.org/jira/browse/CASSANDRA-1324
>             Project: Cassandra
>          Issue Type: Improvement
>          Components: Core
>            Reporter: Nate McCall
>             Fix For: 0.7.0
>
>         Attachments: 1324-trunk.patch
>
>
> THRIFT-830 has a patch that uses ByteBuffer instead of byte[] internally. The use of ByteBuffer could save substantial overhead if we converted everything over to match.

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


[jira] Updated: (CASSANDRA-1324) Update thrift API to support ByteBuffer based allocation

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

Jonathan Ellis updated CASSANDRA-1324:
--------------------------------------

    Fix Version/s: 0.7.0
                       (was: 0.7 beta 2)

If we can't do the full ByteBuffer-based change for 0.7, then let's just stick with Thrift 0.3.

> Update thrift API to support ByteBuffer based allocation 
> ---------------------------------------------------------
>
>                 Key: CASSANDRA-1324
>                 URL: https://issues.apache.org/jira/browse/CASSANDRA-1324
>             Project: Cassandra
>          Issue Type: Improvement
>          Components: Core
>            Reporter: Nate McCall
>            Assignee: Nate McCall
>             Fix For: 0.7.0
>
>         Attachments: 1324-trunk.patch
>
>
> THRIFT-830 has a patch that uses ByteBuffer instead of byte[] internally. The use of ByteBuffer could save substantial overhead if we converted everything over to match.

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


[jira] Updated: (CASSANDRA-1324) Update thrift API to support ByteBuffer based allocation

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

Jonathan Ellis updated CASSANDRA-1324:
--------------------------------------

    Fix Version/s: 0.7.0

let's keep this ticket to 1. and create one for 0.7.1 for 2.

> Update thrift API to support ByteBuffer based allocation 
> ---------------------------------------------------------
>
>                 Key: CASSANDRA-1324
>                 URL: https://issues.apache.org/jira/browse/CASSANDRA-1324
>             Project: Cassandra
>          Issue Type: Improvement
>          Components: Core
>            Reporter: Nate McCall
>            Assignee: Nate McCall
>             Fix For: 0.7.0
>
>         Attachments: 1324-trunk.patch
>
>
> THRIFT-830 has a patch that uses ByteBuffer instead of byte[] internally. The use of ByteBuffer could save substantial overhead if we converted everything over to match.

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


[jira] Commented: (CASSANDRA-1324) Update thrift API to support ByteBuffer based allocation

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

Nate McCall commented on CASSANDRA-1324:
----------------------------------------

Ok, got inserts working. Per #1 above, we will have some overhead converting BB out to byte arrays to pass through the internals, but that is a decent tradeoff to not introduce too trauma throughout the API as we try to prep 0.7 to go out. 

I'll trickle these changes through and should have something available over the weekend as I have to go focus on the day job for a bit. 

> Update thrift API to support ByteBuffer based allocation 
> ---------------------------------------------------------
>
>                 Key: CASSANDRA-1324
>                 URL: https://issues.apache.org/jira/browse/CASSANDRA-1324
>             Project: Cassandra
>          Issue Type: Improvement
>          Components: Core
>            Reporter: Nate McCall
>            Assignee: Nate McCall
>             Fix For: 0.7.0
>
>         Attachments: 1324-trunk.patch
>
>
> THRIFT-830 has a patch that uses ByteBuffer instead of byte[] internally. The use of ByteBuffer could save substantial overhead if we converted everything over to match.

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


[jira] Updated: (CASSANDRA-1324) Update thrift API to support ByteBuffer based allocation

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

Nate McCall updated CASSANDRA-1324:
-----------------------------------

    Attachment: 1324-trunk.patch

First pass, getting intermittent thrift error:
"TApplicationException: Internal error processing insert"

I'll trace this through later. This patch shows more the changes needed to "get things working" with ByteBuffer.

In the long term, I would see two phases here: 
1. like the above, with minimal changes to classes not directly dealing with the thrift structs
2. putting through the rest of the changes for using ByteBuffer internally in our own APIs where useful

> Update thrift API to support ByteBuffer based allocation 
> ---------------------------------------------------------
>
>                 Key: CASSANDRA-1324
>                 URL: https://issues.apache.org/jira/browse/CASSANDRA-1324
>             Project: Cassandra
>          Issue Type: Improvement
>          Components: Core
>            Reporter: Nate McCall
>            Assignee: Nate McCall
>         Attachments: 1324-trunk.patch
>
>
> THRIFT-830 has a patch that uses ByteBuffer instead of byte[] internally. The use of ByteBuffer could save substantial overhead if we converted everything over to match.

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


[jira] Commented: (CASSANDRA-1324) Update thrift API to support ByteBuffer based allocation

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

Nate McCall commented on CASSANDRA-1324:
----------------------------------------

See my comment on THRIFT-830 for details, but looks like there is a pretty hairy message parsing bug. 

> Update thrift API to support ByteBuffer based allocation 
> ---------------------------------------------------------
>
>                 Key: CASSANDRA-1324
>                 URL: https://issues.apache.org/jira/browse/CASSANDRA-1324
>             Project: Cassandra
>          Issue Type: Improvement
>          Components: Core
>            Reporter: Nate McCall
>            Assignee: Nate McCall
>             Fix For: 0.7.0
>
>         Attachments: 1324-trunk.patch
>
>
> THRIFT-830 has a patch that uses ByteBuffer instead of byte[] internally. The use of ByteBuffer could save substantial overhead if we converted everything over to match.

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


[jira] Commented: (CASSANDRA-1324) Update thrift API to support ByteBuffer based allocation

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

Nate McCall commented on CASSANDRA-1324:
----------------------------------------

Chris,
This got marked as a dupe of CASSANDRA-1367 which I have not looked at yet. Fwiw, I think the above patch still gives a good idea for the number of things that have to be touched to move to ByteBuffer internally. 

> Update thrift API to support ByteBuffer based allocation 
> ---------------------------------------------------------
>
>                 Key: CASSANDRA-1324
>                 URL: https://issues.apache.org/jira/browse/CASSANDRA-1324
>             Project: Cassandra
>          Issue Type: Improvement
>          Components: Core
>            Reporter: Nate McCall
>             Fix For: 0.7.0
>
>         Attachments: 1324-trunk.patch
>
>
> THRIFT-830 has a patch that uses ByteBuffer instead of byte[] internally. The use of ByteBuffer could save substantial overhead if we converted everything over to match.

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


[jira] Issue Comment Edited: (CASSANDRA-1324) Update thrift API to support ByteBuffer based allocation

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

Nate McCall edited comment on CASSANDRA-1324 at 7/27/10 12:59 PM:
------------------------------------------------------------------

Sounds good. I'll roll another patch this evening after I trace through those errors. EDIT: added CASSANDRA-1325 for #2 above

      was (Author: zznate):
    Sounds good. I'll roll another patch this evening after I trace through those errors.
  
> Update thrift API to support ByteBuffer based allocation 
> ---------------------------------------------------------
>
>                 Key: CASSANDRA-1324
>                 URL: https://issues.apache.org/jira/browse/CASSANDRA-1324
>             Project: Cassandra
>          Issue Type: Improvement
>          Components: Core
>            Reporter: Nate McCall
>            Assignee: Nate McCall
>             Fix For: 0.7.0
>
>         Attachments: 1324-trunk.patch
>
>
> THRIFT-830 has a patch that uses ByteBuffer instead of byte[] internally. The use of ByteBuffer could save substantial overhead if we converted everything over to match.

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