[SERVER-28535] hang_analyzer.py should attach to mongod processes if Jepsen test times out in Evergreen Created: 29/Mar/17 Updated: 06/Dec/17 Resolved: 03/May/17 |
|
| Status: | Closed |
| Project: | Core Server |
| Component/s: | Testing Infrastructure |
| Affects Version/s: | None |
| Fix Version/s: | 3.4.5, 3.5.7 |
| Type: | Improvement | Priority: | Major - P3 |
| Reporter: | Max Hirschhorn | Assignee: | Max Hirschhorn |
| Resolution: | Done | Votes: | 0 |
| Labels: | None | ||
| Remaining Estimate: | Not Specified | ||
| Time Spent: | Not Specified | ||
| Original Estimate: | Not Specified | ||
| Issue Links: |
|
||||||||||||
| Backwards Compatibility: | Fully Compatible | ||||||||||||
| Backport Requested: |
v3.4
|
||||||||||||
| Sprint: | TIG 2017-05-08 | ||||||||||||
| Participants: | |||||||||||||
| Linked BF Score: | 0 | ||||||||||||
| Description |
|
The jepsen_xx tasks set the ${hang_analyzer_processes} expansion to "java", causing hang_analyzer.py not to attach to any mongod processes. This makes it difficult to debug failures where running MongoDB's Jepsen tests induces a hang/deadlock in mongod itself.
|
| Comments |
| Comment by Githook User [ 26/May/17 ] | |||||||||||||||||||
|
Author: {u'username': u'visemet', u'name': u'Max Hirschhorn', u'email': u'max.hirschhorn@mongodb.com'}Message: Changes the hang_analyzer.py script to run with root privileges on the (cherry picked from commit 1530cf54fd9db4e9e46e5fdd0b42972cd84b4c25) | |||||||||||||||||||
| Comment by Githook User [ 03/May/17 ] | |||||||||||||||||||
|
Author: {u'username': u'visemet', u'name': u'Max Hirschhorn', u'email': u'max.hirschhorn@mongodb.com'}Message: Changes the hang_analyzer.py script to run with root privileges on the | |||||||||||||||||||
| Comment by Max Hirschhorn [ 29/Mar/17 ] | |||||||||||||||||||
jonathan.abrahams, sure it can. A process (e.g. a mongod) in a pid namespace (e.g. in an LXC container) is still visible to the root namespace (i.e. the host machine).
| |||||||||||||||||||
| Comment by Jonathan Abrahams [ 29/Mar/17 ] | |||||||||||||||||||
|
GDB cannot attach to a process running in an LXC container. Similarly the pkill cannot kill processes active in those containers. |