Repository: archiva
Updated Branches:
  refs/heads/master d54c2b547 -> 64187aa84


add an index for the projectVersionMetadataModel.key column


Project: http://git-wip-us.apache.org/repos/asf/archiva/repo
Commit: http://git-wip-us.apache.org/repos/asf/archiva/commit/64187aa8
Tree: http://git-wip-us.apache.org/repos/asf/archiva/tree/64187aa8
Diff: http://git-wip-us.apache.org/repos/asf/archiva/diff/64187aa8

Branch: refs/heads/master
Commit: 64187aa84a22b6721069500239c94a729f1b9add
Parents: d54c2b5
Author: Olivier Lamy <[email protected]>
Authored: Mon Apr 14 11:55:08 2014 +1000
Committer: Olivier Lamy <[email protected]>
Committed: Mon Apr 14 12:33:05 2014 +1000

----------------------------------------------------------------------
 .../cassandra/CassandraMetadataRepository.java  | 13 +++++++----
 .../DefaultCassandraArchivaManager.java         | 23 ++++++++++++++++++++
 2 files changed, 32 insertions(+), 4 deletions(-)
----------------------------------------------------------------------


http://git-wip-us.apache.org/repos/asf/archiva/blob/64187aa8/archiva-modules/plugins/metadata-store-cassandra/src/main/java/org/apache/archiva/metadata/repository/cassandra/CassandraMetadataRepository.java
----------------------------------------------------------------------
diff --git 
a/archiva-modules/plugins/metadata-store-cassandra/src/main/java/org/apache/archiva/metadata/repository/cassandra/CassandraMetadataRepository.java
 
b/archiva-modules/plugins/metadata-store-cassandra/src/main/java/org/apache/archiva/metadata/repository/cassandra/CassandraMetadataRepository.java
index 86513b3..ce28c48 100644
--- 
a/archiva-modules/plugins/metadata-store-cassandra/src/main/java/org/apache/archiva/metadata/repository/cassandra/CassandraMetadataRepository.java
+++ 
b/archiva-modules/plugins/metadata-store-cassandra/src/main/java/org/apache/archiva/metadata/repository/cassandra/CassandraMetadataRepository.java
@@ -1117,10 +1117,17 @@ public class CassandraMetadataRepository
                 .setRowCount( Integer.MAX_VALUE ) //
                 .addEqualsExpression( "projectVersionMetadataModel.key", 
projectVersionMetadataKey ) //
                 .execute();
+
+        if ( result.get().getCount() < 1 )
+        {
+            return;
+        }
+
         for ( Row<String, String, String> row : result.get() )
         {
             this.mailingListTemplate.deleteRow( row.getKey() );
         }
+
     }
 
     protected List<MailingList> getMailingLists( String 
projectVersionMetadataKey )
@@ -2058,8 +2065,7 @@ public class CassandraMetadataRepository
             return artifactMetadatas;
         }
 
-        final List<MetadataFacetModel> metadataFacetModels =
-            new ArrayList<>( result.get().getCount() );
+        final List<MetadataFacetModel> metadataFacetModels = new ArrayList<>( 
result.get().getCount() );
 
         for ( Row<String, String, String> row : result.get() )
         {
@@ -2092,8 +2098,7 @@ public class CassandraMetadataRepository
                     }
                 } );
             Iterator<MetadataFacetModel> iterator = 
metadataFacetModelIterable.iterator();
-            Map<String, List<MetadataFacetModel>> 
metadataFacetValuesPerFacetId =
-                new HashMap<>();
+            Map<String, List<MetadataFacetModel>> 
metadataFacetValuesPerFacetId = new HashMap<>();
             while ( iterator.hasNext() )
             {
                 MetadataFacetModel metadataFacetModel = iterator.next();

http://git-wip-us.apache.org/repos/asf/archiva/blob/64187aa8/archiva-modules/plugins/metadata-store-cassandra/src/main/java/org/apache/archiva/metadata/repository/cassandra/DefaultCassandraArchivaManager.java
----------------------------------------------------------------------
diff --git 
a/archiva-modules/plugins/metadata-store-cassandra/src/main/java/org/apache/archiva/metadata/repository/cassandra/DefaultCassandraArchivaManager.java
 
b/archiva-modules/plugins/metadata-store-cassandra/src/main/java/org/apache/archiva/metadata/repository/cassandra/DefaultCassandraArchivaManager.java
index da50c4f..45cccb3 100644
--- 
a/archiva-modules/plugins/metadata-store-cassandra/src/main/java/org/apache/archiva/metadata/repository/cassandra/DefaultCassandraArchivaManager.java
+++ 
b/archiva-modules/plugins/metadata-store-cassandra/src/main/java/org/apache/archiva/metadata/repository/cassandra/DefaultCassandraArchivaManager.java
@@ -392,6 +392,14 @@ public class DefaultCassandraArchivaManager
                 HFactory.createColumnFamilyDefinition( 
keyspace.getKeyspaceName(), //
                                                        
getMailingListFamilyName(), //
                                                        ComparatorType.UTF8TYPE 
);
+
+            BasicColumnDefinition projectVersionMetadataModel_key = new 
BasicColumnDefinition();
+            projectVersionMetadataModel_key.setName( 
StringSerializer.get().toByteBuffer( "projectVersionMetadataModel.key" ) );
+            projectVersionMetadataModel_key.setIndexName( 
"projectVersionMetadataModel_key" );
+            projectVersionMetadataModel_key.setIndexType( ColumnIndexType.KEYS 
);
+            projectVersionMetadataModel_key.setValidationClass( 
ComparatorType.UTF8TYPE.getClassName() );
+            mailingListCf.addColumnDefinition( projectVersionMetadataModel_key 
);
+
             cfds.add( mailingListCf );
 
             // creating indexes for cql query
@@ -404,6 +412,14 @@ public class DefaultCassandraArchivaManager
                 HFactory.createColumnFamilyDefinition( 
keyspace.getKeyspaceName(), //
                                                        getLicenseFamilyName(), 
//
                                                        ComparatorType.UTF8TYPE 
);
+
+            BasicColumnDefinition projectVersionMetadataModel_key = new 
BasicColumnDefinition();
+            projectVersionMetadataModel_key.setName( 
StringSerializer.get().toByteBuffer( "projectVersionMetadataModel.key" ) );
+            projectVersionMetadataModel_key.setIndexName( 
"projectVersionMetadataModel_key" );
+            projectVersionMetadataModel_key.setIndexType( ColumnIndexType.KEYS 
);
+            projectVersionMetadataModel_key.setValidationClass( 
ComparatorType.UTF8TYPE.getClassName() );
+            licenseCf.addColumnDefinition( projectVersionMetadataModel_key );
+
             cfds.add( licenseCf );
 
             // creating indexes for cql query
@@ -427,6 +443,13 @@ public class DefaultCassandraArchivaManager
             groupIdColumn.setValidationClass( 
ComparatorType.UTF8TYPE.getClassName() );
             dependencyCf.addColumnDefinition( groupIdColumn );
 
+            BasicColumnDefinition projectVersionMetadataModel_key = new 
BasicColumnDefinition();
+            projectVersionMetadataModel_key.setName( 
StringSerializer.get().toByteBuffer( "projectVersionMetadataModel.key" ) );
+            projectVersionMetadataModel_key.setIndexName( 
"projectVersionMetadataModel_key" );
+            projectVersionMetadataModel_key.setIndexType( ColumnIndexType.KEYS 
);
+            projectVersionMetadataModel_key.setValidationClass( 
ComparatorType.UTF8TYPE.getClassName() );
+            dependencyCf.addColumnDefinition( projectVersionMetadataModel_key 
);
+
         }
 
         // TODO take care of update new table!!

Reply via email to