Add CI job that runs unit tests under rr's chaos mode #18979

issue practicalswift opened this issue on May 15, 2020
  1. practicalswift commented at 5:52 AM on May 15, 2020: contributor

    As noted in #16337 (comment) rr's chaos mode can be used to trigger some classes of intermittent bugs in unit tests (such as bugs related to scheduling non-determinism).

    It would be nice to have a CI job running under chaos mode to increase the likelihood of us finding such issues.

    I think this is a "good first issue" :)


    Context for those new to rr and its "chaos mode":

    rr aspires to be your primary C/C++ debugging tool for Linux, replacing — well, enhancing — gdb. You record a failure once, then debug the recording, deterministically, as many times as you want. The same execution is replayed every time. -- https://rr-project.org/

    Chaos mode to make intermittent bugs more reproducible. -- https://robert.ocallahan.org/2016/02/introducing-rr-chaos-mode.html

    Personally I think rr is a fantastic piece of software which is right up there with projects such as libFuzzer and the sanitizers (ASan, MSan, TSan, UBSan) when it comes to its potential to help us produce robust and secure software. Highly recommended!

  2. chrdevmar commented at 8:20 AM on May 15, 2020: none

    keen to give this a crack

  3. fanquake added the label Tests on May 15, 2020
  4. MarcoFalke commented at 12:16 AM on May 16, 2020: member

    I don't think this works. Is there any ci provider out there that comes with rr support?

    dmesg | grep PMU
    [    0.519557] Performance Events: unsupported p6 CPU model 63 no PMU driver, software events only.
    
  5. MarcoFalke commented at 5:53 PM on May 19, 2020: member

    Closing for now. rr is only supported on specific intel CPUs. AMD ryzen or any virtual CPU is not supported.

  6. MarcoFalke closed this on May 19, 2020

  7. DrahtBot locked this on Feb 15, 2022

github-metadata-mirror

This is a metadata mirror of the GitHub repository bitcoin/bitcoin. This site is not affiliated with GitHub. Content is generated from a GitHub metadata backup.
generated: 2026-04-16 15:14 UTC

This site is hosted by @0xB10C
More mirrored repositories can be found on mirror.b10c.me