[
https://issues.apache.org/jira/browse/CASSANDRA-14618?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
]
Marcus Eriksson updated CASSANDRA-14618:
----------------------------------------
Status: Patch Available (was: Open)
https://github.com/krummas/cassandra/commits/marcuse/14618 (on top of
CASSANDRA-14656)
example run;
{code}
$ ccm create -n3 fql
$ ccm start
$ for x in 1 2 3; do ccm node$x nodetool "enablefullquerylog --path
/tmp/fql3/node$x"; done
$ tools/bin/cassandra-stress write n=100k -rate threads=64 -schema
replication\(factor=3\)
$ for x in 1 2 3; do ccm node$x nodetool disablefullquerylog; done
$ ccm remove
## start separate cassandra clusters on 127.0.0.1 and 192.168.1.51
$ bin/fqltool replay --target 127.0.0.1 --target 192.168.1.51 --results
/tmp/results /tmp/fql2/node1 /tmp/fql2/node2 /tmp/fql2/node3
... output
{code}
Example mismatch:
{code}
MISMATCH:
Query = Query = SELECT schema_version FROM system.local WHERE key='local',
Options =
QueryOptions.DefaultQueryOptions[consistency=ONE,values=[],skipMetadata=false,options=org.apache.cassandra.cql3.QueryOptions$SpecificOptions@48b696e1,jsonValuesCache=<null>],
Values =
Results:
127.0.0.1: schema_version:uuid:cbfc4bb5a9b33706a22f6aebfd6f8737,
192.168.1.51: schema_version:uuid:7fca82ddb86f396380ba6ab0f318a293,
{code}
there are a few todos I want to do in followup tickets;
* make it replay queries at the same (relative) pace as the timestamps recorded
* make replay multi threaded but avoid executing queries against a partition
that has an ongoing query.
* add a {{fqltool split <n> <logfiles>...}} command which takes a set of log
files and splits them in to n buckets, with each token only appearing in a
single bucket to be able to replay these n buckets in parallel.
> Create fqltool replay command
> -----------------------------
>
> Key: CASSANDRA-14618
> URL: https://issues.apache.org/jira/browse/CASSANDRA-14618
> Project: Cassandra
> Issue Type: New Feature
> Reporter: Marcus Eriksson
> Assignee: Marcus Eriksson
> Priority: Major
> Labels: fqltool
> Fix For: 4.x
>
>
> Make it possible to replay the full query logs from CASSANDRA-13983 against
> one or several clusters. The goal is to be able to compare different runs of
> production traffic against different versions/configurations of Cassandra.
> * It should be possible to take logs from several machines and replay them in
> "order" by the timestamps recorded
> * Record the results from each run to be able to compare different runs
> (against different clusters/versions/etc)
> * If {{fqltool replay}} is run against 2 or more clusters, the results should
> be compared as we go
--
This message was sent by Atlassian JIRA
(v7.6.3#76005)
---------------------------------------------------------------------
To unsubscribe, e-mail: [email protected]
For additional commands, e-mail: [email protected]