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!!
