-
-
Notifications
You must be signed in to change notification settings - Fork 232
Lock manager reported false deadlocks under high load [CORE2000] #2437
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Comments
Modified by: @hvladassignee: Vlad Khorsun [ hvlad ] |
Commented by: @hvlad Below is typical picture at false deadlock detection time a) Owners, participating in deadlock (backtrace, head of chain marked by 0) : b) Two locks on which owners are waiting : LOCK BLOCK 948936
1 Request 1366912, Owner: 377540, State: 0 (6), Flags: 0x22 LOCK BLOCK 364744
2 Request 1230128, Owner: 396488, State: 0 (6), Flags: 0x22 As you may see request 1375776 (of owner 396488) just granted a lock 948936. This request blocked some other requests, one of them by owner 377540. Note, request 1375776 have flags 0, i.e. it was not marked as blocking and not seen blocking notification. Therefore it have no chance to release the lock to break circle in wait-for graph. LOCK\post_pending() routine wake up owner of first blocked request. If another process run deadlock scan before blocked owner awakens (and calls post_blockage) it reports false deadlock. |
Modified by: @hvladFix Version: 2.5 Beta 1 [ 10251 ] Fix Version: 2.0.5 [ 10222 ] Fix Version: 2.1.2 [ 10270 ] |
Modified by: @pcisarstatus: Resolved [ 5 ] => Closed [ 6 ] |
Modified by: @pavel-zotovQA Status: No test |
Modified by: @pavel-zotovstatus: Closed [ 6 ] => Closed [ 6 ] QA Status: No test => Cannot be tested |
Submitted by: @hvlad
Block progress on CORE1970
Block progress on CORE2611
Relate to CORE2640
Commits: 71ac38a 5ec0e6a c1b161f
The text was updated successfully, but these errors were encountered: