Merge remote-tracking branch 'origin/master'

This commit is contained in:
Rob Austin
2014-10-27 20:10:25 +00:00
@@ -90,6 +90,8 @@ class VanillaChronicleMap<K, KI, MKI extends MetaBytesInterop<K, KI>,
final boolean putReturnsNull;
final boolean removeReturnsNull;
final boolean useSmallMultiMaps;
private final long lockTimeOutNS;
private final ChronicleHashErrorListener errorListener;
transient Segment[] segments; // non-final for close()
@@ -140,7 +142,7 @@ class VanillaChronicleMap<K, KI, MKI extends MetaBytesInterop<K, KI>,
this.eventListener = builder.eventListener();
hashSplitting = HashSplitting.Splitting.forSegments(actualSegments);
useSmallMultiMaps = useSmallMultiMaps();
initTransients();
}
@@ -238,19 +240,19 @@ class VanillaChronicleMap<K, KI, MKI extends MetaBytesInterop<K, KI>,
}
long sizeOfMultiMap() {
return useSmallMultiMaps() ?
return useSmallMultiMaps ?
VanillaShortShortMultiMap.sizeInBytes(entriesPerSegment) :
VanillaIntIntMultiMap.sizeInBytes(entriesPerSegment);
}
long sizeOfMultiMapBitSet() {
return useSmallMultiMaps() ?
return useSmallMultiMaps ?
VanillaShortShortMultiMap.sizeOfBitSetInBytes(entriesPerSegment) :
VanillaIntIntMultiMap.sizeOfBitSetInBytes(entriesPerSegment);
}
boolean useSmallMultiMaps() {
return entriesPerSegment <= VanillaShortShortMultiMap.MAX_CAPACITY;
return entriesPerSegment * 2L <= VanillaShortShortMultiMap.MAX_CAPACITY;
}
long sizeOfBitSets() {
@@ -589,7 +591,7 @@ class VanillaChronicleMap<K, KI, MKI extends MetaBytesInterop<K, KI>,
new NativeBytes(new VanillaBytesMarshallerFactory(), start,
start + sizeOfMultiMapBitSet(), null);
multiMapBytes.load();
return useSmallMultiMaps() ?
return useSmallMultiMaps ?
new VanillaShortShortMultiMap(multiMapBytes, sizeOfMultiMapBitSetBytes) :
new VanillaIntIntMultiMap(multiMapBytes, sizeOfMultiMapBitSetBytes);
}