[ https://issues.apache.org/jira/browse/IGNITE-23716?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]
Kirill Tkalenko updated IGNITE-23716: ------------------------------------- Description: IGNITE-23303 addressed some of condended lock usages, but not all. 1. -LazyStripedExecutors#executorFor - is called on every incoming message, and they might be millions.- Done in ticket IGNITE-23796. 2. -ClockWaiter's busyLock can be removed, because it delegates to tracker which already has (already optimized) busy locks.- Will be done in IGNITE-23811 3. -IgniteAttachmentLock writes to shared location both for sync and async paths - it should be striped in some way.- Done in IGNITE-23779. 4. StripedRWLock used in PendingComparableValuesTracker and ReplicaManager doesn't check if write lock is already held 5. -IgniteSpinBusyLock duplicates VersatileReadWriteLock in many aspects and vice versa. I believe ISBL can be replaces with VRWL.- Will be done in IGNITE-23779. See for example org.apache.ignite.internal.util.IgniteUtils#inBusyLockAsync NOTE: don't forget to check results with UpsertKvBenchmark was: IGNITE-23303 addressed some of condended lock usages, but not all. 1. -LazyStripedExecutors#executorFor - is called on every incoming message, and they might be millions.- Done on ticket IGNITE-23796. 2. -ClockWaiter's busyLock can be removed, because it delegates to tracker which already has (already optimized) busy locks.- Will be done in IGNITE-23811 3. -IgniteAttachmentLock writes to shared location both for sync and async paths - it should be striped in some way.- Will be done in IGNITE-23779. 4. StripedRWLock used in PendingComparableValuesTracker and ReplicaManager doesn't check if write lock is already held 5. -IgniteSpinBusyLock duplicates VersatileReadWriteLock in many aspects and vice versa. I believe ISBL can be replaces with VRWL.- Will be done in IGNITE-23779. See for example org.apache.ignite.internal.util.IgniteUtils#inBusyLockAsync NOTE: don't forget to check results with UpsertKvBenchmark > Improve contented locks usage > ----------------------------- > > Key: IGNITE-23716 > URL: https://issues.apache.org/jira/browse/IGNITE-23716 > Project: Ignite > Issue Type: Improvement > Reporter: Alexey Scherbakov > Assignee: Kirill Tkalenko > Priority: Major > Labels: ignite-3 > > IGNITE-23303 addressed some of condended lock usages, but not all. > 1. -LazyStripedExecutors#executorFor - is called on every incoming message, > and they might be millions.- Done in ticket IGNITE-23796. > 2. -ClockWaiter's busyLock can be removed, because it delegates to tracker > which already has (already optimized) busy locks.- Will be done in > IGNITE-23811 > > 3. -IgniteAttachmentLock writes to shared location both for sync and async > paths - it should be striped in some way.- Done in IGNITE-23779. > 4. StripedRWLock used in PendingComparableValuesTracker and ReplicaManager > doesn't check if write lock is already held > 5. -IgniteSpinBusyLock duplicates VersatileReadWriteLock in many aspects and > vice versa. I believe ISBL can be replaces with VRWL.- Will be done in > IGNITE-23779. > See for example org.apache.ignite.internal.util.IgniteUtils#inBusyLockAsync > NOTE: don't forget to check results with UpsertKvBenchmark > > -- This message was sent by Atlassian Jira (v8.20.10#820010)