You are viewing a plain text version of this content. The canonical link for it is here.
Posted to dev@flume.apache.org by "Roshan Naik (JIRA)" <ji...@apache.org> on 2013/09/27 00:24:06 UTC

[jira] [Comment Edited] (FLUME-2197) Memory Channel has GC issues

    [ https://issues.apache.org/jira/browse/FLUME-2197?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=13779313#comment-13779313 ] 

Roshan Naik edited comment on FLUME-2197 at 9/26/13 10:23 PM:
--------------------------------------------------------------

in the case of linked lists... for every event inserted into the linked list, it needs one linked list node object. Each time an event is drained out of the channel, the node object goes to GC along with the event obj. Switching to arrays means those node objects are not needed. So one object less going to GC for each event. 

The bigger performance gain (over GC savings) seemed to was come about due to elimination of CPU time spent in newing up Linked lists node objects.
                
      was (Author: roshan_naik):
    in the case of linked lists... for every event inserted into the linked list, it needs one linked list node object. Each time an event is drained out of the channel, the node object goes to GC along with the event obj. Switching to arrays means those node objects are not needed. So one object less going to GC for each event. 

The bigger performance gain (over GC savings) seemed to was come about due to elimination of CPU time spent in Linked list's node's constructor.
                  
> Memory Channel has GC issues
> ----------------------------
>
>                 Key: FLUME-2197
>                 URL: https://issues.apache.org/jira/browse/FLUME-2197
>             Project: Flume
>          Issue Type: Bug
>            Reporter: Hari Shreedharan
>            Assignee: Roshan Naik
>
> Due to the fact that we use a LinkedBlockingDeque as the backing queue for the MemoryChannel, we end up hitting GC issues more often than we should.

--
This message is automatically generated by JIRA.
If you think it was sent incorrectly, please contact your JIRA administrators
For more information on JIRA, see: http://www.atlassian.com/software/jira