[jira] [Created] (IGNITE-11750) Implement locked pages info for long-running B+Tree operations

classic Classic list List threaded Threaded
1 message Options
Reply | Threaded
Open this post in threaded view
|

[jira] [Created] (IGNITE-11750) Implement locked pages info for long-running B+Tree operations

Anton Vinogradov (Jira)
Alexey Goncharuk created IGNITE-11750:
-----------------------------------------

             Summary: Implement locked pages info for long-running B+Tree operations
                 Key: IGNITE-11750
                 URL: https://issues.apache.org/jira/browse/IGNITE-11750
             Project: Ignite
          Issue Type: Improvement
            Reporter: Alexey Goncharuk


I've stumbled upon an incident where a batch of Ignite threads were hanging on BPlusTree operations trying to acquire read or write lock on pages. From the thread dump it is impossible to check if there is an issue with {{OffheapReadWriteLock}} or there is a subtle deadlock in the tree.

I suggest we implement a timeout for page lock acquire and tracking of locked pages. This should be relatively easy to implement in {{PageHandler}} (the only thing to consider is performance degradation). If a timeout occurs, we should print all the locks currently owned by a thread. This way we should be able to determine if there is a deadlock in the {{BPlusTree}}.



--
This message was sent by Atlassian JIRA
(v7.6.3#76005)