leventov
c15c568473
Remove Replica.EntryCallback.onBeforeEntry() and Replica.EntryCallback.onAfterEntry() methods as unused
2015-12-26 18:27:50 +03:00
leventov
1743f1c694
Replication updates with local identifier shouldn't use the same timestamp, because this allows two different updates which replace each other on different nodes, and don't converge. Extend default TimeProvider precision to nanoseconds, to exclude possibility of 'microsecond overflow' on frequent changes to the same entry
2015-12-26 17:28:35 +03:00
leventov
0ead52335b
Don't force cleanup deleted entries on alloc, if it is disabled in this ReplicatedChronicleMap
2015-12-25 20:39:43 +03:00
leventov
d060fd0c2d
HCOLL-412 fix a bug in HashLookupSearch.putNewVolatile()
2015-12-24 18:31:32 +03:00
leventov
263e366ee8
Update delayed check sum on WriteLock.unlock(), and close stages only if unlocking actually done
2015-12-23 18:37:14 +03:00
leventov
9ff159987e
Release writeLock after visiting each entry in HashSegmentIteration.forEachTierEntryWhile()
2015-12-23 16:30:20 +03:00
leventov
246eec8b77
Fix a bug in SegmentStages.unlinkFromSegmentContextsChain() -- didn't account for exceptional exit from nested context
2015-12-23 16:29:08 +03:00
leventov
c448293788
Fix a bug -- drop changes in doRemoveCompetely()
2015-12-23 16:26:28 +03:00
leventov
defaa6e7db
More clarity with rounding and double -> long conversions in ChronicleMapBuilder
2015-12-22 17:23:32 +03:00
leventov
832ab5c5da
Fix CMUseCasesTest.testMapStringIntegerValueWithoutListMarshallers()
2015-12-22 17:22:42 +03:00
leventov
7154278bb1
Don't account segment filling variance, if there is only one segment
2015-12-21 17:19:39 +03:00
leventov
60de795949
updateChange() should always be called after replicationStateUpdate(), because updateChange() uses the new timestamp
2015-12-20 18:33:47 +03:00
leventov
dd4fa03bfe
Fix wrong decrements of tierDeleted (after innerDefaultReplaceValue(), when should be before), because relocation could trigger tier change inside innerDefaultReplaceValue()
2015-12-20 18:32:53 +03:00
leventov
de8e27464c
Reuse code between internal and 'API' replication: remove ReplicatedInputKeyBytesData and ReplicatedInputValueBytesData
2015-12-20 16:33:28 +03:00
leventov
c59b801795
Consistent 'id, timestamp' order of paramters in methods, fix bugs in ReplicatedInput.remotePut() and remoteRemove()
2015-12-19 18:03:14 +03:00
leventov
8a0dea9f05
Javadoc fixes in MapMethods
2015-12-18 16:06:05 +03:00
leventov
3773b3d60a
Add methods for Engine support
2015-12-18 03:00:38 +03:00
leventov
5280dc2b60
Rename AbstractData type parameter from V to T
2015-12-18 01:09:07 +03:00
leventov
491ab42843
Remove duplicate alignReadPosition() in MapEntryStages.initValueSize()
2015-12-17 21:26:37 +03:00
leventov
268ba7f569
Reorder fields in replication message, to avoid writing value size, when deleted event is sent
2015-12-17 21:25:47 +03:00
leventov
f0bcd784b7
Remove EntryCallback.shouldBeIgnored()
2015-12-17 21:25:09 +03:00
leventov
a1954f220d
Remove EntryExternalizable.sizeOfEntry()
2015-12-17 20:01:24 +03:00
leventov
e259be092a
Remove unspecified API use in ReplicatedChronicleMap.writeExternalEntry()
2015-12-17 18:56:55 +03:00
leventov
27c8148007
Fix the prev commit e78e070
2015-12-17 18:16:51 +03:00
leventov
e78e070558
Refactor entry writing to replication buffer, #62
2015-12-17 13:46:26 +03:00
leventov
12c8503434
Javadoc improvements
2015-12-15 14:27:56 +03:00
leventov
a11f79f798
Remove map persistence file locking, as unnecessary
2015-12-14 18:49:47 +03:00
leventov
229aeb5fdf
Minor improvements related to VanillaChronicleMap.alignAddr()
2015-12-12 18:00:10 +03:00
leventov
b34fcfce71
Remove unused newInstance() method in VanillaChronicleMap
2015-12-11 18:51:29 +03:00
leventov
b362de603e
Remove unused remoteOpContext() and remoteItContext() methods in ReplicatedChronicleMap
2015-12-11 18:50:10 +03:00
leventov
4907af142b
Prefix Read/Update/WriteLock methods with checkOnEachLockOperation()
2015-12-11 18:50:01 +03:00
leventov
7a5c799a28
Remove throws IORuntimeException everywhere as redundant and deprecated
2015-12-11 16:23:45 +03:00
leventov
c79b078c36
Apply timed tryLock() heuristic from commit 6c56813b5e to tryWriteLock() and tryUpgradeUpdateToWriteLock(), was used only in tryReadLock() and tryUpdateLock()
2015-12-10 17:43:50 +03:00
leventov
9390aa87a5
Replace RWU lock implementation in BigSegmentHeader with identical from VanillaReadWriteUpdateWithWaitsLockingStrategy (DRY), remove IllegalInterProcessLockStateException in favor of java.lang.IllegalMonitorStateException
2015-12-10 17:43:47 +03:00
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
b711ca8d96
Remove unused and incomplete support of keeping exclusive lock holder thread id in segment header
2015-12-09 08:24:02 +03:00
Rob Austin
e1c4b972b0
added missing
...
final InetSocketAddress serverInetSocketAddress =
new InetSocketAddress(replicationConfig.serverPort());
final Details serverDetails = new Details(serverInetSocketAddress, localIdentifier);
attached.connector = new ServerConnector(serverDetails);
2015-12-08 17:13:25 +03:00
leventov
497cf9c470
Move MapDiagnostics to main project and make it runnable (psvm)
2015-12-08 16:33:07 +03:00
leventov
c8483dfb7c
HCOLL-408 Trigger new segment tier allocation on hashLookup overflow
2015-12-07 12:31:28 +03:00
leventov
ce45903af7
Make entries and deleted counters per-tier
2015-12-07 11:43:37 +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
82988e7435
Replace outdated (pre-tiers) implementation of ReplicatedMapSegmentIteration.forEachSegmentReplicableEntryWhile() by shared code with HashSegmentIteration.forEachSegmentEntryWhile()
2015-12-06 15:19:49 +03:00
leventov
dbba27660f
Minor doc fixes
2015-12-06 14:49:50 +03:00
leventov
23b3eb7c7a
Rename a VanillaChronicleMap.zeroOutNewlyMappedTier parameter name
2015-12-05 05:40:37 +03:00
leventov
d55da160d9
Rename generic parameter Data<V> -> Data<T>
2015-12-05 05:39:56 +03:00
leventov
7c347aaec3
Make final some public API classes that are not intended for subclassing
2015-12-05 05:39:09 +03:00
leventov
d5ee1f9aae
Make checksum computation delayed, on lock release
2015-12-05 05:37:17 +03:00
leventov
8ea5f2dfac
Make searchStatePresent() call in HashLookupSearch.putNewVolatile() independent on assertions enabled. Similar to HashLookupPos.initHashLookupPos() and segmentTier() initialization. Possible fix for #60
2015-12-03 09:58:07 +03:00
Rob Austin
b7f815976c
HCOLL-403 When the following setting is set on chronicle map "bootstrapOnlyLocalEntries==false", it is not sending all the entries. - this is the same issue but it was affecting chronicle engine replication
2015-12-03 04:43:28 +03:00
rob
c9365e5238
HCOLL-403 removed another filter that was preventing all the message to be sent ( from all the nodes on bootstrap )
2015-12-03 04:38:43 +03:00