Yasuharu Goto created CASSANDRA-11425:
-----------------------------------------

             Summary: Add prepared statement on Execute prepared query session 
trace.
                 Key: CASSANDRA-11425
                 URL: https://issues.apache.org/jira/browse/CASSANDRA-11425
             Project: Cassandra
          Issue Type: Improvement
          Components: CQL
            Reporter: Yasuharu Goto
            Assignee: Yasuharu Goto
            Priority: Minor


For now, the system_traces.sessions rows for "Execute CQL3 prepared query" do 
not show us any information about the prepared query which is executed on the 
session. So we can't see what query is the session executing.
I think this makes performance tuning difficult on Cassandra.

So, In this ticket, I'd like to add the prepared query parameter on Execute 
session trace like this.

{noformat}
cqlsh:system_traces> select * from sessions ;

 session_id                           | client    | command | coordinator | 
duration | parameters                                                           
                                                                                
| request                     | started_at
--------------------------------------+-----------+---------+-------------+----------+------------------------------------------------------------------------------------------------------------------------------------------------------+-----------------------------+---------------------------------
 a001ec00-f1c5-11e5-b14a-6fe1292cf9f1 | 127.0.0.1 |   QUERY |   127.0.0.1 |     
 666 |      {'consistency_level': 'ONE', 'page_size': '5000', 'query': 'SELECT 
* FROM test.test2 WHERE id=? LIMIT 1', 'serial_consistency_level': 'SERIAL'} | 
Execute CQL3 prepared query | 2016-03-24 13:38:00.000000+0000
 a0019de0-f1c5-11e5-b14a-6fe1292cf9f1 | 127.0.0.1 |   QUERY |   127.0.0.1 |     
 109 |                                                                          
                   {'query': 'SELECT * FROM test.test2 WHERE id=? LIMIT 1'} |   
     Preparing CQL3 query | 2016-03-24 13:37:59.998000+0000
 a0014fc0-f1c5-11e5-b14a-6fe1292cf9f1 | 127.0.0.1 |   QUERY |   127.0.0.1 |     
 126 |                                                                          
                 {'query': 'INSERT INTO test.test2(id,value) VALUES (?,?)'} |   
     Preparing CQL3 query | 2016-03-24 13:37:59.996000+0000
 a0019de1-f1c5-11e5-b14a-6fe1292cf9f1 | 127.0.0.1 |   QUERY |   127.0.0.1 |     
 764 |      {'consistency_level': 'ONE', 'page_size': '5000', 'query': 'SELECT 
* FROM test.test2 WHERE id=? LIMIT 1', 'serial_consistency_level': 'SERIAL'} | 
Execute CQL3 prepared query | 2016-03-24 13:37:59.998000+0000
 a00176d0-f1c5-11e5-b14a-6fe1292cf9f1 | 127.0.0.1 |   QUERY |   127.0.0.1 |     
 857 | {'consistency_level': 'QUORUM', 'page_size': '5000', 'query': 'INSERT 
INTO test.test2(id,value) VALUES (?,?)', 'serial_consistency_level': 'SERIAL'} 
| Execute CQL3 prepared query | 2016-03-24 13:37:59.997000+0000
{noformat}

Now, "Execute CQL3 prepared query" session displays its query.
I believe that this additional information would help operators a lot.



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

Reply via email to