Jacek Furmankiewicz created CASSANDRA-7088:
----------------------------------------------
Summary: Massive performance degradation for TRUNCATE when
migrating to 2.0
Key: CASSANDRA-7088
URL: https://issues.apache.org/jira/browse/CASSANDRA-7088
Project: Cassandra
Issue Type: Bug
Components: Core
Environment: Linux Mint 16
Reporter: Jacek Furmankiewicz
Attachments: cassandra.yaml
We attempted to migrate our developers to Cassandra 2.0.7 from 1.2.
Everything worked perfectly, but we have experienced a massive drop in
developer velocity.
We run integration tests with Cucumber BDD and 1000 BDDs went from 7 minutes
(Cassandra 1.2) to 15 minutes (2.0.7),
This is when we run Cassandra of the ramdisk (/dev/shm) to make it run faster
on dev boxes.
When we tried pointed to actual drives the difference was dramatic: the entire
suite took over 70 minutes (!) vs 15 in Cassandra 1.2.
After investigation, we found that most of the time is spent in the truncation
logic between every scenario, where we truncate all the column families and
start with a clean DB for the next test case.
This used to be super fast in 1.2, is now very slow in 2.0.
It may not seem important, but upgrading to 2.0 has basically cut down
developer velocity by 100%, just by more than doubling the time it takes to run
our BDD suite.
We truncate the CFs using the Ruby driver:
$cassandra.column_families.each do |column_family|
name = column_family[0].to_s
$cassandra.truncate! name
end
I am attaching our cassandra.yaml. Please note we already switched off
auto_compaction before truncate, just as we did in 1.2 for dev boxes, Made no
difference.
--
This message was sent by Atlassian JIRA
(v6.2#6252)