Commit Graph
177 Commits
Author SHA1 Message Date
leventov 8abe53912a Make max hashLookup load factor (for tiering) greater than max 'normal'
load factor (0.66), to avoid tiering due to natural variance in segment
load. Account non-tiered segments percentile
2015-12-10 17:43:47 +03:00
leventov 2f58bfb399 Replace nextPosToSearchFrom with lowestPossiblyFreeChunk semantically, that allows to avoid searching free chunks though a full tier, when segment is tiered, again and again. Also, make chunk block reallocation in innerDefaultReplaceValue() and putValueDeletedEntry() check it doesn't overflow actualChunksPerSegmentTier 2015-12-07 07:20:47 +03:00
leventov 5d4161eb26 Use BinaryWire instead of TextWire because of predictable whitespace and bytes position after read/write 2015-11-27 16:29:44 +03:00
leventov 4faefe8ca9 Improve FileChannel read/write for persisted ChronicleMaps 2015-11-26 18:49:54 +03:00
leventov fe77012381 Read/Write ChronicleMap's boostrapping header with Wire 2015-11-25 20:37:19 +03:00
leventov 582560ed15 Make ChronicleMapBuilder.entries() config obligatory for in-memory Maps and persistence-creating Maps 2015-11-24 23:50:41 +03:00
leventov 0398f7dfbf HCOLL-406 #58 Don't check size configurations of ChronicleMapBuilder, if existing file is accessed 2015-11-24 15:42:51 +03:00
leventov beec07f9a9 Remove Xstream XML ChronicleMap header serialization (is going to be replaced with Wire serialization soon) 2015-11-23 18:43:17 +03:00
leventov ade2196e72 Java-Lang -> Chronicle-Bytes, Chronicle-Values 2015-11-22 22:10:39 +03:00
leventov 2111d1865c Make all ReplicatedChronicleMap fields transient 2015-10-22 04:28:52 +03:00
leventov 0985eb71a1 Remove metaDataBytes (unused) 2015-10-22 03:45:47 +03:00
leventov 07b75d8b8a Allow ReplicatedChronicleMap to be accessed without configuring replicators 2015-10-22 00:19:59 +03:00
leventov a13bf449d0 Make value and value size configuration obligatory in ChronicleMapBuilder 2015-10-14 17:47:22 +03:00
leventov 7d35346022 Add package-private worstAlignment() config to ChronicleMapBuilder 2015-10-14 17:44:45 +03:00
leventov 7c4b0ed10b Remove tier bulk alignment (as actually not needed) 2015-10-11 17:04:20 +03:00
leventov 0adaaa935d Store segmentHeadersOffset in global Mutable state (according to spec; to make ChronicleMap file independent from current mapping page size) 2015-10-05 10:15:31 +03:00
leventov 21d5342048 Optimize memory in non-persisted case -- don't zero out all memory eagery; remove global mutable state duplication code in VanillaChronicleHash and ReplicatedChronicleMap; make sleep interruptible in OldEntriesCleanup thread; remove old entries cleanup duplicatation tracking; fix bugs 2015-10-04 07:57:12 +03:00
leventov 9d3ff93021 Default removedEntryCleanupTimeout() 1 second -> 1 minute 2015-10-03 05:10:54 +03:00
leventov 05f94965be Refactor TimeProvider 2015-10-02 13:09:15 +03:00
leventov f70d8b262a Add a comment on ChronicleMapBuilder.MAX_SEGMENTS choice 2015-10-02 11:37:18 +03:00
leventov 22b964e069 HCOLL-392 Add entry checksums 2015-09-26 23:34:44 +03:00
leventov 01d24b0ee0 As ChronicleMapBuilder always cloned before Map creation, make 'replicated' an 'instance' field instead of a parameter of almost all methods 2015-09-26 22:04:28 +03:00
leventov 5a54f6a194 Remove stateless client 2015-09-25 20:39:39 +03:00
leventov 8870b05d86 HCOLL-387 add a way to limit hash lookup slots to 4 bytes 2015-09-23 02:02:36 +03:00
leventov b113118707 Limit HashLookup slot size with 4 or 8 bytes, back 2015-09-22 23:07:54 +03:00
leventov d9c771bedc Make key/value size discovery more defensive, inspired by #43 2015-09-21 19:08:45 +03:00
leventov 993cbd0c4e Add ChronicleHashBuilder.nonTieredSegmentsPercentile() configuration and use proper math for segment sizing 2015-09-20 01:39:18 +03:00
leventov 3370aa7dba Add ChronicleHashBuilder.allowSegmentTiering() config for regressions and EntryCountMapTest 2015-09-18 18:14:40 +03:00
leventov 50662c521b HCOLL-360 Small fixes 2015-09-17 23:37:40 +03:00
leventov 2eed65e80e HCOLL-360 Add segment tiers 2015-09-17 20:58:52 +03:00
xfeep 7e26218940 Fix NoClassDefFoundError when run without xstream 2015-09-10 15:08:18 +03:00
leventov 88843fae92 HCOLL-343 add an option not to erase old removed entries from ReplicatedChronicleMap 2015-08-27 00:01:46 +03:00
leventov 904ecca036 HCOLL-343 HCOLL-227 Remove old entries from ReplicatedChronicleMap 2015-08-23 00:01:44 +03:00
leventov dda26715d3 Update Segment Header size heurisic after benchmarking data 2015-08-14 20:35:11 +03:00
leventov b5cf817b2a Zero out contents of a newly-created persisted ChronicleHash 2015-08-06 03:46:54 +03:00
leventov 2b6c871562 Reduce ChronicleMapBuilder API surface, hide private API in a class 2015-08-05 02:57:12 +03:00
leventov 8afd90c528 Remove unused ChronicleEnterprise artifacts from ChronicleMapBuilder 2015-08-05 02:49:07 +03:00
leventov 8fe9960808 Make ChronicleMapBuilder not Serializable 2015-08-05 02:47:50 +03:00
leventov ff99f5cccd On the way to HCOLL-360: Rename HashLookup to CompactOffHeapLinearHashTable and make it not a stage; extracted KeySearch from HashQuery 2015-08-03 20:20:14 +03:00
leventov 7c10ea41ab Fix a bug in ChronicleMapBuilder.preMapConstruction() 2015-08-02 01:37:34 +03:00
leventov 22df53afb9 Try un-@Ignore some tests 2015-08-02 01:31:09 +03:00
leventov 4a9e2c1095 Fix bugs with key/value average/constant size computation in ChronicleMapBuilder 2015-08-02 01:24:04 +03:00
leventov 9b0bfc631d Removed ChronicleHashBuilderImpl and ChronicleMapBuilder minor cleanup 2015-07-31 01:50:27 +03:00
leventov cf583d4510 Removed unused duplicating HashLookup class and package 2015-07-30 02:44:11 +03:00
leventov e39dfc394c Add ChronicleHashBuilder.averageKey() and ChronicleMapBuilder.averageValue() methods 2015-07-29 01:21:21 +03:00
leventov a3c9ed688c Update Javadocs - insert missing <p>In the beginnings of the paragraphs 2015-07-28 23:57:42 +03:00
leventov e7a8a11505 OHFT-58 Change license to LGPLv3 to protect redistribution 2015-07-25 23:12:23 +03:00
leventov 340ab09409 Moved DefaultValueProvider to the new Contexts API; removed defaultValue() SPI from MapEntryOperations (essentially replaced by DefaultValueProvider); Removed the old contexts, KeyContext and MapKeyContext completely 2015-07-24 21:36:55 +03:00
leventov 1d7f54635a HCOLL-318 added many documentation and examples; Empowerted ReplicableEntry interface, and changed Map/SetRemoteOperations contracts to allow implementing more agile reconciliation strategies 2015-06-20 05:43:34 +03:00
leventov 0c73a072eb Fix compilation issues 2015-06-15 22:00:06 +03:00