[SERVER-38045] Dump session catalog using GDB scripting Created: 08/Nov/18 Updated: 29/Oct/23 Resolved: 11/Dec/18 |
|
| Status: | Closed |
| Project: | Core Server |
| Component/s: | Replication, Testing Infrastructure |
| Affects Version/s: | None |
| Fix Version/s: | 4.1.7 |
| Type: | New Feature | Priority: | Major - P3 |
| Reporter: | Siyuan Zhou | Assignee: | William Schultz (Inactive) |
| Resolution: | Fixed | Votes: | 0 |
| Labels: | None | ||
| Remaining Estimate: | Not Specified | ||
| Time Spent: | Not Specified | ||
| Original Estimate: | Not Specified | ||
| Issue Links: |
|
||||||||||||||||||||||||||||||||||||||||||||
| Backwards Compatibility: | Fully Compatible | ||||||||||||||||||||||||||||||||||||||||||||
| Sprint: | Repl 2018-12-03, Repl 2018-12-17 | ||||||||||||||||||||||||||||||||||||||||||||
| Participants: | |||||||||||||||||||||||||||||||||||||||||||||
| Description |
|
Dumping lock manager will show idle transactions that are holding locks. It will be very helpful to also dump the sessions and their transaction participants to show the logical session id and transaction number that is holding the resources. One solution is to implement a global function in C++ to dump session catalog. The concern is that it only works on live process and not on core dump. It runs on a live process so that other threads can also run to change the state as mentioned in |
| Comments |
| Comment by Githook User [ 21/Dec/18 ] |
|
Author: {'username': 'will62794', 'email': 'william.schultz@mongodb.com', 'name': 'William Schultz'}Message: |
| Comment by Githook User [ 21/Dec/18 ] |
|
Author: {'username': 'will62794', 'email': 'william.schultz@mongodb.com', 'name': 'William Schultz'}Message: The recent change to utilize the abseil hash map for stdx::unordered_map breaks the logic used to unpack a LogicalSessionIdMap inside the mongod-dump-sessions GDB command. This commit disabled the command until a suitable workaround is found. |
| Comment by Githook User [ 20/Dec/18 ] |
|
Author: {'username': 'will62794', 'email': 'william.schultz@mongodb.com', 'name': 'William Schultz'}Message: |
| Comment by Githook User [ 19/Dec/18 ] |
|
Author: {'username': 'will62794', 'email': 'william.schultz@mongodb.com', 'name': 'William Schultz'}Message: |
| Comment by Githook User [ 11/Dec/18 ] |
|
Author: {'name': 'William Schultz', 'email': 'william.schultz@mongodb.com', 'username': 'will62794'}Message: |
| Comment by Judah Schvimer [ 14/Nov/18 ] |
|
From max.hirschhorn, this should be implemented as a custom gdb command and then added to the list of gdb commands hang_analyzer.py runs. The implementer should talk to max.hirschhorn, jonathan.abrahams, or mark.benvenuto for how to integrate with the hang analyzer. |
| Comment by Siyuan Zhou [ 09/Nov/18 ] |
|
william.schultz wrote a GDB script to print out the decorations and we have pretty printer for decorations. They can be a good starting point. |