[
https://issues.apache.org/jira/browse/CASSANDRA-7378?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
]
Aleksey Yeschenko resolved CASSANDRA-7378.
------------------------------------------
Resolution: Won't Fix
Closing as Won't Fix, for now, for the stated reasons.
> Protocol: Autoprepare flag for QUERY and BATCH requests
> -------------------------------------------------------
>
> Key: CASSANDRA-7378
> URL: https://issues.apache.org/jira/browse/CASSANDRA-7378
> Project: Cassandra
> Issue Type: Improvement
> Components: API
> Reporter: Jorge Bay
> Priority: Minor
>
> Currently the flow for executing a prepared statement in the native protocol
> is:
> - PREPARE request
> - prepared response (queryid)
> - EXECUTE request (using queryid)
> - RESULT response
> - or UNPREPARED error response
> As is today, it is the responsibility of the driver or client to maintain the
> query id and to send a EXECUTE message using this query id and to expect for
> UNPREPARED error response in case the query got evicted or the node was
> restarted.
> With the following implications:
> - Before making a EXECUTE request, there is no way to know if it got evicted.
> - Before sending a PREPARE request, there is no way to know if that query has
> been already prepared on that host (by another connection), .
> - There isn't anything else the client can do with the prepared id (no much
> use from the client perspective).
> It would be nice to have a flag in the QUERY and BATCH requests that when
> set, the Cassandra node will prepare (if not already prepared) and execute
> the prepared query. This way we could save a few extra roundtrips and make
> the protocol flow for prepared statements a little more simple.
--
This message was sent by Atlassian JIRA
(v6.3.4#6332)