[ 
https://issues.apache.org/jira/browse/IGNITE-20895?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
 ]

Alexey Scherbakov resolved IGNITE-20895.
----------------------------------------
    Resolution: Duplicate

Duplicates IGNITE-23301

> Optimize hierarchy lock manager
> -------------------------------
>
>                 Key: IGNITE-20895
>                 URL: https://issues.apache.org/jira/browse/IGNITE-20895
>             Project: Ignite
>          Issue Type: Improvement
>    Affects Versions: 3.0
>            Reporter: Alexey Scherbakov
>            Priority: Major
>              Labels: ignite-3
>             Fix For: 3.0
>
>
> Recently a (not very efficient) parentLockManager  [1] was introduced to 
> handle hierarchy (coarse-grained) locks.
> Currently it's only purpose is to provide strict serializability during full 
> table scans, which happens very rarely.
> It comes at the cost of acquiring additional lock on each update op. IS locks 
> are never used at all.
> This should be improved. Possible optimizations:
>  # Get rid of hierarchy locks and instead scan the primary index for table 
> scan. If I recall correctly, Mysql never uses hierarchy locking.
>  # If we are absolutely sure that we need hierarchy locking, replace lock 
> queuing for IS,IX locks with counters. This prevents waiting, but is looks ok 
> for this kind of locks. Only stronger locks should be allowed to wait.
> [1] org.apache.ignite.internal.tx.impl.HeapLockManager#parentLockManager



--
This message was sent by Atlassian Jira
(v8.20.10#820010)

Reply via email to