You are viewing a plain text version of this content. The canonical link for it is here.
Posted to issues@trafodion.apache.org by "Roberta Marton (JIRA)" <ji...@apache.org> on 2016/10/19 18:03:58 UTC
[jira] [Created] (TRAFODION-2297) Handle DDL and security
invalidation keys expiration in RMS cache better
Roberta Marton created TRAFODION-2297:
-----------------------------------------
Summary: Handle DDL and security invalidation keys expiration in RMS cache better
Key: TRAFODION-2297
URL: https://issues.apache.org/jira/browse/TRAFODION-2297
Project: Apache Trafodion
Issue Type: Bug
Components: sql-cmp, sql-exe
Reporter: Roberta Marton
When DDL or security (privilege) changes are performed, invalidation keys are sent to RMS and added to shared memory. The next time a query is executed, any invalidation keys that have been added to shared memory since the last operation are evaluated. Invalidation keys are only removed after a certain time interval which can be controlled by an environment variable. So, if an invalidation key is stored in shared memory and SQL does not process it soon enough, the change is not reflected correctly. This could cause problems running SQL queries or someone could have privileges to an object that have been revoked. It also shows inconsistency since some requests work (mxosvr has processed keys) and some fail (mxosvr did not process keys - keys removed before it could process them).
When invalidation keys were added to histogram cache, it checked to see if enough time had past so invalidation keys were removed. If so, the histogram cache would be refreshed.
DDL and security invalidation keys need to have a similar behavior. That is, how to handle potential missed changes if keys have been removed from shared memory before mxosvr could process them.
--
This message was sent by Atlassian JIRA
(v6.3.4#6332)