Details
-
Improvement
-
Status: Open
-
Major
-
Resolution: Unresolved
-
None
-
None
-
None
-
Docs Required, Release Notes Required
Description
Current timestamp implementation doesn't include globalId part, so is useful only then all transactions ids are generated on single node.
It should be improved by adding global unique jvm id to the timestamp.
Additionally, current timestamp uses nanoSeconds, which is far away from real time.
Instead, NTP timestamp can be used as a localTime part.
IgniteUuid can be used for this purpose as well - it's the simplest solution.
Also, the performance of current implementation may not be optimal - probably it should be CAS powered or/and use optimistic locking (StampedLock).