cassandra-commits mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From "Edward Ribeiro (JIRA)" <j...@apache.org>
Subject [jira] [Updated] (CASSANDRA-8693) QueryProcessor never removes internal statements from its cache
Date Tue, 27 Jan 2015 21:50:34 GMT

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

Edward Ribeiro updated CASSANDRA-8693:
--------------------------------------
    Description: 
QueryProcessor holds a reference to {{internalStatements}}, a map for prepared statements
used internally.

Those commands don't mix with the ones created by the user, but the problem is that if a KS/CF
is dropped and then recreated {{internalStatements}} entries will point to invalid PreparedStatements
(old cf_id) so any operation on those statements will fail thereafter. In fact, as of today,
this map is never actually cleaned, no matter what.

This problem is similar to the ones addressed by https://issues.apache.org/jira/browse/CASSANDRA-8652
and https://issues.apache.org/jira/browse/CASSANDRA-7566, so those issues provide any further
context. 

I am attaching a patch to this issue. 

  was:
QueryProcessor holds a reference to {{internalStatements}}, a map for prepared statements
used internally.

Those commands don't mix with the ones created by the user, but the problem is that if a KS/CF
is dropped and then recreated {{internalStatements}} entries will point to invalid PreparedStatements
(old cf_id) so any operation on those statements will fail therefore. In fact, as of today,
this map is never actually cleaned no matter what.

This problem is similar to the ones addressed by https://issues.apache.org/jira/browse/CASSANDRA-8652
and https://issues.apache.org/jira/browse/CASSANDRA-7566, so those issues provide any further
context. 

I am attaching a patch to this issue. 


> QueryProcessor never removes internal statements from its cache
> ---------------------------------------------------------------
>
>                 Key: CASSANDRA-8693
>                 URL: https://issues.apache.org/jira/browse/CASSANDRA-8693
>             Project: Cassandra
>          Issue Type: Bug
>          Components: Core
>            Reporter: Edward Ribeiro
>            Assignee: Edward Ribeiro
>              Labels: cql3
>             Fix For: 2.1.2
>
>         Attachments: qp-internal.patch
>
>
> QueryProcessor holds a reference to {{internalStatements}}, a map for prepared statements
used internally.
> Those commands don't mix with the ones created by the user, but the problem is that if
a KS/CF is dropped and then recreated {{internalStatements}} entries will point to invalid
PreparedStatements (old cf_id) so any operation on those statements will fail thereafter.
In fact, as of today, this map is never actually cleaned, no matter what.
> This problem is similar to the ones addressed by https://issues.apache.org/jira/browse/CASSANDRA-8652
and https://issues.apache.org/jira/browse/CASSANDRA-7566, so those issues provide any further
context. 
> I am attaching a patch to this issue. 



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

Mime
View raw message