[SERVER-23959] option to allow disabling job object creation in smoke.py for win32 Created: 27/Apr/16 Updated: 05/Apr/17 Resolved: 02/Feb/17 |
|
| Status: | Closed |
| Project: | Core Server |
| Component/s: | Testing Infrastructure |
| Affects Version/s: | 2.6.12, 3.0.11 |
| Fix Version/s: | 2.6.13, 3.0.15, 3.2.13, 3.4.3, 3.5.3 |
| Type: | Improvement | Priority: | Major - P3 |
| Reporter: | Ernie Hershey | 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 Completed: | |||||||||||||||||||||||||||||
| Backport Requested: |
v3.4, v3.2, v3.0
|
||||||||||||||||||||||||||||
| Sprint: | TIG 2017-01-02, TIG 2017-02-13 | ||||||||||||||||||||||||||||
| Participants: | |||||||||||||||||||||||||||||
| Description |
|
We should do the same thing in smoke.py (in v3.0 and v2.6 branches) that resmoke does and not create new job objects if it's already running in one. That will allow us to use Evergreen's sophisticated process cleanup logic and remove pkill lines from evergreen.yml that clutter it up. |
| Comments |
| Comment by Githook User [ 14/Feb/17 ] |
|
Author: {u'username': u'visemet', u'name': u'Max Hirschhorn', u'email': u'max.hirschhorn@mongodb.com'}Message: Changes smoke.py to (like resmoke.py) only create a job object if the (cherry picked from commit dd6acd3551dc9e409a863e517609f2509a0f87f7) |
| Comment by Githook User [ 13/Feb/17 ] |
|
Author: {u'username': u'visemet', u'name': u'Max Hirschhorn', u'email': u'max.hirschhorn@mongodb.com'}Message: Changes smoke.py to (like resmoke.py) only create a job object if the (cherry picked from commit dd6acd3551dc9e409a863e517609f2509a0f87f7) |
| Comment by Githook User [ 13/Feb/17 ] |
|
Author: {u'username': u'visemet', u'name': u'Max Hirschhorn', u'email': u'max.hirschhorn@mongodb.com'}Message: Changes smoke.py to (like resmoke.py) only create a job object if the (cherry picked from commit dd6acd3551dc9e409a863e517609f2509a0f87f7) |
| Comment by Githook User [ 13/Feb/17 ] |
|
Author: {u'username': u'visemet', u'name': u'Max Hirschhorn', u'email': u'max.hirschhorn@mongodb.com'}Message: Changes smoke.py to (like resmoke.py) only create a job object if the (cherry picked from commit dd6acd3551dc9e409a863e517609f2509a0f87f7) |
| Comment by Githook User [ 02/Feb/17 ] |
|
Author: {u'username': u'visemet', u'name': u'Max Hirschhorn', u'email': u'max.hirschhorn@mongodb.com'}Message: Changes smoke.py to (like resmoke.py) only create a job object if the |
| Comment by Mark Benvenuto [ 19/Jan/17 ] |
|
As discussed, since we only need this fix it in a few cases to support tools, and 2.6/3.0 mongo, option 3 is a good choice. If the process is not killed by smoke.py, the process will be killed by the job object in the end. |
| Comment by Max Hirschhorn [ 19/Jan/17 ] |
|
smoke.py currently relies on creating its own job object to ensure the Python process spawned to log output to logkeeper and the mongod process buildlogger.py ends up spawning are both terminated. I've been informed by sam.kleinman the Windows builders in Evergreen are all running Windows Server 2008, despite any display names (e.g. Windows Vista) suggesting otherwise. However, Windows Server 2008 is still too old of a Windows version to support nested job objects, which foils the obvious solution to this issue of assigning the aforementioned processes to multiple job objects.
I've had the following ideas as to how to proceed on this ticket and would appreciate feedback from mark.benvenuto on his thoughts of the least bad option.
|
| Comment by Max Hirschhorn [ 07/Dec/16 ] |
|
I'm moving this into "features we're not sure of" until there's consensus on EVG-1362. |