[ 
https://issues.apache.org/jira/browse/CASSANDRA-3091?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=13092853#comment-13092853
 ] 

Jonathan Ellis commented on CASSANDRA-3091:
-------------------------------------------

I feel like the cure might be worse than the disease here.  Schema typically 
only changes "underneath" a connection during development -- if you're changing 
schema in production, you're going to redeploy your app to take advantage of 
that, creating new connections.  So the benefit feels small vs the cost of 
re-requesting and parsing metadata for each Statement.

> Move the caching of KS and CF metadata in the JDBC suite from Connection to 
> Statement
> -------------------------------------------------------------------------------------
>
>                 Key: CASSANDRA-3091
>                 URL: https://issues.apache.org/jira/browse/CASSANDRA-3091
>             Project: Cassandra
>          Issue Type: Improvement
>          Components: Drivers
>    Affects Versions: 0.8.4
>            Reporter: Rick Shaw
>            Assignee: Rick Shaw
>            Priority: Minor
>              Labels: JDBC
>             Fix For: 0.8.5
>
>         Attachments: move-metadata-for decoder-to-statement-level-v1.txt, 
> move-metadata-for-decoder-to-statement-level-v2.txt
>
>
> Currently, all caching of metadata used in JDBC's {{ColumnDecoder}} class is 
> loaded and held in the {{CassandraConnection}} class. The implication of this 
> is that any activity on the connected server from the time the connection is 
> established is not reflected in the KSs and CF that can be accessed by the 
> {{ResultSet, Statement}} and {{PreparedStatement}}.
> By moving the cached metadata to the {{Statement}} level, the currency of the 
> metadata can be checked within the {{Statement}} and reloaded if it is seen 
> to be absent. And by instantiating a new {{Statement}} (on any existing 
> connection) you are assured of getting the most current copy of the metadata 
> known to the server at the new time of instantiation.

--
This message is automatically generated by JIRA.
For more information on JIRA, see: http://www.atlassian.com/software/jira

        

Reply via email to