[ 
https://issues.apache.org/jira/browse/CASSANDRA-4699?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
 ]

Sylvain Lebresne updated CASSANDRA-4699:
----------------------------------------

    Attachment: 0002-Add-tracing-to-protocol.txt
                0001-Separate-ClientState-and-QueryState.txt

Attaching 2 patches for this. The first one is not directly related to tracing 
but is preparatory. The thing is that tracing uses ClientState to store the 
tracing UUID if the next query must be traced. However, the binary protocol is 
asynchronous and you can have more than one query per connection at the same 
time. In other words, ClientState applies to the connection, but that's too 
coarse grained for the binary protocol. In fact, that's a problem even before 
tracing because ClientState.getTimestamp() is kind of broken for the binary 
protocol (in fact that getTimestamp() "bug" is probably the main reason for 
fixing this, tracing could do without this tbh). Anyway, that first patch 
splits ClientState into a ClientState per-connection and a QueryState per-query 
(again, same for thrift, not so for binary proto). This also allow keeping a 
few things that are thrift only (like the CQL2 prepared statements) out of the 
binary protocol path, which is a bonus.

The 2nd patch adds the tracing bits. I'll suggest putting that in 1.2 (rather 
than 1.2.1) because I'm not looking forward in breaking the protocol in the 
first minor release of 1.2.
                
> Add TRACE support to binary protocol
> ------------------------------------
>
>                 Key: CASSANDRA-4699
>                 URL: https://issues.apache.org/jira/browse/CASSANDRA-4699
>             Project: Cassandra
>          Issue Type: Sub-task
>          Components: API
>    Affects Versions: 1.2.0 beta 1
>            Reporter: Jonathan Ellis
>            Assignee: Sylvain Lebresne
>             Fix For: 1.2.0
>
>         Attachments: 0001-Separate-ClientState-and-QueryState.txt, 
> 0002-Add-tracing-to-protocol.txt
>
>


--
This message is automatically generated by JIRA.
If you think it was sent incorrectly, please contact your JIRA administrators
For more information on JIRA, see: http://www.atlassian.com/software/jira

Reply via email to