Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Re-introduce complete build matrix in tests #19

Open
mcw92 opened this issue Dec 9, 2024 · 0 comments
Open

Re-introduce complete build matrix in tests #19

mcw92 opened this issue Dec 9, 2024 · 0 comments
Assignees
Labels
maintenance Improve code quality or robustness

Comments

@mcw92
Copy link
Member

mcw92 commented Dec 9, 2024

Currently, some tests seem to fail randomly for MacOS in the workflow, throwing either an MPI error or running into a timeout:

=========================== short test summary info ============================
ERROR tests/test_rf_training_breaking_iid.py::test_breaking_iid[17-True-False-True-True] - FileNotFoundError: [Errno 2] No such file or directory
============= 75 passed, 1 skipped, 48 warnings, 1 error in 35.04s =============
--------------------------------------------------------------------------
MPI_ABORT was invoked on rank 3 in communicator MPI_COMM_WORLD
  Proc: [[3308,1],3]
  Errorcode: 1

NOTE: invoking MPI_ABORT causes Open MPI to kill all MPI processes.
You may or may not see output from other processes, depending on
exactly when Open MPI kills them.
--------------------------------------------------------------------------
--------------------------------------------------------------------------
prterun has exited due to process rank 3 with PID 0 on node Mac-1733739144421 calling
"abort". This may have caused other processes in the application to be
terminated by signals sent by prterun (as reported here).
--------------------------------------------------------------------------
�
Error: Process completed with exit code 1.

The Python versions of the test failing differs among runs. The error might not necessarily be on our end. As I have no idea why that is, I removed MacOS from the build matrix for now. However, it would be great if we could re-include it in a functional version again in the future.
The same applies to matrix testing of different MPI implementations.

The complete build matrix should in principle look like this. It is possible to manually exclude non-working combinations as shown in the last three lines:

jobs:
    build:
        strategy:
          matrix:
            os: ["ubuntu-latest", "macos-latest"]
            python-version: [ "3.10", "3.11", "3.12" ]
            mpi: [ "openmpi", "mpich", "intelmpi"]
            exclude:
              - os: "macos-latest"
                mpi: "intelmpi"
@mcw92 mcw92 added the maintenance Improve code quality or robustness label Dec 9, 2024
@mcw92 mcw92 self-assigned this Dec 9, 2024
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
maintenance Improve code quality or robustness
Projects
None yet
Development

No branches or pull requests

1 participant