[ https://issues.apache.org/jira/browse/CASSANDRA-6572?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=13903514#comment-13903514 ]
Lyuben Todorov commented on CASSANDRA-6572: ------------------------------------------- Just an update with progress so far, [branch here|https://github.com/lyubent/cassandra/tree/query_rec]. Currently query recording is enabled using JMX via StorageService#enableQueryRecording. This will record every nth query and append it to the QueryLog. Currently the log is piggybacking on the commit_log directory but the long-term plan is to either add a setting to cassandra.yaml or modify {{enableQueryRecording}} to take another param that will be the directory for the log. Queries are stored in an append only log as suggested, once the log reaches 4MB (this should also be configurable, I'm thinking set a default and add a JMX function that can overload said default). Once the limit is reached, the log is renamed (a timestamp is added to the name) and a new log is created that will now store the new appends. As for the replaying, its still fairly basic, currently the entire query log file is read in a single operation (smarter approaches than storing a large collection of query strings are welcome), then the collection of queries is replayed sequentially. If there is too large a gap between queries, a timeout takes effect to avoid stalling the replay (again this should be configurable, currently the timeout is 10s). Replaying of the workload is invoked via JMX right now, but *workload replayer* tool will be in charge of handling the replaying, and also what cluster the logs get replayed to. > Workload recording / playback > ----------------------------- > > Key: CASSANDRA-6572 > URL: https://issues.apache.org/jira/browse/CASSANDRA-6572 > Project: Cassandra > Issue Type: New Feature > Components: Core, Tools > Reporter: Jonathan Ellis > Assignee: Lyuben Todorov > Fix For: 2.0.6 > > > "Write sample mode" gets us part way to testing new versions against a real > world workload, but we need an easy way to test the query side as well. -- This message was sent by Atlassian JIRA (v6.1.5#6160)