spin icon indicating copy to clipboard operation
spin copied to clipboard

Re-enable MQTT and Postgres tests

Open itowlson opened this issue 1 year ago • 4 comments

Both of these are currently ignored out for being flaky.

We should figure out why they are flaky. And then we should fix it and re-enable them.

itowlson avatar Nov 05 '24 18:11 itowlson

I tried to reproduce this, and they no longer appear to be flaky. any way to reproduce this?

cc: @kate-goldenring

PhantomInTheWire avatar Jun 17 '25 21:06 PhantomInTheWire

Following up with more context on my attempt to reproduce this:

  • OS: macOS 15.5(Apple Silicon, arm64)

  • Steps Taken:

    • I enabled the previously ignored tests by modifying tests/runtime.rs as follows:
    @@ -10,8 +10,8 @@ mod runtime_tests {
         ignore: [
             // This test is flaky. Often gets "Connection reset by peer" errors.
             // https://github.com/spinframework/spin/issues/2265
    -        "outbound-postgres",
    -        "outbound-postgres-variable-permission"
    +        // "outbound-postgres",
    +        // "outbound-postgres-variable-permission"
         ]
     );
    
    @@ -28,7 +28,7 @@ mod runtime_tests {
    
         #[test]
         fn conformance_tests() -> anyhow::Result<()> {
    -        let config = conformance_tests::Config::new("canary").ignore("outbound-mqtt");
    +        let config = conformance_tests::Config::new("canary");
             let conclusion = conformance_tests::run_tests(config, move |test| {
                 conformance::run_test(test, &spin_binary())
             })?;
    
  • Command Run: cargo test runtime

  • Outcome: MQTT and postgres tests passed without any failures or flaky behavior on my setup.

Let me know if there are additional environment variables, external dependencies, or setup steps I should be using to trigger the failure.

PhantomInTheWire avatar Jun 17 '25 21:06 PhantomInTheWire

@PhantomInTheWire Thanks for looking into this! My memory of this issue is that the tests were generally reliable locally, but were flaky enough in GitHub Actions to be annoying (although I can't remember exactly how flaky).

So I don't think there's anything more you can test locally - probably the next step is to send a PR with the tests turned back on, re-run the PR actions a few times, and see if we see errors. Not a very lovely way to investigate the issue, I know...!

itowlson avatar Jun 17 '25 21:06 itowlson

Thanks, @itowlson — that makes sense! I’ved opened a PR with the tests re-enabled and monitor the CI runs for any flakiness.

PhantomInTheWire avatar Jun 17 '25 21:06 PhantomInTheWire