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

Oleg Anastasyev commented on CASSANDRA-6079:
--------------------------------------------

Well, I did some quick test. As i suspected there is no measurable performance 
impact on this.

3 node cluster, RF=3, separated client, writing batches of 3 inserts each to 3 
different CFs. 8 core (not so) recent iron servers.
(no batches were replayed actually, so this pure common case). 

I measured this for 1 hour run in both cases.

Here is performance  WITH wait on get():
avg 3052 batches/sec, st deviance 131

WITHOUT waiting in get()
avg 3030 per sec, deviance 106


                
> Memtables flush is delayed when having a lot of batchlog activity, making 
> node OOM
> ----------------------------------------------------------------------------------
>
>                 Key: CASSANDRA-6079
>                 URL: https://issues.apache.org/jira/browse/CASSANDRA-6079
>             Project: Cassandra
>          Issue Type: Bug
>            Reporter: Oleg Anastasyev
>            Assignee: Oleg Anastasyev
>            Priority: Minor
>             Fix For: 1.2.11, 2.0.2
>
>         Attachments: NoWaitBatchlogCompaction.diff
>
>
> Both MeteredFlusher and BatchlogManager share the same OptionalTasks thread. 
> So, when batchlog manager processes its tasks no flushes can occur. Even 
> more, batchlog manager waits for batchlog CF compaction to finish.
> On a lot of batchlog activity this prevents memtables from flush for a long 
> time, making the node OOM.
> Fixed this by moving batchlog to its own thread and not waiting for batchlog 
> compaction to finish.

--
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

Reply via email to