Commit Graph
23 Commits
Author SHA1 Message Date
leventov e951a4339a Reduced unnecessary and wrong ChronicleMapBuilder.entrySize() usage 2014-12-19 23:34:02 +07:00
Peter Lawrey fa95d0484b HCOLL-251 Make the tests more stable. 2014-12-17 09:15:00 +00:00
Rob Austin 9d92b28251 HCOLL-251 added - Investigate test failure of net.openhft.chronicle.map.EntryCountMapTest 2014-12-16 23:01:56 +00:00
Peter Lawrey 6aaa5b9d6b HCOLL-251 Re-tune the estimates for number of segment and how much entry headroom to use. 2014-12-16 20:48:18 +00:00
Rob Austin 21629e8896 HCOLL-251 added @ignore 2014-12-15 09:15:55 +00:00
Rob Austin 041db8e399 fixed builder serialization issue 2014-12-12 10:53:26 +00:00
Peter Lawrey 6d4b143903 Remove double and triple blank lines 2014-11-30 22:43:32 +02:00
Rob Austin 49fc123755 HCOLL-81 made publicly a single ChronicleMapBuilder, that delegates onto internal implementations 2014-11-15 09:05:26 +00:00
Rob Austin e772737f36 HCOLL-81 renamed ChronicleMap to ChronicleMapOnHeapUpdatableBuilder as Peter wanted the OffHeapUpdated Builder to be the default ChronicleMapBuilder. 2014-11-14 12:59:03 +00:00
Peter Lawrey 1774a4d331 Tweek segment sizes again. 2014-11-10 15:07:08 +00:00
leventov 4a51b129a3 Many renames, API refactorings, classes/interfaces made private to net.openhft.chronicle.map package
Conflicts:
	src/main/java/net/openhft/chronicle/map/StatelessChronicleMap.java
	src/test/java/net/openhft/chronicle/map/ChronicleMapTest.java
2014-11-07 12:10:40 +03:00
Rob Austin 9dec1ed4db reverted cff7c5bea8 2014-11-04 14:44:59 +00:00
Rob Austin a0c89935f5 reverted cff7c5bea8 2014-11-04 14:29:06 +00:00
Peter Lawrey bb94e0e547 Consolidate segment headers to reduce TLB misses. Re-tune the calculated number of segments based on the size of data. 2014-10-31 17:33:10 +00:00
Peter Lawrey bfd866e45d Tweet the constants used for hashing based on the city hash. 2014-10-29 13:53:08 +00:00
Peter Lawrey 4d7dd56c43 Use consistent hashing and thread local caches of StringBuilders. 2014-10-29 13:46:40 +00:00
leventov 0c45ee8aff HCOLL-136 HCOLL-137 HCOLL-153 HCOLL-160
1. Separated ChronicleMapBuilder (for non-Byteable values) and
OffHeapUpdatableChronicleMapBuilder (for Byteable values) with common base
AbstractChronicleMapBuilder (public just to inherit common javadocs)

2. Added ChronicleHashBuilder.keyDeserializationFactory() and
AbstractChronicleMapBuilder.valueDeserializationFactory() (former
ChronicleMapBuilder.valueFactory() method)

3. Changed ChronicleMap.get(), getUsing() API and impl to what was
initially intended - now they ALWAYS returns null, if key is absent

4. acquireUsing() API, common for the cases with Byteable and non-Byteable
values: puts defaultValue or defaultValueProvider.get(key), if the key is
absent, then acquireUsing() behaves just like getUsing()

5. For off0heap updatable ChronicleMaps (Byteable values), added
prepareValueBytes() configuration which formalizes zeroing out value bytes

6. Javadoc fixes and improvements
2014-10-27 20:15:26 +03:00
Peter Lawrey 412f9def7e Re-tune entry sizes for segments. 2014-10-27 11:24:15 +00:00
leventov 061fc5b53b HCOLL-172 Verified thath IntIntMultiMap now supports up to 2^32 entries; ShortShortMultiMap up to 2^16; ChronicleMap.Segment are now long-sized; attempt to support non-power-of-2 number of segments by HashSplitting (not tested yet); improved logic and dependencies between actualSegments(), actualEntriesPerSegments() and minSegments() methods in ChronicleMapBuilder; minor fixes 2014-10-25 00:45:59 +04:00
Peter Lawrey 4588c282b8 Performance tweaks. 2014-10-24 17:23:35 +01:00
Peter Lawrey ea779997cf Remove <p/> from copyright messages 2014-10-24 11:30:25 +01:00
Peter Lawrey 3a3c634a19 Tuning headroom for larger Maps. 2014-10-23 22:18:45 +01:00
Peter Lawrey 9a8a2512f0 Tweek the sizing rules as well as optimise the hashing algo so it creates a more even distribution (for at least one set of test cases) 2014-10-23 21:20:46 +01:00