golang / vscode-go

Go extension for Visual Studio Code
https://marketplace.visualstudio.com/items?itemName=golang.Go
Other
3.87k stars 751 forks source link

test/integration/goDebug: remote attach test is flaky #1456

Open hyangah opened 3 years ago

hyangah commented 3 years ago

The remote test is flaky and is blocking releases.

    remote attach

Sending initializing request for remote attach setup.

Setting up attach request for {"name":"Attach","type":"go","request":"attach","mode":"remote","host":"127.0.0.1","port":39411,"packagePathToGoModPathMap":{"/home/runner/go/src/test/testfixture":"/home/runner/go/src/test/testfixture","/home/runner/go/src/test/testfixture/baseTest":"","/home/runner/go/src/test/testfixture/gogetdocTestData":"","/home/runner/go/src/test/testfixture/completions":"","/home/runner/go/src/test/testfixture/testTags":"","/tmp/legacy8KOQJ6/testfixture/baseTest":"/tmp/legacy8KOQJ6/testfixture/baseTest","/tmp/legacy8KOQJ6/testfixture/completions":"/tmp/legacy8KOQJ6/testfixture/completions","/tmp/legacy8KOQJ6/testfixture/testTags":"/tmp/legacy8KOQJ6/testfixture/testTags"},"apiVersion":2,"dlvLoadConfig":{"followPointers":true,"maxVariableRecurse":1,"maxStringLen":64,"maxArrayValues":64,"maxStructFields":-1},"showGlobalVariables":false,"cwd":"${workspaceFolder}","debugAdapter":"legacy","dlvToolPath":"/home/runner/go/bin/dlv"}.

Sending configuration done request for remote attach setup.

      ✓ can connect and initialize using external dlv --headless --accept-multiclient=true --continue=true (10310ms)

      1) "after each" hook for "can connect and initialize using external dlv --headless --accept-multiclient=true --continue=true"
      ...

  1) Go Debug Adapter Tests (legacy)
       "after each" hook for "can connect and initialize using external dlv --headless --accept-multiclient=true --continue=true":
     Error: Timeout of 60000ms exceeded. For async tests and hooks, ensure "done()" is called; if returning a Promise, ensure it resolves. (/home/runner/work/vscode-go/vscode-go/out/test/integration/goDebug.test.js)
    at listOnTimeout (internal/timers.js:554:17)
    at processTimers (internal/timers.js:497:7)
suzmue commented 3 years ago

Looks like the flaky issue is in the teardown logic, I'll send a patch to try to mitigate the issue.

gopherbot commented 3 years ago

Change https://golang.org/cl/314289 mentions this issue: test/integration/goDebug: skip remote attach tests

gopherbot commented 3 years ago

Change https://golang.org/cl/314329 mentions this issue: test/integration/goDebug: skip more remote attach tests

gopherbot commented 3 years ago

Change https://golang.org/cl/314389 mentions this issue: .github/workflows: install stable delve version for testing

hyangah commented 3 years ago

Skipping those tests didn't seem to be sufficient. I will retry to release nightly after @suzmue's pending changes to address the underlying issue and cl/314589 are submitted.