Repository: cassandra Updated Branches: refs/heads/trunk f129dea86 -> c193c2c43
Reapply collection presizing fixes, now that CASSANDRA-12220 is fixed" Project: http://git-wip-us.apache.org/repos/asf/cassandra/repo Commit: http://git-wip-us.apache.org/repos/asf/cassandra/commit/c193c2c4 Tree: http://git-wip-us.apache.org/repos/asf/cassandra/tree/c193c2c4 Diff: http://git-wip-us.apache.org/repos/asf/cassandra/diff/c193c2c4 Branch: refs/heads/trunk Commit: c193c2c438b088770fa8989ece63282e6c735056 Parents: f129dea Author: Dave Brosius <dbros...@mebigfatguy.com> Authored: Tue Jul 19 22:47:37 2016 -0400 Committer: Dave Brosius <dbros...@mebigfatguy.com> Committed: Tue Jul 19 22:47:37 2016 -0400 ---------------------------------------------------------------------- src/java/org/apache/cassandra/config/CFMetaData.java | 5 +++-- .../org/apache/cassandra/cql3/statements/BatchStatement.java | 3 ++- .../apache/cassandra/cql3/statements/CreateIndexStatement.java | 3 ++- .../apache/cassandra/cql3/statements/CreateViewStatement.java | 3 ++- .../org/apache/cassandra/db/compaction/CompactionManager.java | 2 +- 5 files changed, 10 insertions(+), 6 deletions(-) ---------------------------------------------------------------------- http://git-wip-us.apache.org/repos/asf/cassandra/blob/c193c2c4/src/java/org/apache/cassandra/config/CFMetaData.java ---------------------------------------------------------------------- diff --git a/src/java/org/apache/cassandra/config/CFMetaData.java b/src/java/org/apache/cassandra/config/CFMetaData.java index 4de4f7b..b175ef1c 100644 --- a/src/java/org/apache/cassandra/config/CFMetaData.java +++ b/src/java/org/apache/cassandra/config/CFMetaData.java @@ -32,6 +32,7 @@ import com.google.common.base.MoreObjects; import com.google.common.base.Objects; import com.google.common.collect.ImmutableSet; import com.google.common.collect.Iterables; +import com.google.common.collect.Maps; import com.google.common.collect.Sets; import org.apache.commons.lang3.ArrayUtils; import org.apache.commons.lang3.builder.HashCodeBuilder; @@ -304,7 +305,7 @@ public final class CFMetaData { this.comparator = new ClusteringComparator(extractTypes(clusteringColumns)); - Map<ByteBuffer, ColumnDefinition> newColumnMetadata = new HashMap<>(); + Map<ByteBuffer, ColumnDefinition> newColumnMetadata = Maps.newHashMapWithExpectedSize(partitionKeyColumns.size() + clusteringColumns.size() + partitionColumns.size()); for (ColumnDefinition def : partitionKeyColumns) newColumnMetadata.put(def.name.bytes, def); for (ColumnDefinition def : clusteringColumns) @@ -1260,7 +1261,7 @@ public final class CFMetaData public Set<String> usedColumnNames() { - Set<String> usedNames = new HashSet<>(); + Set<String> usedNames = Sets.newHashSetWithExpectedSize(partitionKeys.size() + clusteringColumns.size() + staticColumns.size() + regularColumns.size()); for (Pair<ColumnIdentifier, AbstractType> p : partitionKeys) usedNames.add(p.left.toString()); for (Pair<ColumnIdentifier, AbstractType> p : clusteringColumns) http://git-wip-us.apache.org/repos/asf/cassandra/blob/c193c2c4/src/java/org/apache/cassandra/cql3/statements/BatchStatement.java ---------------------------------------------------------------------- diff --git a/src/java/org/apache/cassandra/cql3/statements/BatchStatement.java b/src/java/org/apache/cassandra/cql3/statements/BatchStatement.java index 2739c2e..14638e2 100644 --- a/src/java/org/apache/cassandra/cql3/statements/BatchStatement.java +++ b/src/java/org/apache/cassandra/cql3/statements/BatchStatement.java @@ -22,6 +22,7 @@ import java.util.*; import java.util.concurrent.TimeUnit; import com.google.common.collect.Iterables; +import com.google.common.collect.Maps; import org.slf4j.Logger; import org.slf4j.LoggerFactory; import org.slf4j.helpers.MessageFormatter; @@ -554,7 +555,7 @@ public class BatchStatement implements CQLStatement public Map<UUID, PartitionColumns> build() { - Map<UUID, PartitionColumns> m = new HashMap<>(); + Map<UUID, PartitionColumns> m = Maps.newHashMapWithExpectedSize(perTableBuilders.size()); for (Map.Entry<UUID, PartitionColumns.Builder> p : perTableBuilders.entrySet()) m.put(p.getKey(), p.getValue().build()); return m; http://git-wip-us.apache.org/repos/asf/cassandra/blob/c193c2c4/src/java/org/apache/cassandra/cql3/statements/CreateIndexStatement.java ---------------------------------------------------------------------- diff --git a/src/java/org/apache/cassandra/cql3/statements/CreateIndexStatement.java b/src/java/org/apache/cassandra/cql3/statements/CreateIndexStatement.java index f899247..2526f79 100644 --- a/src/java/org/apache/cassandra/cql3/statements/CreateIndexStatement.java +++ b/src/java/org/apache/cassandra/cql3/statements/CreateIndexStatement.java @@ -22,6 +22,7 @@ import java.util.*; import com.google.common.base.Optional; import com.google.common.base.Strings; import com.google.common.collect.Iterables; +import com.google.common.collect.Sets; import org.slf4j.Logger; import org.slf4j.LoggerFactory; @@ -173,7 +174,7 @@ public class CreateIndexStatement extends SchemaAlteringStatement if (!properties.isCustom) throw new InvalidRequestException("Only CUSTOM indexes support multiple columns"); - Set<ColumnIdentifier> columns = new HashSet<>(); + Set<ColumnIdentifier> columns = Sets.newHashSetWithExpectedSize(targets.size()); for (IndexTarget target : targets) if (!columns.add(target.column)) throw new InvalidRequestException("Duplicate column " + target.column + " in index target list"); http://git-wip-us.apache.org/repos/asf/cassandra/blob/c193c2c4/src/java/org/apache/cassandra/cql3/statements/CreateViewStatement.java ---------------------------------------------------------------------- diff --git a/src/java/org/apache/cassandra/cql3/statements/CreateViewStatement.java b/src/java/org/apache/cassandra/cql3/statements/CreateViewStatement.java index 2bae73e..5e14e72 100644 --- a/src/java/org/apache/cassandra/cql3/statements/CreateViewStatement.java +++ b/src/java/org/apache/cassandra/cql3/statements/CreateViewStatement.java @@ -22,6 +22,7 @@ import java.util.*; import java.util.stream.Collectors; import com.google.common.collect.Iterables; +import com.google.common.collect.Sets; import org.apache.cassandra.auth.Permission; import org.apache.cassandra.config.CFMetaData; @@ -148,7 +149,7 @@ public class CreateViewStatement extends SchemaAlteringStatement baseName.getColumnFamily())); } - Set<ColumnIdentifier> included = new HashSet<>(); + Set<ColumnIdentifier> included = Sets.newHashSetWithExpectedSize(selectClause.size()); for (RawSelector selector : selectClause) { Selectable.Raw selectable = selector.selectable; http://git-wip-us.apache.org/repos/asf/cassandra/blob/c193c2c4/src/java/org/apache/cassandra/db/compaction/CompactionManager.java ---------------------------------------------------------------------- diff --git a/src/java/org/apache/cassandra/db/compaction/CompactionManager.java b/src/java/org/apache/cassandra/db/compaction/CompactionManager.java index a653b58..519ff05 100644 --- a/src/java/org/apache/cassandra/db/compaction/CompactionManager.java +++ b/src/java/org/apache/cassandra/db/compaction/CompactionManager.java @@ -1279,7 +1279,7 @@ public class CompactionManager implements CompactionManagerMBean { MerkleTrees tree = new MerkleTrees(cfs.getPartitioner()); long allPartitions = 0; - Map<Range<Token>, Long> rangePartitionCounts = new HashMap<>(); + Map<Range<Token>, Long> rangePartitionCounts = Maps.newHashMapWithExpectedSize(ranges.size()); for (Range<Token> range : ranges) { long numPartitions = 0;