You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@cassandra.apache.org by br...@apache.org on 2014/01/16 22:12:15 UTC

[3/4] git commit: getValidColumnFamilies adds 2I if requested and no ks/cf specified Patch by brandonwilliams, reviewed by jbellis for CASSANDRA-6598

getValidColumnFamilies adds 2I if requested and no ks/cf specified
Patch by brandonwilliams, reviewed by jbellis for CASSANDRA-6598


Project: http://git-wip-us.apache.org/repos/asf/cassandra/repo
Commit: http://git-wip-us.apache.org/repos/asf/cassandra/commit/07f85b13
Tree: http://git-wip-us.apache.org/repos/asf/cassandra/tree/07f85b13
Diff: http://git-wip-us.apache.org/repos/asf/cassandra/diff/07f85b13

Branch: refs/heads/trunk
Commit: 07f85b139ffb2e40a32f06eb0942b5b614699e07
Parents: 83cd80b
Author: Brandon Williams <br...@apache.org>
Authored: Thu Jan 16 15:04:26 2014 -0600
Committer: Brandon Williams <br...@apache.org>
Committed: Thu Jan 16 15:07:36 2014 -0600

----------------------------------------------------------------------
 .../apache/cassandra/service/StorageService.java  | 18 ++++++++++++++++--
 1 file changed, 16 insertions(+), 2 deletions(-)
----------------------------------------------------------------------


http://git-wip-us.apache.org/repos/asf/cassandra/blob/07f85b13/src/java/org/apache/cassandra/service/StorageService.java
----------------------------------------------------------------------
diff --git a/src/java/org/apache/cassandra/service/StorageService.java b/src/java/org/apache/cassandra/service/StorageService.java
index 8470078..345d6c9 100644
--- a/src/java/org/apache/cassandra/service/StorageService.java
+++ b/src/java/org/apache/cassandra/service/StorageService.java
@@ -2259,13 +2259,27 @@ public class StorageService extends NotificationBroadcasterSupport implements IE
     public Iterable<ColumnFamilyStore> getValidColumnFamilies(boolean allowIndexes, boolean autoAddIndexes, String keyspaceName, String... cfNames) throws IOException
     {
         Keyspace keyspace = getValidKeyspace(keyspaceName);
+        Set<ColumnFamilyStore> valid = new HashSet<>();
 
         if (cfNames.length == 0)
+        {
             // all stores are interesting
-            return keyspace.getColumnFamilyStores();
+            for (ColumnFamilyStore cfStore : keyspace.getColumnFamilyStores())
+            {
+                valid.add(cfStore);
+                if (autoAddIndexes)
+                {
+                    for (SecondaryIndex si : cfStore.indexManager.getIndexes())
+                    {
+                        logger.info("adding secondary index {} to operation", si.getIndexName());
+                        valid.add(si.getIndexCfs());
+                    }
 
+                }
+            }
+            return valid;
+        }
         // filter out interesting stores
-        Set<ColumnFamilyStore> valid = new HashSet<ColumnFamilyStore>();
         for (String cfName : cfNames)
         {
             //if the CF name is an index, just flush the CF that owns the index