openhpc/ohpc

Dependency issue with papi-ohpc

Closed this issue · 3 comments

Installing ohpc-gnu9-perf-tools and dependencies downgrades papi-ohpc from 6.0 to 5.7. The next time you dnf update you get the following.

Error:
Problem: package scorep-gnu9-mpich-ohpc-6.0-3.1.ohpc.2.0.x86_64 requires libpapi.so.5()(64bit)(ohpc), but none of the providers can be installed

  • cannot install both papi-ohpc-6.0.0-1.3.ohpc.2.6.x86_64 and papi-ohpc-5.7.0-3.12.ohpc.2.0.x86_64
  • cannot install the best update candidate for package scorep-gnu9-mpich-ohpc-6.0-3.1.ohpc.2.0.x86_64
  • cannot install the best update candidate for package papi-ohpc-5.7.0-3.12.ohpc.2.0.x86_64
    (try to add '--allowerasing' to command line to replace conflicting packages or '--skip-broken' to skip uninstallable packages or '--nobest' to use not only best candidate packages)

[root@thor2-head security]# dnf upgrade papi-ohpc
Last metadata expiration check: 0:49:58 ago on Fri Feb 17 14:13:17 2023.
Error:
Problem: problem with installed package tau-gnu9-openmpi4-ohpc-2.29-6.1.ohpc.2.0.x86_64

  • package tau-gnu9-openmpi4-ohpc-2.29-6.1.ohpc.2.0.x86_64 requires libpapi.so.5()(64bit)(ohpc), but none of the providers can be installed
  • cannot install both papi-ohpc-6.0.0-1.3.ohpc.2.6.x86_64 and papi-ohpc-5.7.0-3.12.ohpc.2.0.x86_64
  • cannot install the best update candidate for package papi-ohpc-5.7.0-3.12.ohpc.2.0.x86_64
    (try to add '--allowerasing' to command line to replace conflicting packages or '--skip-broken' to skip uninstallable packages or '--nobest' to use not only best candidate packages)

Thanks for reporting this. This is indeed an error from our side and I am not sure how to avoid this.

We currently have no way to handle something like this. This means we have to make sure that a dependency like papi cannot change the SO name during a major release.

DLL hell basically ;-)

We can create a compatibility package for the 2.7 release to unbreak the repository.

Maybe running repoclosure before a release would help to catch problems like this.