cgivre commented on code in PR #2929:
URL: https://github.com/apache/drill/pull/2929#discussion_r1800399800


##########
contrib/storage-splunk/src/main/java/org/apache/drill/exec/store/splunk/SplunkSchema.java:
##########
@@ -148,8 +183,24 @@ private void registerIndexes() {
     registerTable(SPL_TABLE_NAME, new DynamicDrillTable(plugin, 
plugin.getName(),
       new SplunkScanSpec(plugin.getName(), SPL_TABLE_NAME, plugin.getConfig(), 
queryUserName)));
 
+    Set<String> indexList = null;
     // Retrieve and add all other Splunk indexes
-    for (String indexName : connection.getIndexes().keySet()) {
+    // First check the cache to see if we have a list of indexes.
+    String nameKey = getNameForCache();
+    if (useCache) {
+      indexList = cache.getIfPresent(nameKey);
+    }

Review Comment:
   @jnturton , 
   I'm sorry, I misspoke.   The way I intended the cache to work was that we 
combine the plugin name + user name to create a key, and the value is a list of 
indexes.   Every time a user adds or drops an index, we have to recreate the 
cache entry for that plugin/username.
   
   So:
   ```
   splunk1-cgivre: [index1, index2, index2]
   splunk2-cgivre: [index5, index6, index7]
   splunk1-jnturton: [index1, index2]
   ```
   
   That's what the cache should look like.  (In theory)



-- 
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.

To unsubscribe, e-mail: dev-unsubscr...@drill.apache.org

For queries about this service, please contact Infrastructure at:
us...@infra.apache.org

Reply via email to