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

Benedict commented on CASSANDRA-9240:
-------------------------------------

CompressedPoolingSegmentedFile != CompressedSegmentedFile

Doh.

But it's interesting, and has demonstrated some unexpected behaviour, since 
this seems to suggest there could be serious (atypical) performance degradation 
from an insufficiently sized cache. It _seems_ from the profile that we're 
incurring costs on reading from the buffer more than anywhere else. Which seems 
to suggest it may result in the OS actually dropping the pages from its cache. 
At the very least some cost incurred after remapping is high, in which case 
calling the cleaner isn't probably a good idea. 

It seems like the safest thing is to introduce a specialized SegmentedFile for 
mmapped compressed files, that retains all of the mapped sections to pass into 
the CompressedRandomAccessReader on construction, so that these costs are 
guaranteed only ever to occur once per sstable, and not once per reader. This 
is possible thanks to the recent work of [~stefania_alborghetti], and I think 
we should exploit it here to ensure this isn't a problem even after my boo-boo 
is fixed.

> 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: T Jake Luciani
>            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)

Reply via email to