thrift-dev mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From "Jonathan Ellis (JIRA)" <>
Subject [jira] Commented: (THRIFT-831) FramedTransport implementation that reuses its buffers
Date Mon, 02 Aug 2010 17:43:17 GMT


Jonathan Ellis commented on THRIFT-831:

The Cassandra unit tests run with "ant test," the system tests with "nosetests".  (details
on installing nose etc. at

> FramedTransport implementation that reuses its buffers
> ------------------------------------------------------
>                 Key: THRIFT-831
>                 URL:
>             Project: Thrift
>          Issue Type: New Feature
>          Components: Library (Java)
>            Reporter: Bryan Duxbury
>            Assignee: Bryan Duxbury
>             Fix For: 0.4
>         Attachments: thrift-831.patch
> The current version of TFramedTransport allocates new read and write buffers every time
a frame is read or written. This is wasteful, leading to expensive byte[] allocations, soaking
up cpu and GC time unnecessarily. 
> It would be handy to have an implementation that automatically reuses existing buffers
if they're big enough, and grows them as appropriate. My testing shows this to be as much
as a 60% reduction in CPU cost in dealing with the transport.
> I think it's important for us to keep separate implementations available, since different
applications might prefer to spend the CPU time to avoid having a big chunk of memory permanently

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

View raw message