Skip to content

Conversation

@Icelandjack
Copy link
Contributor

Description

The benchmarking suite would get blocked indefinitely on MVar:

cardano-tracer-bench: ExceptionInLinkedThread (ThreadId 8) thread blocked indefinitely in an MVar operation
Benchmark cardano-tracer-bench: ERROR

The solution was to wrap each test in beforeProgramStops. It also makes minor changes:

  • Adds two "full" profiles trace-full and trace-full-rtview which run longer (45 blocks synced).

  • Adds common language extensions, like BlockArguments, ImportQualifiedPost (and update some code accordingly).

  • Make Criterion as verbose: This can be overridden by --verbosity={0,1,2}:

    cabal bench cardano-tracer --benchmark-options=--verbosity=0
    

Checklist

  • Commit sequence broadly makes sense and commits have useful messages
  • New tests are added if needed and existing tests are updated. These may include:
    • golden tests
    • property tests
    • roundtrip tests
    • integration tests
      See Runnings tests for more details
  • Any changes are noted in the CHANGELOG.md for affected package
  • The version bounds in .cabal files are updated
  • CI passes. See note on CI. The following CI checks are required:
    • Code is linted with hlint. See .github/workflows/check-hlint.yml to get the hlint version
    • Code is formatted with stylish-haskell. See .github/workflows/stylish-haskell.yml to get the stylish-haskell version
    • Code builds on Linux, MacOS and Windows for ghc-8.10.7 and ghc-9.2.7
  • Self-reviewed the diff

Note on CI

If your PR is from a fork, the necessary CI jobs won't trigger automatically for security reasons.
You will need to get someone with write privileges. Please contact IOG node developers to do this
for you.

@mgmeier
Copy link
Contributor

mgmeier commented Dec 16, 2023

Superseded by #5554 .

@mgmeier mgmeier closed this Dec 16, 2023
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

3 participants