Autodesk / Autodesk/maya-usd

Early crashes in maya interactive tests marked as successes

Open
#911 1 comment 0 reactions 0 assignees View on GitHub
help wanted
Dominant language
Wolfram Language
Stars
905
Forks
223
Avg merge
2d 5h
Merged PRs (30d)
16

Description

**Describe the issue**
Some types of maya problems will cause it to crash, before even executing any code (ie, `-c command`). In these cases, the exit code for maya will be 0, even if `MAYA_NO_STANDALONE_ATEXIT` is set, which means the test will be marked as a success.

**Reproduction Steps**
The main difficulty is in trying to create a situation that will cause an early maya crash - in my case, it was triggered by adding a non-maya version of the PySide2 python libraries onto the PYTHONPATH.

Once this is done, if you just run any test that runs in INTERACTIVE mode - ie:

```
ctest -R testProxyShapeDrawColors
```

...then you will see maya crash, but the test will seem to succeed.

**Possible Resolutions**
I think the exit code for GUI maya is simply too unreliable (and possibly for non-gui as well?) The most certain would be to switch to a mode where we assume tests are failed unless something indicating success if found - for instance, we could try to make tests write to a certain file, or somehow communicate with some other process...?

**Specs:**
- CentOS 7.7
- gcc 6.3.1
- Maya 2020
- Maya USD commit [d67df19e](https://github.com/Autodesk/maya-usd/commit/d67df19e)
- Pixar USD 20.08 [71b4baac](https://github.com/PixarAnimationStudios/USD/commit/71b4baac)

Contributor guide

No contributing guide indexed for this repository

Research direction

Start by reproducing the failure with `ctest -R testProxyShapeDrawColors` in INTERACTIVE mode after placing incompatible PySide2 libraries on `PYTHONPATH`. Trace how the interactive test interprets Maya's exit status, including the `MAYA_NO_STANDALONE_ATEXIT` path. Done means an early Maya crash is reported as a failed test rather than a success.

Written by the indexing model from the issue text.

Assessment

Tech stack
python
Domain
testing
Issue type
Bug
Difficulty
4/5
Estimated time
3-5 days
Activity status
Stale
Clarity
Needs clarification
Newbie friendliness
35/100

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.