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

Andy Tolbert updated CASSANDRA-10813:
-------------------------------------
    Description: 
I'm not sure how attainable this is, but it would be very convenient to know 
whether or not a statement that is prepared is idempotent.  If at all possible 
it would be nice to add a bit to flags that communicates this in a future 
protocol version.

This would be useful for client library implementors for making decisions based 
on whether or not a query is idempotent.  For example, if a connection fails 
while a request is in flight, you can't be sure whether or not a write mutation 
was applied or not.  If the write query was idempotent and client timestamps 
were used, you can feel comfortable simply retrying the request.  The datastax 
drivers have the capability of specifying whether or not a query is idempotent 
manually, but it would be nice if C* could tell us whether or not a query is 
idempotent at prepare time (if it all possible) instead of depending on the 
user to tell us.



  was:
I'm not sure how attainable this is, but it would be very convenient to know 
whether or not a statement that is prepared is idempotent.  If at all possible 
it would be nice to add a bit flags that communicates this in a future protocol 
version.

This would be useful for client library implementors for making decisions based 
on whether or not a query is idempotent.  For example, if a connection fails 
while a request is in flight, you can't be sure whether or not a write mutation 
was applied or not.  If the write query was idempotent and client timestamps 
were used, you can feel comfortable simply retrying the request.  The datastax 
drivers have the capability of specifying whether or not a query is idempotent 
manually, but it would be nice if C* could tell us whether or not a query is 
idempotent at prepare time (if it all possible) instead of depending on the 
user to tell us.




> Add 'idempotent' flag to 'PREPARED' response
> --------------------------------------------
>
>                 Key: CASSANDRA-10813
>                 URL: https://issues.apache.org/jira/browse/CASSANDRA-10813
>             Project: Cassandra
>          Issue Type: Improvement
>            Reporter: Andy Tolbert
>            Priority: Minor
>
> I'm not sure how attainable this is, but it would be very convenient to know 
> whether or not a statement that is prepared is idempotent.  If at all 
> possible it would be nice to add a bit to flags that communicates this in a 
> future protocol version.
> This would be useful for client library implementors for making decisions 
> based on whether or not a query is idempotent.  For example, if a connection 
> fails while a request is in flight, you can't be sure whether or not a write 
> mutation was applied or not.  If the write query was idempotent and client 
> timestamps were used, you can feel comfortable simply retrying the request.  
> The datastax drivers have the capability of specifying whether or not a query 
> is idempotent manually, but it would be nice if C* could tell us whether or 
> not a query is idempotent at prepare time (if it all possible) instead of 
> depending on the user to tell us.



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

Reply via email to