Join GitHub today
GitHub is home to over 40 million developers working together to host and review code, manage projects, and build software together.Sign up
Long-running mono process segfaults #1697
I am having an issue with a shippable build that installs mono, compiles a project, and then runs some integration tests.
Here is an example of a failed build:
The step that fails is using mono to run the xunit console runner against our integration tests DLL. The integration tests are probably the most resource intensive step of our build--it downloads and restores a postgresql database from S3, then spins up local copies of our application (which get linked to a copy of the restored database, and tested by making local web requests against). We have a number of different test suites that run which each get their own copy of the database (to prevent each suite from affecting the data that the others have access to). This takes quite a long time to complete, and has successfully completed in some builds, but more often than not I get a segmentation fault in the mono executable.
When I load up ubuntu1404_base into a local docker container on my machine and run all of the commands from my shippable yml file locally, everything works fine every time (no seg faults), which leads me to believe there is some difference or perhaps some limitation being imposed on the process when Shippable runs it, but I am at a loss with trying to figure out how to debug or track this problem down.
Any help, suggestions, or guidance would be appreciated.
Despite several different approaches and attempts, we have been unable to get mono working at all on Shippable. The following scenarios all result in random segfaults while executing mono processes:
We also tried a
The only way we have been able to work around this issue is to offload the build process into another externally hosted container. Our commands in the
Obviously this is highly inefficient and sub-optimal, but without being able to run mono reliably directly on the Shippable containers it seems to be our only option. We would still prefer to avoid having to run our own external build servers in AWS if Shippable can fix the problems with mono.