Skip to content

Debugging the propagation integration test is painful

The PropagationIntegrationTest does a lot of work. Its execution time is somewhat reasonable in "release" -O2 builds, at around a minute here, but that degrades into a painful extreme of 2 hours and a half when run on "debug" -O0 builds, which if the usual 30x orders of magnitude apply means that it would typically take several days to run such a build under a valgrind tool (memcheck, verrou...).

I personally find this a bit concerning, because some bugs are hard to track down on a release builds, even with debugging symbols on. But maybe I'm overreacting an others don't think that this is a problem?

If we do agree that this is a problem, how do we want to approach it? Here are some tentative ideas:

  • Break the test down into multiple sub-programs.
  • Evaluate wisdom of tuning down iteration count in long-running parts.
  • If that loses coverage/physics, then consider allowing the caller of the test to execute or replay only a subset of it (e.g. "re-run iterations 10000 to 10100").
Edited by Hadrien Benjamin Grasland
To upload designs, you'll need to enable LFS and have an admin enable hashed storage. More information