Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

test(swingset): use test.serial on GC-sensitive test #4644

Merged
merged 1 commit into from
Feb 23, 2022

Conversation

warner
Copy link
Member

@warner warner commented Feb 23, 2022

We don't understand the root cause, but our gcAndFinalize() doesn't always
work when 1: run on Node.js (not xsnap) and 2: AVA allows tests to run in
parallel. The problem happens somewhat more frequently on 14.x, at least in
CI.

These two tests exercise transcript replay (which needs GC to happen the same
way for both the original delivery and the replay), and compare the
activityHash (which, of course, is sensitive to all syscalls made, including
GC syscalls). They sometimes failed in CI.

We don't fully understand why gcAndFinalize doesn't work, but serializing the
tests (with test.serial) seems to address the problem.

refs #3240
closes #4617

We don't understand the root cause, but our `gcAndFinalize()` doesn't always
work when 1: run on Node.js (not xsnap) and 2: AVA allows tests to run in
parallel. The problem happens somewhat more frequently on 14.x, at least in
CI.

These two tests exercise transcript replay (which needs GC to happen the same
way for both the original delivery and the replay), and compare the
activityHash (which, of course, is sensitive to all syscalls made, including
GC syscalls). They sometimes failed in CI.

We don't fully understand why gcAndFinalize doesn't work, but serializing the
tests (with test.serial) seems to address the problem.

refs #3240
closes #4617
@warner warner added the SwingSet package: SwingSet label Feb 23, 2022
@warner warner requested a review from michaelfig February 23, 2022 04:03
@warner warner self-assigned this Feb 23, 2022
@warner warner added the automerge:rebase Automatically rebase updates, then merge label Feb 23, 2022
@mergify mergify bot merged commit bf4462b into master Feb 23, 2022
@mergify mergify bot deleted the 4617-nondeterminsitic-test branch February 23, 2022 04:24
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
automerge:rebase Automatically rebase updates, then merge SwingSet package: SwingSet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

Nondeterministic SwingSet historical inaccuracy in CI
2 participants