>> This invariant is violated in many places.
At least in half of the messages:
org.apache.ignite.internal.processors.cache.distributed.GridDistributedLockRequest#partition
org.apache.ignite.internal.processors.cache.distributed.GridDistributedUnlockRequest#partition
org.apache.ignite.internal.pro
>> Tx processing is supposed to be thread bound by hashing the version to a
partition
This invariant is violated in many places. The most notorious example is tx
recovery.
Another example: I just added an assertion that checks tId of a creator
thread with tId of an accessor thread.
TxMultiCacheAsy
Tx processing is supposed to be thread bound by hashing the version to a
partition, see methods like [1]
If for some cases this invariant is broken, this should be fixed.
[1]
org.apache.ignite.internal.processors.cache.distributed.dht.GridDhtTxPrepareRequest#partition
пт, 19 мая 2023 г. в 15:57,
Igniters,
My team was faced with node failure [1] because of non-threadsafe
collections usage.
IgniteTxStateImpl's fields
- activeCacheIds
- txMap
are not thread safe, but are widely used from different threads without the
proper sync.
The main question is ... why?
According to the research, we