Skip to content

[workaround provided] Snakemake sometimes crashes with Pulp error #1

@pverscha

Description

@pverscha

On some systems (especially when running the Peptonizer in a Docker container), snakemake crashes with the following error:

pulp.apis.core.PulpSolverError: Pulp: Error while trying to execute, use msg=True for more details

This error is due to a specific version of the coincbc solver package that's being used by Snakemake and Pulp that's corrupt on these systems. You can verify that this is indeed the issue by running cbc in the terminal. If it returns segmentation fault, it means that it is corrupt.

If you encounter this issue, you can overcome the problem by installing coincbc directly from the Ubuntu package repository (or the package repository applicable to your system). More concrete, follow these steps:

  1. Run sudo apt update
  2. Run sudo apt install coinor-cbc=2.10.7+ds1-1 coinor-libcbc-dev=2.10.7+ds1-1
  3. Make sure that the Peptonizer conda environment is active (run conda activate peptonizer if not). At this point, you should have also followed all the steps on how to install the Peptonizer that can be found in the README.
  4. Check the path in which cbc is installed: which cbc. Copy this path. By default, it should be /opt/conda/envs/peptonizer/bin/cbc.
  5. Replace the corrupt cbc executable used by snakemake with the system-wide executable you installed with apt by running rm /opt/conda/envs/peptonizer/bin/cbc && ln -s /usr/bin/cbc /opt/conda/envs/peptonizer/bin/cbc.
  6. That's it!

Metadata

Metadata

Assignees

No one assigned

    Labels

    bugSomething isn't working

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions