cassandra-commits mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From "Benedict (JIRA)" <j...@apache.org>
Subject [jira] [Comment Edited] (CASSANDRA-9240) Performance issue after a restart
Date Mon, 04 May 2015 14:16:08 GMT

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

Benedict edited comment on CASSANDRA-9240 at 5/4/15 2:15 PM:
-------------------------------------------------------------

bq. Benedict you have a bug in the CRAR constructor. allocateBuffer() is being called before
segments are mapped so it is always creating an on heap buffer.

Good catch. I was planning on removing the constraint to only use direct when using mmapped
files in a follow up commit. Any opposition to doing that here (since it also fixes that)?

bq. Minor nit in your Cleanup method. For multiple levels of conditionals and loops please
add {}

I think we should clarify our code style policy on this, since I do this kind of thing a lot,
certainly at the very least for multi-nested loops or conditionals, and for conditionals inside
of loops, but a loop nested inside a conditional is its own unique case. Would be good to
have an official policy. Could you and the other PMCs (or whoever decides this stuff) come
up with an official position on when we can and cannot omit braces?

bq. Finally, I know CASSANDRA-8897 is going to remove pooling, but how will we avoid the cost
of un-mapping the files if we don't pool?

This patch has already avoided the cost of un-mapping the files, whether or not pooling is
used


was (Author: benedict):
bq. Benedict you have a bug in the CRAR constructor. allocateBuffer() is being called before
segments are mapped so it is always creating an on heap buffer.

Good catch. I was planning on removing the constraint to only use direct when using mmapped
files in a follow up commit. Any opposition to doing that here (since it also fixes that)?

bq. Minor nit in your Cleanup method. For multiple levels of conditionals and loops please
add {}

I think we should clarify our code style policy on this, since I do this kind of thing a lot,
certainly at the very least for multi-nested loops or conditionals, and for conditionals inside
of loops, but a loop nested inside a conditional is its own unique case. Would be good to
have an official policy. Could you and the other PMCs (or whoever decides this stuff) come
up with an official position on when we can and cannot omit braces?


> Performance issue after a restart
> ---------------------------------
>
>                 Key: CASSANDRA-9240
>                 URL: https://issues.apache.org/jira/browse/CASSANDRA-9240
>             Project: Cassandra
>          Issue Type: Bug
>            Reporter: Alan Boudreault
>            Assignee: Benedict
>            Priority: Minor
>             Fix For: 3.x
>
>         Attachments: Cassandra.snapshots.zip, cassandra_2.1.4-clientrequest-read.log,
cassandra_2.1.4.log, cassandra_2.1.5-clientrequest-read.log, cassandra_2.1.5.log, cassandra_trunk-clientrequest-read.log,
cassandra_trunk.log, cassandra_trunk_no_restart-clientrequest-read.log, cassandra_trunk_no_restart.log,
issue.yaml, run_issue.sh, runs.log, trace_query.cql
>
>
> I have noticed a performance issue while I was working on compaction perf tests for CASSANDRA-7409.
The performance for my use case is very bad after a restart. It is mostly a read performance
issue but not strictly. I have attached my use case (see run_issue.sh and issue.yaml) and
all test logs for 2.1.4, 2.1.5 and trunk:
> * 2.1.* are OK (although 2.1.4 seems to be better than 2.1.5?): ~6-7k ops/second and
~2-2.5k of read latency.  
> * trunk is NOT OK: ~1.5-2k ops/second and 25-30k of read latency.
> * trunk is OK without a restart: ~ same perf than 2.1.4 and 2.1.5.
> EDIT: branch cassandra-2.1 is OK.
> I can help to bisect and/or profile on Monday if needed.



--
This message was sent by Atlassian JIRA
(v6.3.4#6332)

Mime
View raw message