From 14af542e35afe769609119cc0a298d7257c92ee6 Mon Sep 17 00:00:00 2001 From: Brian Warner Date: Sat, 1 Apr 2023 15:16:07 -0700 Subject: [PATCH] test-terminate(-replay): reduce GC sensitivity I saw a test failure here, "historical inaccuracy in replay", which might have been due to GC happening one way in the original, and a different way in the replay (when running under Node.js). This feels like an aspect of #5575, and this test isn't trying to exercise anything about GC, so I'm just going to set defaultReapInterval to 'never' to inhibit BOYD, which should remove the problem. --- .../test/vat-admin/terminate/test-terminate-replay.js | 1 + .../SwingSet/test/vat-admin/terminate/test-terminate.js | 7 +++++++ 2 files changed, 8 insertions(+) diff --git a/packages/SwingSet/test/vat-admin/terminate/test-terminate-replay.js b/packages/SwingSet/test/vat-admin/terminate/test-terminate-replay.js index 180b92c58a41..5fc20b1eaa06 100644 --- a/packages/SwingSet/test/vat-admin/terminate/test-terminate-replay.js +++ b/packages/SwingSet/test/vat-admin/terminate/test-terminate-replay.js @@ -19,6 +19,7 @@ test.serial('replay does not resurrect dead vat', async t => { const configPath = new URL('swingset-no-zombies.json', import.meta.url) .pathname; const config = await loadSwingsetConfigFile(configPath); + config.defaultReapInterval = 'never'; const ss1 = initSwingStore(); { diff --git a/packages/SwingSet/test/vat-admin/terminate/test-terminate.js b/packages/SwingSet/test/vat-admin/terminate/test-terminate.js index 1bc8c73572c0..d0115310a6d4 100644 --- a/packages/SwingSet/test/vat-admin/terminate/test-terminate.js +++ b/packages/SwingSet/test/vat-admin/terminate/test-terminate.js @@ -41,6 +41,7 @@ async function doTerminateNonCritical( const configPath = new URL('swingset-terminate.json', import.meta.url) .pathname; const config = await loadSwingsetConfigFile(configPath); + config.defaultReapInterval = 'never'; const kernelStorage = initSwingStore().kernelStorage; const controller = await buildVatController(config, [], { ...t.context.data, @@ -104,6 +105,7 @@ async function doTerminateCritical( const configPath = new URL('swingset-terminate.json', import.meta.url) .pathname; const config = await loadSwingsetConfigFile(configPath); + config.defaultReapInterval = 'never'; const kernelStorage = initSwingStore().kernelStorage; const controller = await buildVatController(config, [], { ...t.context.data, @@ -374,6 +376,7 @@ test.serial('exit with presence', async t => { const configPath = new URL('swingset-die-with-presence.json', import.meta.url) .pathname; const config = await loadSwingsetConfigFile(configPath); + config.defaultReapInterval = 'never'; const controller = await buildVatController(config, [], t.context.data); t.teardown(controller.shutdown); await controller.run(); @@ -389,6 +392,7 @@ test.serial('dispatches to the dead do not harm kernel', async t => { const configPath = new URL('swingset-speak-to-dead.json', import.meta.url) .pathname; const config = await loadSwingsetConfigFile(configPath); + config.defaultReapInterval = 'never'; const ss1 = initSwingStore(); { @@ -432,6 +436,7 @@ test.serial('invalid criticalVatKey causes vat creation to fail', async t => { const configPath = new URL('swingset-bad-vat-key.json', import.meta.url) .pathname; const config = await loadSwingsetConfigFile(configPath); + config.defaultReapInterval = 'never'; const controller = await buildVatController(config, [], t.context.data); t.teardown(controller.shutdown); await t.throwsAsync(() => controller.run(), { @@ -443,6 +448,7 @@ test.serial('dead vat state removed', async t => { const configPath = new URL('swingset-die-cleanly.json', import.meta.url) .pathname; const config = await loadSwingsetConfigFile(configPath); + config.defaultReapInterval = 'never'; const { kernelStorage, debug } = initSwingStore(); const controller = await buildVatController(config, [], { @@ -480,6 +486,7 @@ test.serial('terminate with presence', async t => { import.meta.url, ).pathname; const config = await loadSwingsetConfigFile(configPath); + config.defaultReapInterval = 'never'; const controller = await buildVatController(config, [], t.context.data); t.teardown(controller.shutdown); await controller.run();