Skip to content

x/tools/gopls: high memory consumption on 19MLoC input #73709

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

Open
bytemain opened this issue May 14, 2025 · 15 comments
Open

x/tools/gopls: high memory consumption on 19MLoC input #73709

bytemain opened this issue May 14, 2025 · 15 comments
Labels
BugReport Issues describing a possible bug in the Go implementation. gopls/performance Issues related to gopls performance (CPU, memory, etc). gopls Issues related to the Go language server, gopls. Tools This label describes issues relating to any tools in the x/tools repository.
Milestone

Comments

@bytemain
Copy link

bytemain commented May 14, 2025

gopls version

Build info
----------
golang.org/x/tools/gopls v0.18.1
    golang.org/x/tools/[email protected] h1:2xJBNzdImS5u/kV/ZzqDLSvlBSeZX+pWY9uKVP7Pask=
    github.com/BurntSushi/[email protected] h1:pxW6RcqyfI9/kWtOwnv/G+AzdKuy2ZrqINhenH4HyNs=
    github.com/google/[email protected] h1:ofyhxvXcZhMsU5ulbFiLKl/XBFqE1GSq7atu8tAmTRI=
    golang.org/x/exp/[email protected] h1:1xaZTydL5Gsg78QharTwKfA9FY9CZ1VQj6D/AZEvHR0=
    golang.org/x/[email protected] h1:Zb7khfcRGKk+kqfxFaP5tZqCnDZMjC5VtUBs87Hr6QM=
    golang.org/x/[email protected] h1:GGz8+XQP4FvTTrjZPzNKTMFtSXH80RAzG+5ghFPgK9w=
    golang.org/x/[email protected] h1:L2k9GUV2TpQKVRGMjN94qfUMgUwOFimSQ6gipyJIjKw=
    golang.org/x/[email protected] h1:bofq7m3/HAFvbF51jz3Q9wLg3jkvSPuiZu/pD1XwgtM=
    golang.org/x/[email protected] h1:Ja/5gV5a9Vvho3p2NC/T2TtxhHjrWS/2DvCKMvA0a+Y=
    golang.org/x/[email protected] h1:NPGnvPOTgnjBc9HTaUx+nj+EaUYxl5SJOWqaDYGaFYw=
    honnef.co/go/[email protected] h1:4bH5o3b5ZULQ4UrBmP+63W9r7qIkqJClEA9ko5YKx+I=
    mvdan.cc/[email protected] h1:bg91ttqXmi9y2xawvkuMXyvAA/1ZGJqYAEGjXuP0JXU=
    mvdan.cc/xurls/[email protected] h1:lyBNOm8Wo71UknhUs4QTFUNNMyxy2JEIaKKo0RWOh+8=
go: go1.23.9

go env

GO111MODULE=''
GOARCH='arm64'
GOBIN=''
GOCACHE='/Users/bytedance/Library/Caches/go-build'
GOENV='/Users/bytedance/Library/Application Support/go/env'
GOEXE=''
GOEXPERIMENT=''
GOFLAGS=''
GOHOSTARCH='arm64'
GOHOSTOS='darwin'
GOINSECURE=''
GOMODCACHE='/Users/bytedance/go/pkg/mod'
GOOS='darwin'
GOPATH='/Users/bytedance/go'
GOPROXY='https://goproxy.cn|direct'
GOROOT='/Users/bytedance/sdk/go1.22.12'
GOSUMDB='sum.golang.google.cn'
GOTMPDIR=''
GOTOOLCHAIN='auto'
GOTOOLDIR='/Users/bytedance/sdk/go1.22.12/pkg/tool/darwin_arm64'
GOVCS=''
GOVERSION='go1.22.12'
GCCGO='gccgo'
AR='ar'
CC='clang'
CXX='clang++'
CGO_ENABLED='1'
GOMOD='[redacted]/go.mod'
GOWORK=''
CGO_CFLAGS='-O2 -g'
CGO_CPPFLAGS=''
CGO_CXXFLAGS='-O2 -g'
CGO_FFLAGS='-O2 -g'
CGO_LDFLAGS='-O2 -g'
PKG_CONFIG='pkg-config'
GOGCCFLAGS='-fPIC -arch arm64 -pthread -fno-caret-diagnostics -Qunused-arguments -fmessage-length=0 -ffile-prefix-map=/var/folders/fz/2x5883ld6c98wqhkgkzyxp_c0000gn/T/go-build8745845=/tmp/go-build -gno-record-gcc-switches -fno-common'

What did you do?

Open project in vscode, when first time open, it will consume nearly 40gb memory.

it can be reproduced if clean gopls cache and open the program again:

rm -rf ~/Library/Caches/gopls

VSCode says it Analyzing Dependencies.

Image

What did you see happen?

Image

and the UI of VSCode is very laggy

What did you expect to see?

Normal memory consumption.

Editor and settings

{
    "database-client.autoSync": true,
    "netbeans.javaSupport.enabled": false,
    "vsicons.dontShowNewVersionMessage": true,
    "makefile.configureOnOpen": true,
    "go.languageServerFlags": [
        "-debug=localhost:8080",
        "-logfile",
        "-rpc.trace"
    ]
}

Logs

gopls stats
Initializing workspace...     done (15.325508083s)
Gathering bug reports...      done (609.709ms)
Querying memstats...          done (261.94525ms)
Querying workspace stats...   done (10.897667ms)
Collecting directory info...  done (15.071791ms)
{
  "BugReports": [],
  "CacheDir": "/Users/bytedance/Library/Caches/gopls/c65eb5cd",
  "DirStats": {
    "Files": 369,
    "TestdataFiles": 0,
    "GoFiles": 319,
    "ModFiles": 2,
    "Dirs": 152
  },
  "GOARCH": "arm64",
  "GOOS": "darwin",
  "GOPACKAGESDRIVER": "",
  "GOPLSCACHE": "",
  "GoVersion": "go1.23.9",
  "GoplsVersion": "v0.18.1",
  "InitialWorkspaceLoadDuration": "15.325508083s",
  "MemStats": {
    "HeapAlloc": 1763848432,
    "HeapInUse": 1901535232,
    "TotalAlloc": 35196170592
  },
  "WorkspaceStats": {
    "Files": {
      "Total": 14909,
      "Largest": 12682118,
      "Errs": 0
    },
    "Views": [
      {
        "GoCommandVersion": "go1.22.12",
        "AllPackages": {
          "Packages": 3290,
          "LargestPackage": 293,
          "CompiledGoFiles": 14933,
          "Modules": 574
        },
        "WorkspacePackages": {
          "Packages": 120,
          "LargestPackage": 29,
          "CompiledGoFiles": 339,
          "Modules": 1
        },
        "Diagnostics": 42
      }
    ]
  }
}

Allocated bytes 29,696,939,920
Total allocated bytes 83,021,201,064
System bytes 31,415,423,896
Heap system bytes 30,857,355,264
Malloc calls 639,069,318
Frees 331,351,033
Idle heap bytes 890,183,680
In use bytes 29,967,171,584
Released to system bytes 15,228,928
Heap object count 307,718,285
Stack in use bytes 3,571,712
Stack from system bytes 3,571,712
Bucket hash bytes 11,253,092
GC metadata bytes 225,733,064
Off heap bytes 30,899,644

and cannot see the gopls.1234-5GiB-withnames.zip file in $TMPDIR

Image

As it is the company's code, I handled some sensitive information in the log.

gopls.log

@bytemain bytemain added gopls Issues related to the Go language server, gopls. Tools This label describes issues relating to any tools in the x/tools repository. labels May 14, 2025
@gopherbot gopherbot added this to the Unreleased milestone May 14, 2025
@bytemain
Copy link
Author

bytemain commented May 14, 2025

Profile

Types of profiles available:

Count Profile
23878 allocs
0 block
0 cmdline
214 goroutine
23879 heap
0 mutex
0 profile
45 threadcreate
0 trace

allocs

The size of the allocs.log is 170M.

just paste some code of it:

heap profile: 37325: 7892240472 [141255: 36703951328] @ heap/1048576
0: 0 [1: 96] @ 0x1032a6db8 0x1032a85dc 0x1032a9ad0 0x1032a78c8 0x1032a65ac 0x1032a8c84 0x1032a6e58 0x1032a85dc 0x1032a8790 0x1032a6e58 0x1032a85dc 0x1032a87f0 0x1032a6e58 0x1032a85dc 0x1032a93cc 0x1032a6e58 0x1032a77e8 0x1032a65ac 0x1032a8c84 0x1032a6e58 0x1032a85dc 0x1032a8790 0x1032a6e58 0x1032a85dc 0x1032a93cc 0x1032a6e58 0x1032a77e8 0x1032a65ac 0x1032a8c84 0x1032a6e58 0x1032a85dc 0x1032a8790 0x1032a6e58 0x1032a85dc 0x1032a87f0 0x1032a6e58 0x1032a85dc 0x1032a93cc 0x1032a6e58 0x1032a77e8 0x1032a65ac 0x1032a5da8 0x10329f648 0x103472f88 0x103471d90 0x1034b6b10 0x103471b90 0x10347329c 0x1032a5600 0x10329f648 0x103472f88 0x103471d90 0x1034b6b10 0x103471b90 0x10347329c 0x1032a5600 0x10329f648 0x103472f88 0x103471d90 0x1034b6b10 0x103471b90 0x10347329c 0x1032a5600 0x10329f648 0x103472f88 0x103471d90 0x1034b6b10 0x103471b90 0x10347329c 0x1032a5600 0x10329f648 0x103472f88 0x103471d90 0x1034b6b10 0x103471b90 0x10347329c 0x1032a5600 0x10329f648 0x103472f88 0x103471d90 0x1034b6b10 0x103471b90 0x10347329c 0x1032a5600 0x10329f648 0x103472f88 0x103471d90 0x1034b6b10 0x103471b90 0x10347329c 0x1032a5600 0x10329f648 0x103472f88 0x103471d90 0x1034b6b10 0x103471b90 0x10347329c 0x1032a5600 0x10329f648 0x103472f88 0x103471d90 0x1034b6b10 0x103471b90 0x10347329c 0x1032a5600 0x10329f648 0x103472f88 0x103471d90 0x1034b6b10 0x103471b90 0x103472590 0x102d7dd34 0x102cc8844
#	0x1032a6db7	golang.org/x/tools/internal/gcimporter.(*iimporter).typAt+0x77				/Users/bytedance/go/pkg/mod/golang.org/x/[email protected]/internal/gcimporter/iimport.go:522
#	0x1032a85db	golang.org/x/tools/internal/gcimporter.(*importReader).typ+0x3b				/Users/bytedance/go/pkg/mod/golang.org/x/[email protected]/internal/gcimporter/iimport.go:864
#	0x1032a9acf	golang.org/x/tools/internal/gcimporter.(*importReader).param+0x3f			/Users/bytedance/go/pkg/mod/golang.org/x/[email protected]/internal/gcimporter/iimport.go:1083
#	0x1032a78c7	golang.org/x/tools/internal/gcimporter.(*importReader).obj+0x867			/Users/bytedance/go/pkg/mod/golang.org/x/[email protected]/internal/gcimporter/iimport.go:618
#	0x1032a65ab	golang.org/x/tools/internal/gcimporter.(*iimporter).doDecl+0x14b			/Users/bytedance/go/pkg/mod/golang.org/x/[email protected]/internal/gcimporter/iimport.go:437
#	0x1032a8c83	golang.org/x/tools/internal/gcimporter.(*importReader).doType+0x543			/Users/bytedance/go/pkg/mod/golang.org/x/[email protected]/internal/gcimporter/iimport.go:892
#	0x1032a6e57	golang.org/x/tools/internal/gcimporter.(*iimporter).typAt+0x117				/Users/bytedance/go/pkg/mod/golang.org/x/[email protected]/internal/gcimporter/iimport.go:524
#	0x1032a85db	golang.org/x/tools/internal/gcimporter.(*importReader).typ+0x3b				/Users/bytedance/go/pkg/mod/golang.org/x/[email protected]/internal/gcimporter/iimport.go:864
#	0x1032a878f	golang.org/x/tools/internal/gcimporter.(*importReader).doType+0x4f			/Users/bytedance/go/pkg/mod/golang.org/x/[email protected]/internal/gcimporter/iimport.go:895
#	0x1032a6e57	golang.org/x/tools/internal/gcimporter.(*iimporter).typAt+0x117				/Users/bytedance/go/pkg/mod/golang.org/x/[email protected]/internal/gcimporter/iimport.go:524
#	0x1032a85db	golang.org/x/tools/internal/gcimporter.(*importReader).typ+0x3b				/Users/bytedance/go/pkg/mod/golang.org/x/[email protected]/internal/gcimporter/iimport.go:864
#	0x1032a87ef	golang.org/x/tools/internal/gcimporter.(*importReader).doType+0xaf			/Users/bytedance/go/pkg/mod/golang.org/x/[email protected]/internal/gcimporter/iimport.go:897
#	0x1032a6e57	golang.org/x/tools/internal/gcimporter.(*iimporter).typAt+0x117				/Users/bytedance/go/pkg/mod/golang.org/x/[email protected]/internal/gcimporter/iimport.go:524
#	0x1032a85db	golang.org/x/tools/internal/gcimporter.(*importReader).typ+0x3b				/Users/bytedance/go/pkg/mod/golang.org/x/[email protected]/internal/gcimporter/iimport.go:864
#	0x1032a93cb	golang.org/x/tools/internal/gcimporter.(*importReader).doType+0xc8b			/Users/bytedance/go/pkg/mod/golang.org/x/[email protected]/internal/gcimporter/iimport.go:923
#	0x1032a6e57	golang.org/x/tools/internal/gcimporter.(*iimporter).typAt+0x117				/Users/bytedance/go/pkg/mod/golang.org/x/[email protected]/internal/gcimporter/iimport.go:524
#	0x1032a77e7	golang.org/x/tools/internal/gcimporter.(*importReader).obj+0x787			/Users/bytedance/go/pkg/mod/golang.org/x/[email protected]/internal/gcimporter/iimport.go:611
#	0x1032a65ab	golang.org/x/tools/internal/gcimporter.(*iimporter).doDecl+0x14b			/Users/bytedance/go/pkg/mod/golang.org/x/[email protected]/internal/gcimporter/iimport.go:437
#	0x1032a8c83	golang.org/x/tools/internal/gcimporter.(*importReader).doType+0x543			/Users/bytedance/go/pkg/mod/golang.org/x/[email protected]/internal/gcimporter/iimport.go:892
#	0x1032a6e57	golang.org/x/tools/internal/gcimporter.(*iimporter).typAt+0x117				/Users/bytedance/go/pkg/mod/golang.org/x/[email protected]/internal/gcimporter/iimport.go:524
#	0x1032a85db	golang.org/x/tools/internal/gcimporter.(*importReader).typ+0x3b				/Users/bytedance/go/pkg/mod/golang.org/x/[email protected]/internal/gcimporter/iimport.go:864
#	0x1032a878f	golang.org/x/tools/internal/gcimporter.(*importReader).doType+0x4f			/Users/bytedance/go/pkg/mod/golang.org/x/[email protected]/internal/gcimporter/iimport.go:895
#	0x1032a6e57	golang.org/x/tools/internal/gcimporter.(*iimporter).typAt+0x117				/Users/bytedance/go/pkg/mod/golang.org/x/[email protected]/internal/gcimporter/iimport.go:524
#	0x1032a85db	golang.org/x/tools/internal/gcimporter.(*importReader).typ+0x3b				/Users/bytedance/go/pkg/mod/golang.org/x/[email protected]/internal/gcimporter/iimport.go:864
#	0x1032a93cb	golang.org/x/tools/internal/gcimporter.(*importReader).doType+0xc8b			/Users/bytedance/go/pkg/mod/golang.org/x/[email protected]/internal/gcimporter/iimport.go:923
#	0x1032a6e57	golang.org/x/tools/internal/gcimporter.(*iimporter).typAt+0x117				/Users/bytedance/go/pkg/mod/golang.org/x/[email protected]/internal/gcimporter/iimport.go:524
#	0x1032a77e7	golang.org/x/tools/internal/gcimporter.(*importReader).obj+0x787			/Users/bytedance/go/pkg/mod/golang.org/x/[email protected]/internal/gcimporter/iimport.go:611
#	0x1032a65ab	golang.org/x/tools/internal/gcimporter.(*iimporter).doDecl+0x14b			/Users/bytedance/go/pkg/mod/golang.org/x/[email protected]/internal/gcimporter/iimport.go:437
#	0x1032a8c83	golang.org/x/tools/internal/gcimporter.(*importReader).doType+0x543			/Users/bytedance/go/pkg/mod/golang.org/x/[email protected]/internal/gcimporter/iimport.go:892
#	0x1032a6e57	golang.org/x/tools/internal/gcimporter.(*iimporter).typAt+0x117				/Users/bytedance/go/pkg/mod/golang.org/x/[email protected]/internal/gcimporter/iimport.go:524
#	0x1032a85db	golang.org/x/tools/internal/gcimporter.(*importReader).typ+0x3b				/Users/bytedance/go/pkg/mod/golang.org/x/[email protected]/internal/gcimporter/iimport.go:864
#	0x1032a878f	golang.org/x/tools/internal/gcimporter.(*importReader).doType+0x4f			/Users/bytedance/go/pkg/mod/golang.org/x/[email protected]/internal/gcimporter/iimport.go:895
#	0x1032a6e57	golang.org/x/tools/internal/gcimporter.(*iimporter).typAt+0x117				/Users/bytedance/go/pkg/mod/golang.org/x/[email protected]/internal/gcimporter/iimport.go:524
#	0x1032a85db	golang.org/x/tools/internal/gcimporter.(*importReader).typ+0x3b				/Users/bytedance/go/pkg/mod/golang.org/x/[email protected]/internal/gcimporter/iimport.go:864
#	0x1032a87ef	golang.org/x/tools/internal/gcimporter.(*importReader).doType+0xaf			/Users/bytedance/go/pkg/mod/golang.org/x/[email protected]/internal/gcimporter/iimport.go:897
#	0x1032a6e57	golang.org/x/tools/internal/gcimporter.(*iimporter).typAt+0x117				/Users/bytedance/go/pkg/mod/golang.org/x/[email protected]/internal/gcimporter/iimport.go:524
#	0x1032a85db	golang.org/x/tools/internal/gcimporter.(*importReader).typ+0x3b				/Users/bytedance/go/pkg/mod/golang.org/x/[email protected]/internal/gcimporter/iimport.go:864
#	0x1032a93cb	golang.org/x/tools/internal/gcimporter.(*importReader).doType+0xc8b			/Users/bytedance/go/pkg/mod/golang.org/x/[email protected]/internal/gcimporter/iimport.go:923
#	0x1032a6e57	golang.org/x/tools/internal/gcimporter.(*iimporter).typAt+0x117				/Users/bytedance/go/pkg/mod/golang.org/x/[email protected]/internal/gcimporter/iimport.go:524
#	0x1032a77e7	golang.org/x/tools/internal/gcimporter.(*importReader).obj+0x787			/Users/bytedance/go/pkg/mod/golang.org/x/[email protected]/internal/gcimporter/iimport.go:611
#	0x1032a65ab	golang.org/x/tools/internal/gcimporter.(*iimporter).doDecl+0x14b			/Users/bytedance/go/pkg/mod/golang.org/x/[email protected]/internal/gcimporter/iimport.go:437
#	0x1032a5da7	golang.org/x/tools/internal/gcimporter.iimportCommon+0xf27				/Users/bytedance/go/pkg/mod/golang.org/x/[email protected]/internal/gcimporter/iimport.go:333
#	0x10329f647	golang.org/x/tools/internal/gcimporter.IImportShallow+0x37				/Users/bytedance/go/pkg/mod/golang.org/x/[email protected]/internal/gcimporter/iexport.go:305
#	0x103472f87	golang.org/x/tools/gopls/internal/cache.(*typeCheckBatch).importPackage+0x2e7		/Users/bytedance/go/pkg/mod/golang.org/x/tools/[email protected]/internal/cache/check.go:589
#	0x103471d8f	golang.org/x/tools/gopls/internal/cache.(*typeCheckBatch).getImportPackage.func1+0x1bf	/Users/bytedance/go/pkg/mod/golang.org/x/tools/[email protected]/internal/cache/check.go:337
#	0x1034b6b0f	golang.org/x/tools/gopls/internal/cache.(*futureCache[...]).get+0x35f			/Users/bytedance/go/pkg/mod/golang.org/x/tools/[email protected]/internal/cache/future.go:126
#	0x103471b8f	golang.org/x/tools/gopls/internal/cache.(*typeCheckBatch).getImportPackage+0x5f		/Users/bytedance/go/pkg/mod/golang.org/x/tools/[email protected]/internal/cache/check.go:314
#	0x10347329b	golang.org/x/tools/gopls/internal/cache.(*typeCheckBatch).importPackage.func1+0x18b	/Users/bytedance/go/pkg/mod/golang.org/x/tools/[email protected]/internal/cache/check.go:559
#	0x1032a55ff	golang.org/x/tools/internal/gcimporter.iimportCommon+0x77f				/Users/bytedance/go/pkg/mod/golang.org/x/[email protected]/internal/gcimporter/iimport.go:278
#	0x10329f647	golang.org/x/tools/internal/gcimporter.IImportShallow+0x37				/Users/bytedance/go/pkg/mod/golang.org/x/[email protected]/internal/gcimporter/iexport.go:305
#	0x103472f87	golang.org/x/tools/gopls/internal/cache.(*typeCheckBatch).importPackage+0x2e7		/Users/bytedance/go/pkg/mod/golang.org/x/tools/[email protected]/internal/cache/check.go:589
#	0x103471d8f	golang.org/x/tools/gopls/internal/cache.(*typeCheckBatch).getImportPackage.func1+0x1bf	/Users/bytedance/go/pkg/mod/golang.org/x/tools/[email protected]/internal/cache/check.go:337
#	0x1034b6b0f	golang.org/x/tools/gopls/internal/cache.(*futureCache[...]).get+0x35f			/Users/bytedance/go/pkg/mod/golang.org/x/tools/[email protected]/internal/cache/future.go:126
#	0x103471b8f	golang.org/x/tools/gopls/internal/cache.(*typeCheckBatch).getImportPackage+0x5f		/Users/bytedance/go/pkg/mod/golang.org/x/tools/[email protected]/internal/cache/check.go:314
#	0x10347329b	golang.org/x/tools/gopls/internal/cache.(*typeCheckBatch).importPackage.func1+0x18b	/Users/bytedance/go/pkg/mod/golang.org/x/tools/[email protected]/internal/cache/check.go:559
#	0x1032a55ff	golang.org/x/tools/internal/gcimporter.iimportCommon+0x77f				/Users/bytedance/go/pkg/mod/golang.org/x/[email protected]/internal/gcimporter/iimport.go:278
#	0x10329f647	golang.org/x/tools/internal/gcimporter.IImportShallow+0x37				/Users/bytedance/go/pkg/mod/golang.org/x/[email protected]/internal/gcimporter/iexport.go:305
#	0x103472f87	golang.org/x/tools/gopls/internal/cache.(*typeCheckBatch).importPackage+0x2e7		/Users/bytedance/go/pkg/mod/golang.org/x/tools/[email protected]/internal/cache/check.go:589
#	0x103471d8f	golang.org/x/tools/gopls/internal/cache.(*typeCheckBatch).getImportPackage.func1+0x1bf	/Users/bytedance/go/pkg/mod/golang.org/x/tools/[email protected]/internal/cache/check.go:337
#	0x1034b6b0f	golang.org/x/tools/gopls/internal/cache.(*futureCache[...]).get+0x35f			/Users/bytedance/go/pkg/mod/golang.org/x/tools/[email protected]/internal/cache/future.go:126
#	0x103471b8f	golang.org/x/tools/gopls/internal/cache.(*typeCheckBatch).getImportPackage+0x5f		/Users/bytedance/go/pkg/mod/golang.org/x/tools/[email protected]/internal/cache/check.go:314
#	0x10347329b	golang.org/x/tools/gopls/internal/cache.(*typeCheckBatch).importPackage.func1+0x18b	/Users/bytedance/go/pkg/mod/golang.org/x/tools/[email protected]/internal/cache/check.go:559
#	0x1032a55ff	golang.org/x/tools/internal/gcimporter.iimportCommon+0x77f				/Users/bytedance/go/pkg/mod/golang.org/x/[email protected]/internal/gcimporter/iimport.go:278
#	0x10329f647	golang.org/x/tools/internal/gcimporter.IImportShallow+0x37				/Users/bytedance/go/pkg/mod/golang.org/x/[email protected]/internal/gcimporter/iexport.go:305
#	0x103472f87	golang.org/x/tools/gopls/internal/cache.(*typeCheckBatch).importPackage+0x2e7		/Users/bytedance/go/pkg/mod/golang.org/x/tools/[email protected]/internal/cache/check.go:589
#	0x103471d8f	golang.org/x/tools/gopls/internal/cache.(*typeCheckBatch).getImportPackage.func1+0x1bf	/Users/bytedance/go/pkg/mod/golang.org/x/tools/[email protected]/internal/cache/check.go:337
#	0x1034b6b0f	golang.org/x/tools/gopls/internal/cache.(*futureCache[...]).get+0x35f			/Users/bytedance/go/pkg/mod/golang.org/x/tools/[email protected]/internal/cache/future.go:126
#	0x103471b8f	golang.org/x/tools/gopls/internal/cache.(*typeCheckBatch).getImportPackage+0x5f		/Users/bytedance/go/pkg/mod/golang.org/x/tools/[email protected]/internal/cache/check.go:314
#	0x10347329b	golang.org/x/tools/gopls/internal/cache.(*typeCheckBatch).importPackage.func1+0x18b	/Users/bytedance/go/pkg/mod/golang.org/x/tools/[email protected]/internal/cache/check.go:559
#	0x1032a55ff	golang.org/x/tools/internal/gcimporter.iimportCommon+0x77f				/Users/bytedance/go/pkg/mod/golang.org/x/[email protected]/internal/gcimporter/iimport.go:278
#	0x10329f647	golang.org/x/tools/internal/gcimporter.IImportShallow+0x37				/Users/bytedance/go/pkg/mod/golang.org/x/[email protected]/internal/gcimporter/iexport.go:305
#	0x103472f87	golang.org/x/tools/gopls/internal/cache.(*typeCheckBatch).importPackage+0x2e7		/Users/bytedance/go/pkg/mod/golang.org/x/tools/[email protected]/internal/cache/check.go:589
#	0x103471d8f	golang.org/x/tools/gopls/internal/cache.(*typeCheckBatch).getImportPackage.func1+0x1bf	/Users/bytedance/go/pkg/mod/golang.org/x/tools/[email protected]/internal/cache/check.go:337
#	0x1034b6b0f	golang.org/x/tools/gopls/internal/cache.(*futureCache[...]).get+0x35f			/Users/bytedance/go/pkg/mod/golang.org/x/tools/[email protected]/internal/cache/future.go:126
#	0x103471b8f	golang.org/x/tools/gopls/internal/cache.(*typeCheckBatch).getImportPackage+0x5f		/Users/bytedance/go/pkg/mod/golang.org/x/tools/[email protected]/internal/cache/check.go:314
#	0x10347329b	golang.org/x/tools/gopls/internal/cache.(*typeCheckBatch).importPackage.func1+0x18b	/Users/bytedance/go/pkg/mod/golang.org/x/tools/[email protected]/internal/cache/check.go:559
#	0x1032a55ff	golang.org/x/tools/internal/gcimporter.iimportCommon+0x77f				/Users/bytedance/go/pkg/mod/golang.org/x/[email protected]/internal/gcimporter/iimport.go:278
#	0x10329f647	golang.org/x/tools/internal/gcimporter.IImportShallow+0x37				/Users/bytedance/go/pkg/mod/golang.org/x/[email protected]/internal/gcimporter/iexport.go:305
#	0x103472f87	golang.org/x/tools/gopls/internal/cache.(*typeCheckBatch).importPackage+0x2e7		/Users/bytedance/go/pkg/mod/golang.org/x/tools/[email protected]/internal/cache/check.go:589
#	0x103471d8f	golang.org/x/tools/gopls/internal/cache.(*typeCheckBatch).getImportPackage.func1+0x1bf	/Users/bytedance/go/pkg/mod/golang.org/x/tools/[email protected]/internal/cache/check.go:337
#	0x1034b6b0f	golang.org/x/tools/gopls/internal/cache.(*futureCache[...]).get+0x35f			/Users/bytedance/go/pkg/mod/golang.org/x/tools/[email protected]/internal/cache/future.go:126
#	0x103471b8f	golang.org/x/tools/gopls/internal/cache.(*typeCheckBatch).getImportPackage+0x5f		/Users/bytedance/go/pkg/mod/golang.org/x/tools/[email protected]/internal/cache/check.go:314
#	0x10347329b	golang.org/x/tools/gopls/internal/cache.(*typeCheckBatch).importPackage.func1+0x18b	/Users/bytedance/go/pkg/mod/golang.org/x/tools/[email protected]/internal/cache/check.go:559
#	0x1032a55ff	golang.org/x/tools/internal/gcimporter.iimportCommon+0x77f				/Users/bytedance/go/pkg/mod/golang.org/x/[email protected]/internal/gcimporter/iimport.go:278
#	0x10329f647	golang.org/x/tools/internal/gcimporter.IImportShallow+0x37				/Users/bytedance/go/pkg/mod/golang.org/x/[email protected]/internal/gcimporter/iexport.go:305
#	0x103472f87	golang.org/x/tools/gopls/internal/cache.(*typeCheckBatch).importPackage+0x2e7		/Users/bytedance/go/pkg/mod/golang.org/x/tools/[email protected]/internal/cache/check.go:589
#	0x103471d8f	golang.org/x/tools/gopls/internal/cache.(*typeCheckBatch).getImportPackage.func1+0x1bf	/Users/bytedance/go/pkg/mod/golang.org/x/tools/[email protected]/internal/cache/check.go:337
#	0x1034b6b0f	golang.org/x/tools/gopls/internal/cache.(*futureCache[...]).get+0x35f			/Users/bytedance/go/pkg/mod/golang.org/x/tools/[email protected]/internal/cache/future.go:126
#	0x103471b8f	golang.org/x/tools/gopls/internal/cache.(*typeCheckBatch).getImportPackage+0x5f		/Users/bytedance/go/pkg/mod/golang.org/x/tools/[email protected]/internal/cache/check.go:314
#	0x10347329b	golang.org/x/tools/gopls/internal/cache.(*typeCheckBatch).importPackage.func1+0x18b	/Users/bytedance/go/pkg/mod/golang.org/x/tools/[email protected]/internal/cache/check.go:559
#	0x1032a55ff	golang.org/x/tools/internal/gcimporter.iimportCommon+0x77f				/Users/bytedance/go/pkg/mod/golang.org/x/[email protected]/internal/gcimporter/iimport.go:278
#	0x10329f647	golang.org/x/tools/internal/gcimporter.IImportShallow+0x37				/Users/bytedance/go/pkg/mod/golang.org/x/[email protected]/internal/gcimporter/iexport.go:305
#	0x103472f87	golang.org/x/tools/gopls/internal/cache.(*typeCheckBatch).importPackage+0x2e7		/Users/bytedance/go/pkg/mod/golang.org/x/tools/[email protected]/internal/cache/check.go:589
#	0x103471d8f	golang.org/x/tools/gopls/internal/cache.(*typeCheckBatch).getImportPackage.func1+0x1bf	/Users/bytedance/go/pkg/mod/golang.org/x/tools/[email protected]/internal/cache/check.go:337
#	0x1034b6b0f	golang.org/x/tools/gopls/internal/cache.(*futureCache[...]).get+0x35f			/Users/bytedance/go/pkg/mod/golang.org/x/tools/[email protected]/internal/cache/future.go:126
#	0x103471b8f	golang.org/x/tools/gopls/internal/cache.(*typeCheckBatch).getImportPackage+0x5f		/Users/bytedance/go/pkg/mod/golang.org/x/tools/[email protected]/internal/cache/check.go:314
#	0x10347329b	golang.org/x/tools/gopls/internal/cache.(*typeCheckBatch).importPackage.func1+0x18b	/Users/bytedance/go/pkg/mod/golang.org/x/tools/[email protected]/internal/cache/check.go:559
#	0x1032a55ff	golang.org/x/tools/internal/gcimporter.iimportCommon+0x77f				/Users/bytedance/go/pkg/mod/golang.org/x/[email protected]/internal/gcimporter/iimport.go:278
#	0x10329f647	golang.org/x/tools/internal/gcimporter.IImportShallow+0x37				/Users/bytedance/go/pkg/mod/golang.org/x/[email protected]/internal/gcimporter/iexport.go:305
#	0x103472f87	golang.org/x/tools/gopls/internal/cache.(*typeCheckBatch).importPackage+0x2e7		/Users/bytedance/go/pkg/mod/golang.org/x/tools/[email protected]/internal/cache/check.go:589
#	0x103471d8f	golang.org/x/tools/gopls/internal/cache.(*typeCheckBatch).getImportPackage.func1+0x1bf	/Users/bytedance/go/pkg/mod/golang.org/x/tools/[email protected]/internal/cache/check.go:337
#	0x1034b6b0f	golang.org/x/tools/gopls/internal/cache.(*futureCache[...]).get+0x35f			/Users/bytedance/go/pkg/mod/golang.org/x/tools/[email protected]/internal/cache/future.go:126
#	0x103471b8f	golang.org/x/tools/gopls/internal/cache.(*typeCheckBatch).getImportPackage+0x5f		/Users/bytedance/go/pkg/mod/golang.org/x/tools/[email protected]/internal/cache/check.go:314
#	0x10347329b	golang.org/x/tools/gopls/internal/cache.(*typeCheckBatch).importPackage.func1+0x18b	/Users/bytedance/go/pkg/mod/golang.org/x/tools/[email protected]/internal/cache/check.go:559
#	0x1032a55ff	golang.org/x/tools/internal/gcimporter.iimportCommon+0x77f				/Users/bytedance/go/pkg/mod/golang.org/x/[email protected]/internal/gcimporter/iimport.go:278
#	0x10329f647	golang.org/x/tools/internal/gcimporter.IImportShallow+0x37				/Users/bytedance/go/pkg/mod/golang.org/x/[email protected]/internal/gcimporter/iexport.go:305
#	0x103472f87	golang.org/x/tools/gopls/internal/cache.(*typeCheckBatch).importPackage+0x2e7		/Users/bytedance/go/pkg/mod/golang.org/x/tools/[email protected]/internal/cache/check.go:589
#	0x103471d8f	golang.org/x/tools/gopls/internal/cache.(*typeCheckBatch).getImportPackage.func1+0x1bf	/Users/bytedance/go/pkg/mod/golang.org/x/tools/[email protected]/internal/cache/check.go:337
#	0x1034b6b0f	golang.org/x/tools/gopls/internal/cache.(*futureCache[...]).get+0x35f			/Users/bytedance/go/pkg/mod/golang.org/x/tools/[email protected]/internal/cache/future.go:126
#	0x103471b8f	golang.org/x/tools/gopls/internal/cache.(*typeCheckBatch).getImportPackage+0x5f		/Users/bytedance/go/pkg/mod/golang.org/x/tools/[email protected]/internal/cache/check.go:314
#	0x10347258f	golang.org/x/tools/gopls/internal/cache.(*typeCheckBatch).getPackage.func1.1+0x4f	/Users/bytedance/go/pkg/mod/golang.org/x/tools/[email protected]/internal/cache/check.go:388
#	0x102d7dd33	golang.org/x/sync/errgroup.(*Group).Go.func1+0x53					/Users/bytedance/go/pkg/mod/golang.org/x/[email protected]/errgroup/errgroup.go:78

0: 0 [12: 5505024] @ 0x102c5b708 0x102c5bc74 0x102cbada4 0x103083b78 0x10305a0e8 0x103082e80 0x1030827d9 0x103052290 0x103052050 0x1034747a8 0x103471db0 0x1034b6b10 0x103471b90 0x10347a53c 0x10347cb70 0x103082268 0x103082fa8 0x10305a238 0x103082e80 0x1030827d9 0x103052290 0x103052050 0x1034747a8 0x103471db0 0x1034b6b10 0x103471b90 0x10347a53c 0x10347cb70 0x103082268 0x103082fa8 0x10305a238 0x103082e80 0x1030827d9 0x103052290 0x103052050 0x1034747a8 0x103471db0 0x1034b6b10 0x103471b90 0x10347a53c 0x10347cb70 0x103082268 0x103082fa8 0x10305a238 0x103082e80 0x1030827d9 0x103052290 0x103052050 0x1034747a8 0x103471db0 0x1034b6b10 0x103471b90 0x10347a53c 0x10347cb70 0x103082268 0x103082fa8 0x10305a238 0x103082e80 0x1030827d9 0x103052290 0x103052050 0x1034747a8 0x103471db0 0x1034b6b10 0x103471b90 0x103472590 0x102d7dd34 0x102cc8844
#	0x103083b77	go/types.(*Checker).collectObjects.func1+0xca7						/Users/bytedance/go/pkg/mod/golang.org/[email protected]/src/go/types/resolver.go:455
#	0x10305a0e7	go/types.(*Checker).walkDecl+0xc7							/Users/bytedance/go/pkg/mod/golang.org/[email protected]/src/go/types/decl.go:433
#	0x103082e7f	go/types.(*Checker).walkDecls+0xaff							/Users/bytedance/go/pkg/mod/golang.org/[email protected]/src/go/types/decl.go:391
#	0x1030827d8	go/types.(*Checker).collectObjects+0x458						/Users/bytedance/go/pkg/mod/golang.org/[email protected]/src/go/types/resolver.go:257
#	0x10305228f	go/types.(*Checker).checkFiles+0x16f							/Users/bytedance/go/pkg/mod/golang.org/[email protected]/src/go/types/check.go:456
#	0x10305204f	go/types.(*Checker).Files+0x7f								/Users/bytedance/go/pkg/mod/golang.org/[email protected]/src/go/types/check.go:422
#	0x1034747a7	golang.org/x/tools/gopls/internal/cache.(*typeCheckBatch).checkPackageForImport+0x3f7	/Users/bytedance/go/pkg/mod/golang.org/x/tools/[email protected]/internal/cache/check.go:648
#	0x103471daf	golang.org/x/tools/gopls/internal/cache.(*typeCheckBatch).getImportPackage.func1+0x1df	/Users/bytedance/go/pkg/mod/golang.org/x/tools/[email protected]/internal/cache/check.go:332
#	0x1034b6b0f	golang.org/x/tools/gopls/internal/cache.(*futureCache[...]).get+0x35f			/Users/bytedance/go/pkg/mod/golang.org/x/tools/[email protected]/internal/cache/future.go:126
#	0x103471b8f	golang.org/x/tools/gopls/internal/cache.(*typeCheckBatch).getImportPackage+0x5f		/Users/bytedance/go/pkg/mod/golang.org/x/tools/[email protected]/internal/cache/check.go:314
#	0x10347a53b	golang.org/x/tools/gopls/internal/cache.(*typeCheckBatch).typesConfig.func1+0x16b	/Users/bytedance/go/pkg/mod/golang.org/x/tools/[email protected]/internal/cache/check.go:1775
#	0x10347cb6f	golang.org/x/tools/gopls/internal/cache.importerFunc.Import+0x2f			/Users/bytedance/go/pkg/mod/golang.org/x/tools/[email protected]/internal/cache/check.go:2180
#	0x103082267	go/types.(*Checker).importPackage+0x457							/Users/bytedance/go/pkg/mod/golang.org/[email protected]/src/go/types/resolver.go:166
#	0x103082fa7	go/types.(*Checker).collectObjects.func1+0xd7						/Users/bytedance/go/pkg/mod/golang.org/[email protected]/src/go/types/resolver.go:270
#	0x10305a237	go/types.(*Checker).walkDecl+0x217							/Users/bytedance/go/pkg/mod/golang.org/[email protected]/src/go/types/decl.go:404
#	0x103082e7f	go/types.(*Checker).walkDecls+0xaff							/Users/bytedance/go/pkg/mod/golang.org/[email protected]/src/go/types/decl.go:391
#	0x1030827d8	go/types.(*Checker).collectObjects+0x458						/Users/bytedance/go/pkg/mod/golang.org/[email protected]/src/go/types/resolver.go:257
#	0x10305228f	go/types.(*Checker).checkFiles+0x16f							/Users/bytedance/go/pkg/mod/golang.org/[email protected]/src/go/types/check.go:456
#	0x10305204f	go/types.(*Checker).Files+0x7f								/Users/bytedance/go/pkg/mod/golang.org/[email protected]/src/go/types/check.go:422
#	0x1034747a7	golang.org/x/tools/gopls/internal/cache.(*typeCheckBatch).checkPackageForImport+0x3f7	/Users/bytedance/go/pkg/mod/golang.org/x/tools/[email protected]/internal/cache/check.go:648
#	0x103471daf	golang.org/x/tools/gopls/internal/cache.(*typeCheckBatch).getImportPackage.func1+0x1df	/Users/bytedance/go/pkg/mod/golang.org/x/tools/[email protected]/internal/cache/check.go:332
#	0x1034b6b0f	golang.org/x/tools/gopls/internal/cache.(*futureCache[...]).get+0x35f			/Users/bytedance/go/pkg/mod/golang.org/x/tools/[email protected]/internal/cache/future.go:126
#	0x103471b8f	golang.org/x/tools/gopls/internal/cache.(*typeCheckBatch).getImportPackage+0x5f		/Users/bytedance/go/pkg/mod/golang.org/x/tools/[email protected]/internal/cache/check.go:314
#	0x10347a53b	golang.org/x/tools/gopls/internal/cache.(*typeCheckBatch).typesConfig.func1+0x16b	/Users/bytedance/go/pkg/mod/golang.org/x/tools/[email protected]/internal/cache/check.go:1775
#	0x10347cb6f	golang.org/x/tools/gopls/internal/cache.importerFunc.Import+0x2f			/Users/bytedance/go/pkg/mod/golang.org/x/tools/[email protected]/internal/cache/check.go:2180
#	0x103082267	go/types.(*Checker).importPackage+0x457							/Users/bytedance/go/pkg/mod/golang.org/[email protected]/src/go/types/resolver.go:166
#	0x103082fa7	go/types.(*Checker).collectObjects.func1+0xd7						/Users/bytedance/go/pkg/mod/golang.org/[email protected]/src/go/types/resolver.go:270
#	0x10305a237	go/types.(*Checker).walkDecl+0x217							/Users/bytedance/go/pkg/mod/golang.org/[email protected]/src/go/types/decl.go:404
#	0x103082e7f	go/types.(*Checker).walkDecls+0xaff							/Users/bytedance/go/pkg/mod/golang.org/[email protected]/src/go/types/decl.go:391
#	0x1030827d8	go/types.(*Checker).collectObjects+0x458						/Users/bytedance/go/pkg/mod/golang.org/[email protected]/src/go/types/resolver.go:257
#	0x10305228f	go/types.(*Checker).checkFiles+0x16f							/Users/bytedance/go/pkg/mod/golang.org/[email protected]/src/go/types/check.go:456
#	0x10305204f	go/types.(*Checker).Files+0x7f								/Users/bytedance/go/pkg/mod/golang.org/[email protected]/src/go/types/check.go:422
#	0x1034747a7	golang.org/x/tools/gopls/internal/cache.(*typeCheckBatch).checkPackageForImport+0x3f7	/Users/bytedance/go/pkg/mod/golang.org/x/tools/[email protected]/internal/cache/check.go:648
#	0x103471daf	golang.org/x/tools/gopls/internal/cache.(*typeCheckBatch).getImportPackage.func1+0x1df	/Users/bytedance/go/pkg/mod/golang.org/x/tools/[email protected]/internal/cache/check.go:332
#	0x1034b6b0f	golang.org/x/tools/gopls/internal/cache.(*futureCache[...]).get+0x35f			/Users/bytedance/go/pkg/mod/golang.org/x/tools/[email protected]/internal/cache/future.go:126
#	0x103471b8f	golang.org/x/tools/gopls/internal/cache.(*typeCheckBatch).getImportPackage+0x5f		/Users/bytedance/go/pkg/mod/golang.org/x/tools/[email protected]/internal/cache/check.go:314
#	0x10347a53b	golang.org/x/tools/gopls/internal/cache.(*typeCheckBatch).typesConfig.func1+0x16b	/Users/bytedance/go/pkg/mod/golang.org/x/tools/[email protected]/internal/cache/check.go:1775
#	0x10347cb6f	golang.org/x/tools/gopls/internal/cache.importerFunc.Import+0x2f			/Users/bytedance/go/pkg/mod/golang.org/x/tools/[email protected]/internal/cache/check.go:2180
#	0x103082267	go/types.(*Checker).importPackage+0x457							/Users/bytedance/go/pkg/mod/golang.org/[email protected]/src/go/types/resolver.go:166
#	0x103082fa7	go/types.(*Checker).collectObjects.func1+0xd7						/Users/bytedance/go/pkg/mod/golang.org/[email protected]/src/go/types/resolver.go:270
#	0x10305a237	go/types.(*Checker).walkDecl+0x217							/Users/bytedance/go/pkg/mod/golang.org/[email protected]/src/go/types/decl.go:404
#	0x103082e7f	go/types.(*Checker).walkDecls+0xaff							/Users/bytedance/go/pkg/mod/golang.org/[email protected]/src/go/types/decl.go:391
#	0x1030827d8	go/types.(*Checker).collectObjects+0x458						/Users/bytedance/go/pkg/mod/golang.org/[email protected]/src/go/types/resolver.go:257
#	0x10305228f	go/types.(*Checker).checkFiles+0x16f							/Users/bytedance/go/pkg/mod/golang.org/[email protected]/src/go/types/check.go:456
#	0x10305204f	go/types.(*Checker).Files+0x7f								/Users/bytedance/go/pkg/mod/golang.org/[email protected]/src/go/types/check.go:422
#	0x1034747a7	golang.org/x/tools/gopls/internal/cache.(*typeCheckBatch).checkPackageForImport+0x3f7	/Users/bytedance/go/pkg/mod/golang.org/x/tools/[email protected]/internal/cache/check.go:648
#	0x103471daf	golang.org/x/tools/gopls/internal/cache.(*typeCheckBatch).getImportPackage.func1+0x1df	/Users/bytedance/go/pkg/mod/golang.org/x/tools/[email protected]/internal/cache/check.go:332
#	0x1034b6b0f	golang.org/x/tools/gopls/internal/cache.(*futureCache[...]).get+0x35f			/Users/bytedance/go/pkg/mod/golang.org/x/tools/[email protected]/internal/cache/future.go:126
#	0x103471b8f	golang.org/x/tools/gopls/internal/cache.(*typeCheckBatch).getImportPackage+0x5f		/Users/bytedance/go/pkg/mod/golang.org/x/tools/[email protected]/internal/cache/check.go:314
#	0x10347a53b	golang.org/x/tools/gopls/internal/cache.(*typeCheckBatch).typesConfig.func1+0x16b	/Users/bytedance/go/pkg/mod/golang.org/x/tools/[email protected]/internal/cache/check.go:1775
#	0x10347cb6f	golang.org/x/tools/gopls/internal/cache.importerFunc.Import+0x2f			/Users/bytedance/go/pkg/mod/golang.org/x/tools/[email protected]/internal/cache/check.go:2180
#	0x103082267	go/types.(*Checker).importPackage+0x457							/Users/bytedance/go/pkg/mod/golang.org/[email protected]/src/go/types/resolver.go:166
#	0x103082fa7	go/types.(*Checker).collectObjects.func1+0xd7						/Users/bytedance/go/pkg/mod/golang.org/[email protected]/src/go/types/resolver.go:270
#	0x10305a237	go/types.(*Checker).walkDecl+0x217							/Users/bytedance/go/pkg/mod/golang.org/[email protected]/src/go/types/decl.go:404
#	0x103082e7f	go/types.(*Checker).walkDecls+0xaff							/Users/bytedance/go/pkg/mod/golang.org/[email protected]/src/go/types/decl.go:391
#	0x1030827d8	go/types.(*Checker).collectObjects+0x458						/Users/bytedance/go/pkg/mod/golang.org/[email protected]/src/go/types/resolver.go:257
#	0x10305228f	go/types.(*Checker).checkFiles+0x16f							/Users/bytedance/go/pkg/mod/golang.org/[email protected]/src/go/types/check.go:456
#	0x10305204f	go/types.(*Checker).Files+0x7f								/Users/bytedance/go/pkg/mod/golang.org/[email protected]/src/go/types/check.go:422
#	0x1034747a7	golang.org/x/tools/gopls/internal/cache.(*typeCheckBatch).checkPackageForImport+0x3f7	/Users/bytedance/go/pkg/mod/golang.org/x/tools/[email protected]/internal/cache/check.go:648
#	0x103471daf	golang.org/x/tools/gopls/internal/cache.(*typeCheckBatch).getImportPackage.func1+0x1df	/Users/bytedance/go/pkg/mod/golang.org/x/tools/[email protected]/internal/cache/check.go:332
#	0x1034b6b0f	golang.org/x/tools/gopls/internal/cache.(*futureCache[...]).get+0x35f			/Users/bytedance/go/pkg/mod/golang.org/x/tools/[email protected]/internal/cache/future.go:126
#	0x103471b8f	golang.org/x/tools/gopls/internal/cache.(*typeCheckBatch).getImportPackage+0x5f		/Users/bytedance/go/pkg/mod/golang.org/x/tools/[email protected]/internal/cache/check.go:314
#	0x10347258f	golang.org/x/tools/gopls/internal/cache.(*typeCheckBatch).getPackage.func1.1+0x4f	/Users/bytedance/go/pkg/mod/golang.org/x/tools/[email protected]/internal/cache/check.go:388
#	0x102d7dd33	golang.org/x/sync/errgroup.(*Group).Go.func1+0x53					/Users/bytedance/go/pkg/mod/golang.org/x/[email protected]/errgroup/errgroup.go:78

0: 0 [0: 0] @ 0x103001bec 0x103001b8d 0x102d54ef4 0x103005260 0x10300585c 0x103005440 0x103003ac8 0x1034db214 0x1034dbb28 0x102f5c798 0x102f5e404 0x102f7a0ac 0x102f5b34c 0x102cc8844
#	0x103001beb	text/tabwriter.(*Writer).append+0x11b	/Users/bytedance/go/pkg/mod/golang.org/[email protected]/src/text/tabwriter/tabwriter.go:411
#	0x103001b8c	text/tabwriter.(*Writer).Write+0xbc	/Users/bytedance/go/pkg/mod/golang.org/[email protected]/src/text/tabwriter/tabwriter.go:534
#	0x102d54ef3	fmt.Fprintf+0x83			/Users/bytedance/go/pkg/mod/golang.org/[email protected]/src/fmt/print.go:225
#	0x10300525f	runtime/pprof.printStackRecord+0x27f	/Users/bytedance/go/pkg/mod/golang.org/[email protected]/src/runtime/pprof/pprof.go:559
#	0x10300585b	runtime/pprof.writeHeapInternal+0x3eb	/Users/bytedance/go/pkg/mod/golang.org/[email protected]/src/runtime/pprof/pprof.go:682
#	0x10300543f	runtime/pprof.writeAlloc+0x2f		/Users/bytedance/go/pkg/mod/golang.org/[email protected]/src/runtime/pprof/pprof.go:596
#	0x103003ac7	runtime/pprof.(*Profile).WriteTo+0x147	/Users/bytedance/go/pkg/mod/golang.org/[email protected]/src/runtime/pprof/pprof.go:374
#	0x1034db213	net/http/pprof.handler.ServeHTTP+0x443	/Users/bytedance/go/pkg/mod/golang.org/[email protected]/src/net/http/pprof/pprof.go:272
#	0x1034dbb27	net/http/pprof.Index+0xc7		/Users/bytedance/go/pkg/mod/golang.org/[email protected]/src/net/http/pprof/pprof.go:388
#	0x102f5c797	net/http.HandlerFunc.ServeHTTP+0x37	/Users/bytedance/go/pkg/mod/golang.org/[email protected]/src/net/http/server.go:2220
#	0x102f5e403	net/http.(*ServeMux).ServeHTTP+0x1b3	/Users/bytedance/go/pkg/mod/golang.org/[email protected]/src/net/http/server.go:2747
#	0x102f7a0ab	net/http.serverHandler.ServeHTTP+0xbb	/Users/bytedance/go/pkg/mod/golang.org/[email protected]/src/net/http/server.go:3210
#	0x102f5b34b	net/http.(*conn).serve+0x4fb		/Users/bytedance/go/pkg/mod/golang.org/[email protected]/src/net/http/server.go:2092

0: 0 [0: 0] @ 0x102c5b39d 0x102cbaff4 0x103052cc0 0x103052a9c 0x103063dd8 0x103067318 0x10304c4a4 0x1030644f0 0x103063db0 0x103066ea0 0x103044b60 0x10308d2e4 0x10308cff0 0x10308cfd5 0x10308b0f8 0x10308d9c0 0x10308df4c 0x10308b0f8 0x10308aa28 0x10305cff4 0x10305274c 0x1030522d4 0x103052050 0x103479988 0x1034722a4 0x1034b6b10 0x103471f9c 0x10346c2ec 0x10346bd00 0x10346b4c8 0x1034c2408 0x10346b38c 0x1034694fc 0x102d7dd34 0x102cc8844
#	0x103052cbf	go/types.(*Checker).recordTypeAndValue+0xff						/Users/bytedance/go/pkg/mod/golang.org/[email protected]/src/go/types/check.go:588
#	0x103052a9b	go/types.(*Checker).record+0x20b							/Users/bytedance/go/pkg/mod/golang.org/[email protected]/src/go/types/check.go:557
#	0x103063dd7	go/types.(*Checker).rawExpr+0x147							/Users/bytedance/go/pkg/mod/golang.org/[email protected]/src/go/types/expr.go:987
#	0x103067317	go/types.(*Checker).exprOrType+0x47							/Users/bytedance/go/pkg/mod/golang.org/[email protected]/src/go/types/expr.go:1609
#	0x10304c4a3	go/types.(*Checker).callExpr+0x2c3							/Users/bytedance/go/pkg/mod/golang.org/[email protected]/src/go/types/call.go:184
#	0x1030644ef	go/types.(*Checker).exprInternal+0xcf							/Users/bytedance/go/pkg/mod/golang.org/[email protected]/src/go/types/expr.go:1410
#	0x103063daf	go/types.(*Checker).rawExpr+0x11f							/Users/bytedance/go/pkg/mod/golang.org/[email protected]/src/go/types/expr.go:981
#	0x103066e9f	go/types.(*Checker).multiExpr+0x5f							/Users/bytedance/go/pkg/mod/golang.org/[email protected]/src/go/types/expr.go:1568
#	0x103044b5f	go/types.(*Checker).assignVars+0xaf							/Users/bytedance/go/pkg/mod/golang.org/[email protected]/src/go/types/assignments.go:489
#	0x10308d2e3	go/types.(*Checker).stmt+0xd03								/Users/bytedance/go/pkg/mod/golang.org/[email protected]/src/go/types/stmt.go:483
#	0x10308cfef	go/types.(*Checker).simpleStmt+0xa0f							/Users/bytedance/go/pkg/mod/golang.org/[email protected]/src/go/types/stmt.go:99
#	0x10308cfd4	go/types.(*Checker).stmt+0x9f4								/Users/bytedance/go/pkg/mod/golang.org/[email protected]/src/go/types/stmt.go:577
#	0x10308b0f7	go/types.(*Checker).stmtList+0x87							/Users/bytedance/go/pkg/mod/golang.org/[email protected]/src/go/types/stmt.go:121
#	0x10308d9bf	go/types.(*Checker).stmt+0x13df								/Users/bytedance/go/pkg/mod/golang.org/[email protected]/src/go/types/stmt.go:571
#	0x10308df4b	go/types.(*Checker).stmt+0x196b								/Users/bytedance/go/pkg/mod/golang.org/[email protected]/src/go/types/stmt.go:834
#	0x10308b0f7	go/types.(*Checker).stmtList+0x87							/Users/bytedance/go/pkg/mod/golang.org/[email protected]/src/go/types/stmt.go:121
#	0x10308aa27	go/types.(*Checker).funcBody+0x217							/Users/bytedance/go/pkg/mod/golang.org/[email protected]/src/go/types/stmt.go:41
#	0x10305cff3	go/types.(*Checker).funcDecl.func1+0x43							/Users/bytedance/go/pkg/mod/golang.org/[email protected]/src/go/types/decl.go:888
#	0x10305274b	go/types.(*Checker).processDelayed+0x12b						/Users/bytedance/go/pkg/mod/golang.org/[email protected]/src/go/types/check.go:516
#	0x1030522d3	go/types.(*Checker).checkFiles+0x1b3							/Users/bytedance/go/pkg/mod/golang.org/[email protected]/src/go/types/check.go:462
#	0x10305204f	go/types.(*Checker).Files+0x7f								/Users/bytedance/go/pkg/mod/golang.org/[email protected]/src/go/types/check.go:422
#	0x103479987	golang.org/x/tools/gopls/internal/cache.(*typeCheckBatch).checkPackage+0x737		/Users/bytedance/go/pkg/mod/golang.org/x/tools/[email protected]/internal/cache/check.go:1667
#	0x1034722a3	golang.org/x/tools/gopls/internal/cache.(*typeCheckBatch).getPackage.func1+0x2c3	/Users/bytedance/go/pkg/mod/golang.org/x/tools/[email protected]/internal/cache/check.go:421
#	0x1034b6b0f	golang.org/x/tools/gopls/internal/cache.(*futureCache[...]).get+0x35f			/Users/bytedance/go/pkg/mod/golang.org/x/tools/[email protected]/internal/cache/future.go:126
#	0x103471f9b	golang.org/x/tools/gopls/internal/cache.(*typeCheckBatch).getPackage+0x5b		/Users/bytedance/go/pkg/mod/golang.org/x/tools/[email protected]/internal/cache/check.go:372
#	0x10346c2eb	golang.org/x/tools/gopls/internal/cache.(*analysisNode).typeCheck+0x3b			/Users/bytedance/go/pkg/mod/golang.org/x/tools/[email protected]/internal/cache/analysis.go:749
#	0x10346bcff	golang.org/x/tools/gopls/internal/cache.(*analysisNode).run+0x2f			/Users/bytedance/go/pkg/mod/golang.org/x/tools/[email protected]/internal/cache/analysis.go:682
#	0x10346b4c7	golang.org/x/tools/gopls/internal/cache.(*analysisNode).runCached.func1+0x37		/Users/bytedance/go/pkg/mod/golang.org/x/tools/[email protected]/internal/cache/analysis.go:606
#	0x1034c2407	golang.org/x/tools/gopls/internal/cache.(*futureCache[...]).get+0x347			/Users/bytedance/go/pkg/mod/golang.org/x/tools/[email protected]/internal/cache/future.go:126
#	0x10346b38b	golang.org/x/tools/gopls/internal/cache.(*analysisNode).runCached+0x13b			/Users/bytedance/go/pkg/mod/golang.org/x/tools/[email protected]/internal/cache/analysis.go:605
#	0x1034694fb	golang.org/x/tools/gopls/internal/cache.(*Snapshot).Analyze.func6.1+0x45b		/Users/bytedance/go/pkg/mod/golang.org/x/tools/[email protected]/internal/cache/analysis.go:341
#	0x102d7dd33	golang.org/x/sync/errgroup.(*Group).Go.func1+0x53					/Users/bytedance/go/pkg/mod/golang.org/x/[email protected]/errgroup/errgroup.go:78

0: 0 [0: 0] @ 0x10304d45c 0x10304c75c 0x1030644f0 0x103063db0 0x103066de8 0x10304dec4 0x10304c75c 0x1030644f0 0x103063db0 0x103066ea0 0x103044550 0x10308d8ec 0x10308d91c 0x10308b0f8 0x10308aa28 0x10305cff4 0x10305274c 0x1030522d4 0x103052050 0x103479988 0x1034722a4 0x1034b6b10 0x103471f9c 0x10346c2ec 0x10346bd00 0x10346b4c8 0x1034c2408 0x10346b38c 0x1034694fc 0x102d7dd34 0x102cc8844
#	0x10304d45b	go/types.(*Checker).genericExprList+0x7b						/Users/bytedance/go/pkg/mod/golang.org/[email protected]/src/go/types/call.go:417
#	0x10304c75b	go/types.(*Checker).callExpr+0x57b							/Users/bytedance/go/pkg/mod/golang.org/[email protected]/src/go/types/call.go:297
#	0x1030644ef	go/types.(*Checker).exprInternal+0xcf							/Users/bytedance/go/pkg/mod/golang.org/[email protected]/src/go/types/expr.go:1410
#	0x103063daf	go/types.(*Checker).rawExpr+0x11f							/Users/bytedance/go/pkg/mod/golang.org/[email protected]/src/go/types/expr.go:981
#	0x103066de7	go/types.(*Checker).genericExpr+0x47							/Users/bytedance/go/pkg/mod/golang.org/[email protected]/src/go/types/expr.go:1556
#	0x10304dec3	go/types.(*Checker).genericExprList+0xae3						/Users/bytedance/go/pkg/mod/golang.org/[email protected]/src/go/types/call.go:438
#	0x10304c75b	go/types.(*Checker).callExpr+0x57b							/Users/bytedance/go/pkg/mod/golang.org/[email protected]/src/go/types/call.go:297
#	0x1030644ef	go/types.(*Checker).exprInternal+0xcf							/Users/bytedance/go/pkg/mod/golang.org/[email protected]/src/go/types/expr.go:1410
#	0x103063daf	go/types.(*Checker).rawExpr+0x11f							/Users/bytedance/go/pkg/mod/golang.org/[email protected]/src/go/types/expr.go:981
#	0x103066e9f	go/types.(*Checker).multiExpr+0x5f							/Users/bytedance/go/pkg/mod/golang.org/[email protected]/src/go/types/expr.go:1568
#	0x10304454f	go/types.(*Checker).initVars+0xff							/Users/bytedance/go/pkg/mod/golang.org/[email protected]/src/go/types/assignments.go:425
#	0x10308d8eb	go/types.(*Checker).stmt+0x130b								/Users/bytedance/go/pkg/mod/golang.org/[email protected]/src/go/types/stmt.go:533
#	0x10308d91b	go/types.(*Checker).stmt+0x133b								/Users/bytedance/go/pkg/mod/golang.org/[email protected]/src/go/types/stmt.go:394
#	0x10308b0f7	go/types.(*Checker).stmtList+0x87							/Users/bytedance/go/pkg/mod/golang.org/[email protected]/src/go/types/stmt.go:121
#	0x10308aa27	go/types.(*Checker).funcBody+0x217							/Users/bytedance/go/pkg/mod/golang.org/[email protected]/src/go/types/stmt.go:41
#	0x10305cff3	go/types.(*Checker).funcDecl.func1+0x43							/Users/bytedance/go/pkg/mod/golang.org/[email protected]/src/go/types/decl.go:888
#	0x10305274b	go/types.(*Checker).processDelayed+0x12b						/Users/bytedance/go/pkg/mod/golang.org/[email protected]/src/go/types/check.go:516
#	0x1030522d3	go/types.(*Checker).checkFiles+0x1b3							/Users/bytedance/go/pkg/mod/golang.org/[email protected]/src/go/types/check.go:462
#	0x10305204f	go/types.(*Checker).Files+0x7f								/Users/bytedance/go/pkg/mod/golang.org/[email protected]/src/go/types/check.go:422
#	0x103479987	golang.org/x/tools/gopls/internal/cache.(*typeCheckBatch).checkPackage+0x737		/Users/bytedance/go/pkg/mod/golang.org/x/tools/[email protected]/internal/cache/check.go:1667
#	0x1034722a3	golang.org/x/tools/gopls/internal/cache.(*typeCheckBatch).getPackage.func1+0x2c3	/Users/bytedance/go/pkg/mod/golang.org/x/tools/[email protected]/internal/cache/check.go:421
#	0x1034b6b0f	golang.org/x/tools/gopls/internal/cache.(*futureCache[...]).get+0x35f			/Users/bytedance/go/pkg/mod/golang.org/x/tools/[email protected]/internal/cache/future.go:126
#	0x103471f9b	golang.org/x/tools/gopls/internal/cache.(*typeCheckBatch).getPackage+0x5b		/Users/bytedance/go/pkg/mod/golang.org/x/tools/[email protected]/internal/cache/check.go:372
#	0x10346c2eb	golang.org/x/tools/gopls/internal/cache.(*analysisNode).typeCheck+0x3b			/Users/bytedance/go/pkg/mod/golang.org/x/tools/[email protected]/internal/cache/analysis.go:749
#	0x10346bcff	golang.org/x/tools/gopls/internal/cache.(*analysisNode).run+0x2f			/Users/bytedance/go/pkg/mod/golang.org/x/tools/[email protected]/internal/cache/analysis.go:682
#	0x10346b4c7	golang.org/x/tools/gopls/internal/cache.(*analysisNode).runCached.func1+0x37		/Users/bytedance/go/pkg/mod/golang.org/x/tools/[email protected]/internal/cache/analysis.go:606
#	0x1034c2407	golang.org/x/tools/gopls/internal/cache.(*futureCache[...]).get+0x347			/Users/bytedance/go/pkg/mod/golang.org/x/tools/[email protected]/internal/cache/future.go:126
#	0x10346b38b	golang.org/x/tools/gopls/internal/cache.(*analysisNode).runCached+0x13b			/Users/bytedance/go/pkg/mod/golang.org/x/tools/[email protected]/internal/cache/analysis.go:605
#	0x1034694fb	golang.org/x/tools/gopls/internal/cache.(*Snapshot).Analyze.func6.1+0x45b		/Users/bytedance/go/pkg/mod/golang.org/x/tools/[email protected]/internal/cache/analysis.go:341
#	0x102d7dd33	golang.org/x/sync/errgroup.(*Group).Go.func1+0x53					/Users/bytedance/go/pkg/mod/golang.org/x/[email protected]/errgroup/errgroup.go:78

0: 0 [0: 0] @ 0x102c5b39d 0x102cbaff4 0x103052cc0 0x103052a9c 0x103063dd8 0x103066ea0 0x10304d2e4 0x103045a38 0x10304cce4 0x1030644f0 0x103063db0 0x103066de8 0x10304dec4 0x10304c75c 0x1030644f0 0x103063db0 0x103066ea0 0x103044550 0x10304547c 0x10308d2c0 0x10308cff0 0x10308cfd5 0x10308b0f8 0x10308aa28 0x10305cff4 0x10305274c 0x1030522d4 0x103052050 0x103479988 0x1034722a4 0x1034b6b10 0x103471f9c 0x10346c2ec 0x10346bd00 0x10346b4c8 0x1034c2408 0x10346b38c 0x1034694fc 0x102d7dd34 0x102cc8844
#	0x103052cbf	go/types.(*Checker).recordTypeAndValue+0xff						/Users/bytedance/go/pkg/mod/golang.org/[email protected]/src/go/types/check.go:588
#	0x103052a9b	go/types.(*Checker).record+0x20b							/Users/bytedance/go/pkg/mod/golang.org/[email protected]/src/go/types/check.go:557
#	0x103063dd7	go/types.(*Checker).rawExpr+0x147							/Users/bytedance/go/pkg/mod/golang.org/[email protected]/src/go/types/expr.go:987
#	0x103066e9f	go/types.(*Checker).multiExpr+0x5f							/Users/bytedance/go/pkg/mod/golang.org/[email protected]/src/go/types/expr.go:1568
#	0x10304d2e3	go/types.(*Checker).exprList+0x73							/Users/bytedance/go/pkg/mod/golang.org/[email protected]/src/go/types/call.go:336
#	0x103045a37	go/types.(*Checker).builtin+0x1e7							/Users/bytedance/go/pkg/mod/golang.org/[email protected]/src/go/types/builtins.go:56
#	0x10304cce3	go/types.(*Checker).callExpr+0xb03							/Users/bytedance/go/pkg/mod/golang.org/[email protected]/src/go/types/call.go:230
#	0x1030644ef	go/types.(*Checker).exprInternal+0xcf							/Users/bytedance/go/pkg/mod/golang.org/[email protected]/src/go/types/expr.go:1410
#	0x103063daf	go/types.(*Checker).rawExpr+0x11f							/Users/bytedance/go/pkg/mod/golang.org/[email protected]/src/go/types/expr.go:981
#	0x103066de7	go/types.(*Checker).genericExpr+0x47							/Users/bytedance/go/pkg/mod/golang.org/[email protected]/src/go/types/expr.go:1556
#	0x10304dec3	go/types.(*Checker).genericExprList+0xae3						/Users/bytedance/go/pkg/mod/golang.org/[email protected]/src/go/types/call.go:438
#	0x10304c75b	go/types.(*Checker).callExpr+0x57b							/Users/bytedance/go/pkg/mod/golang.org/[email protected]/src/go/types/call.go:297
#	0x1030644ef	go/types.(*Checker).exprInternal+0xcf							/Users/bytedance/go/pkg/mod/golang.org/[email protected]/src/go/types/expr.go:1410
#	0x103063daf	go/types.(*Checker).rawExpr+0x11f							/Users/bytedance/go/pkg/mod/golang.org/[email protected]/src/go/types/expr.go:981
#	0x103066e9f	go/types.(*Checker).multiExpr+0x5f							/Users/bytedance/go/pkg/mod/golang.org/[email protected]/src/go/types/expr.go:1568
#	0x10304454f	go/types.(*Checker).initVars+0xff							/Users/bytedance/go/pkg/mod/golang.org/[email protected]/src/go/types/assignments.go:425
#	0x10304547b	go/types.(*Checker).shortVarDecl+0x65b							/Users/bytedance/go/pkg/mod/golang.org/[email protected]/src/go/types/assignments.go:573
#	0x10308d2bf	go/types.(*Checker).stmt+0xcdf								/Users/bytedance/go/pkg/mod/golang.org/[email protected]/src/go/types/stmt.go:480
#	0x10308cfef	go/types.(*Checker).simpleStmt+0xa0f							/Users/bytedance/go/pkg/mod/golang.org/[email protected]/src/go/types/stmt.go:99
#	0x10308cfd4	go/types.(*Checker).stmt+0x9f4								/Users/bytedance/go/pkg/mod/golang.org/[email protected]/src/go/types/stmt.go:577
#	0x10308b0f7	go/types.(*Checker).stmtList+0x87							/Users/bytedance/go/pkg/mod/golang.org/[email protected]/src/go/types/stmt.go:121
#	0x10308aa27	go/types.(*Checker).funcBody+0x217							/Users/bytedance/go/pkg/mod/golang.org/[email protected]/src/go/types/stmt.go:41
#	0x10305cff3	go/types.(*Checker).funcDecl.func1+0x43							/Users/bytedance/go/pkg/mod/golang.org/[email protected]/src/go/types/decl.go:888
#	0x10305274b	go/types.(*Checker).processDelayed+0x12b						/Users/bytedance/go/pkg/mod/golang.org/[email protected]/src/go/types/check.go:516
#	0x1030522d3	go/types.(*Checker).checkFiles+0x1b3							/Users/bytedance/go/pkg/mod/golang.org/[email protected]/src/go/types/check.go:462
#	0x10305204f	go/types.(*Checker).Files+0x7f								/Users/bytedance/go/pkg/mod/golang.org/[email protected]/src/go/types/check.go:422
#	0x103479987	golang.org/x/tools/gopls/internal/cache.(*typeCheckBatch).checkPackage+0x737		/Users/bytedance/go/pkg/mod/golang.org/x/tools/[email protected]/internal/cache/check.go:1667
#	0x1034722a3	golang.org/x/tools/gopls/internal/cache.(*typeCheckBatch).getPackage.func1+0x2c3	/Users/bytedance/go/pkg/mod/golang.org/x/tools/[email protected]/internal/cache/check.go:421
#	0x1034b6b0f	golang.org/x/tools/gopls/internal/cache.(*futureCache[...]).get+0x35f			/Users/bytedance/go/pkg/mod/golang.org/x/tools/[email protected]/internal/cache/future.go:126
#	0x103471f9b	golang.org/x/tools/gopls/internal/cache.(*typeCheckBatch).getPackage+0x5b		/Users/bytedance/go/pkg/mod/golang.org/x/tools/[email protected]/internal/cache/check.go:372
#	0x10346c2eb	golang.org/x/tools/gopls/internal/cache.(*analysisNode).typeCheck+0x3b			/Users/bytedance/go/pkg/mod/golang.org/x/tools/[email protected]/internal/cache/analysis.go:749
#	0x10346bcff	golang.org/x/tools/gopls/internal/cache.(*analysisNode).run+0x2f			/Users/bytedance/go/pkg/mod/golang.org/x/tools/[email protected]/internal/cache/analysis.go:682
#	0x10346b4c7	golang.org/x/tools/gopls/internal/cache.(*analysisNode).runCached.func1+0x37		/Users/bytedance/go/pkg/mod/golang.org/x/tools/[email protected]/internal/cache/analysis.go:606
#	0x1034c2407	golang.org/x/tools/gopls/internal/cache.(*futureCache[...]).get+0x347			/Users/bytedance/go/pkg/mod/golang.org/x/tools/[email protected]/internal/cache/future.go:126
#	0x10346b38b	golang.org/x/tools/gopls/internal/cache.(*analysisNode).runCached+0x13b			/Users/bytedance/go/pkg/mod/golang.org/x/tools/[email protected]/internal/cache/analysis.go:605
#	0x1034694fb	golang.org/x/tools/gopls/internal/cache.(*Snapshot).Analyze.func6.1+0x45b		/Users/bytedance/go/pkg/mod/golang.org/x/tools/[email protected]/internal/cache/analysis.go:341
#	0x102d7dd33	golang.org/x/sync/errgroup.(*Group).Go.func1+0x53					/Users/bytedance/go/pkg/mod/golang.org/x/[email protected]/errgroup/errgroup.go:78

0: 0 [0: 0] @ 0x102c5b708 0x102c5bc74 0x102cbcfa0 0x103053858 0x103099d18 0x10309b380 0x10309aa68 0x10309a59c 0x10309b010 0x10309aa68 0x10309a59c 0x103089520 0x1030883d4 0x10305cd58 0x103058250 0x103085570 0x1030522b0 0x103052050 0x103479988 0x1034722a4 0x1034b6b10 0x103471f9c 0x10346c2ec 0x10346bd00 0x10346b4c8 0x1034c2408 0x10346b38c 0x1034694fc 0x102d7dd34 0x102cc8844
#	0x103053857	go/types.(*Checker).recordUse+0x67							/Users/bytedance/go/pkg/mod/golang.org/[email protected]/src/go/types/check.go:690
#	0x103099d17	go/types.(*Checker).ident+0x227								/Users/bytedance/go/pkg/mod/golang.org/[email protected]/src/go/types/typexpr.go:57
#	0x10309b37f	go/types.(*Checker).typInternal+0x4df							/Users/bytedance/go/pkg/mod/golang.org/[email protected]/src/go/types/typexpr.go:262
#	0x10309aa67	go/types.(*Checker).definedType+0x27							/Users/bytedance/go/pkg/mod/golang.org/[email protected]/src/go/types/typexpr.go:201
#	0x10309a59b	go/types.(*Checker).varType+0x2b							/Users/bytedance/go/pkg/mod/golang.org/[email protected]/src/go/types/typexpr.go:166
#	0x10309b00f	go/types.(*Checker).typInternal+0x16f							/Users/bytedance/go/pkg/mod/golang.org/[email protected]/src/go/types/typexpr.go:363
#	0x10309aa67	go/types.(*Checker).definedType+0x27							/Users/bytedance/go/pkg/mod/golang.org/[email protected]/src/go/types/typexpr.go:201
#	0x10309a59b	go/types.(*Checker).varType+0x2b							/Users/bytedance/go/pkg/mod/golang.org/[email protected]/src/go/types/typexpr.go:166
#	0x10308951f	go/types.(*Checker).collectParams+0x1df							/Users/bytedance/go/pkg/mod/golang.org/[email protected]/src/go/types/signature.go:293
#	0x1030883d3	go/types.(*Checker).funcType+0x313							/Users/bytedance/go/pkg/mod/golang.org/[email protected]/src/go/types/signature.go:193
#	0x10305cd57	go/types.(*Checker).funcDecl+0xc7							/Users/bytedance/go/pkg/mod/golang.org/[email protected]/src/go/types/decl.go:872
#	0x10305824f	go/types.(*Checker).objDecl+0x77f							/Users/bytedance/go/pkg/mod/golang.org/[email protected]/src/go/types/decl.go:195
#	0x10308556f	go/types.(*Checker).packageObjects+0x3ef						/Users/bytedance/go/pkg/mod/golang.org/[email protected]/src/go/types/resolver.go:714
#	0x1030522af	go/types.(*Checker).checkFiles+0x18f							/Users/bytedance/go/pkg/mod/golang.org/[email protected]/src/go/types/check.go:459
#	0x10305204f	go/types.(*Checker).Files+0x7f								/Users/bytedance/go/pkg/mod/golang.org/[email protected]/src/go/types/check.go:422
#	0x103479987	golang.org/x/tools/gopls/internal/cache.(*typeCheckBatch).checkPackage+0x737		/Users/bytedance/go/pkg/mod/golang.org/x/tools/[email protected]/internal/cache/check.go:1667
#	0x1034722a3	golang.org/x/tools/gopls/internal/cache.(*typeCheckBatch).getPackage.func1+0x2c3	/Users/bytedance/go/pkg/mod/golang.org/x/tools/[email protected]/internal/cache/check.go:421
#	0x1034b6b0f	golang.org/x/tools/gopls/internal/cache.(*futureCache[...]).get+0x35f			/Users/bytedance/go/pkg/mod/golang.org/x/tools/[email protected]/internal/cache/future.go:126
#	0x103471f9b	golang.org/x/tools/gopls/internal/cache.(*typeCheckBatch).getPackage+0x5b		/Users/bytedance/go/pkg/mod/golang.org/x/tools/[email protected]/internal/cache/check.go:372
#	0x10346c2eb	golang.org/x/tools/gopls/internal/cache.(*analysisNode).typeCheck+0x3b			/Users/bytedance/go/pkg/mod/golang.org/x/tools/[email protected]/internal/cache/analysis.go:749
#	0x10346bcff	golang.org/x/tools/gopls/internal/cache.(*analysisNode).run+0x2f			/Users/bytedance/go/pkg/mod/golang.org/x/tools/[email protected]/internal/cache/analysis.go:682
#	0x10346b4c7	golang.org/x/tools/gopls/internal/cache.(*analysisNode).runCached.func1+0x37		/Users/bytedance/go/pkg/mod/golang.org/x/tools/[email protected]/internal/cache/analysis.go:606
#	0x1034c2407	golang.org/x/tools/gopls/internal/cache.(*futureCache[...]).get+0x347			/Users/bytedance/go/pkg/mod/golang.org/x/tools/[email protected]/internal/cache/future.go:126
#	0x10346b38b	golang.org/x/tools/gopls/internal/cache.(*analysisNode).runCached+0x13b			/Users/bytedance/go/pkg/mod/golang.org/x/tools/[email protected]/internal/cache/analysis.go:605
#	0x1034694fb	golang.org/x/tools/gopls/internal/cache.(*Snapshot).Analyze.func6.1+0x45b		/Users/bytedance/go/pkg/mod/golang.org/x/tools/[email protected]/internal/cache/analysis.go:341
#	0x102d7dd33	golang.org/x/sync/errgroup.(*Group).Go.func1+0x53					/Users/bytedance/go/pkg/mod/golang.org/x/[email protected]/errgroup/errgroup.go:78

0: 0 [0: 0] @ 0x102ca3e8d 0x102ca3a14 0x102ca3c38 0x10307c27c 0x1030a70d4 0x1030778b8 0x102e2eb10 0x102e2e850 0x102e2e888 0x102e2e8c0 0x102e2e8c0 0x102e2e008 0x103076fc8 0x10345f8d0 0x10345f068 0x1034928c0 0x1034928a1 0x102cd4e08 0x10349284c 0x103492819 0x1034727b0 0x102cc8844
#	0x10307c27b	go/types.Id+0x8b								/Users/bytedance/go/pkg/mod/golang.org/[email protected]/src/go/types/object.go:90
#	0x1030a70d3	go/types.(*object).Id+0x33							/Users/bytedance/go/pkg/mod/golang.org/[email protected]/src/go/types/object.go:159
#	0x1030778b7	go/types.NewMethodSet.func1+0x47						/Users/bytedance/go/pkg/mod/golang.org/[email protected]/src/go/types/methodset.go:205
#	0x102e2eb0f	sort.partition_func+0x1cf							/Users/bytedance/go/pkg/mod/golang.org/[email protected]/src/sort/zsortfunc.go:157
#	0x102e2e84f	sort.pdqsort_func+0x1af								/Users/bytedance/go/pkg/mod/golang.org/[email protected]/src/sort/zsortfunc.go:114
#	0x102e2e887	sort.pdqsort_func+0x1e7								/Users/bytedance/go/pkg/mod/golang.org/[email protected]/src/sort/zsortfunc.go:121
#	0x102e2e8bf	sort.pdqsort_func+0x21f								/Users/bytedance/go/pkg/mod/golang.org/[email protected]/src/sort/zsortfunc.go:125
#	0x102e2e8bf	sort.pdqsort_func+0x21f								/Users/bytedance/go/pkg/mod/golang.org/[email protected]/src/sort/zsortfunc.go:125
#	0x102e2e007	sort.Slice+0xb7									/Users/bytedance/go/pkg/mod/golang.org/[email protected]/src/sort/slice.go:29
#	0x103076fc7	go/types.NewMethodSet+0x337							/Users/bytedance/go/pkg/mod/golang.org/[email protected]/src/go/types/methodset.go:204
#	0x10345f8cf	golang.org/x/tools/gopls/internal/cache/methodsets.methodSetInfo+0x2f		/Users/bytedance/go/pkg/mod/golang.org/x/tools/[email protected]/internal/cache/methodsets/methodsets.go:319
#	0x10345f067	golang.org/x/tools/gopls/internal/cache/methodsets.(*indexBuilder).build+0x437	/Users/bytedance/go/pkg/mod/golang.org/x/tools/[email protected]/internal/cache/methodsets/methodsets.go:286
#	0x1034928bf	golang.org/x/tools/gopls/internal/cache/methodsets.NewIndex+0x3f		/Users/bytedance/go/pkg/mod/golang.org/x/tools/[email protected]/internal/cache/methodsets/methodsets.go:82
#	0x1034928a0	golang.org/x/tools/gopls/internal/cache.(*syntaxPackage).methodsets.func1+0x20	/Users/bytedance/go/pkg/mod/golang.org/x/tools/[email protected]/internal/cache/package.go:79
#	0x102cd4e07	sync.(*Once).doSlow+0xf7							/Users/bytedance/go/pkg/mod/golang.org/[email protected]/src/sync/once.go:76
#	0x10349284b	sync.(*Once).Do+0x4b								/Users/bytedance/go/pkg/mod/golang.org/[email protected]/src/sync/once.go:67
#	0x103492818	golang.org/x/tools/gopls/internal/cache.(*syntaxPackage).methodsets+0x18	/Users/bytedance/go/pkg/mod/golang.org/x/tools/[email protected]/internal/cache/package.go:78
#	0x1034727af	golang.org/x/tools/gopls/internal/cache.storePackageResults+0xef		/Users/bytedance/go/pkg/mod/golang.org/x/tools/[email protected]/internal/cache/check.go:438

0: 0 [0: 0] @ 0x102ca3e8d 0x102ca3a14 0x102ca3c38 0x10307c27c 0x1030a70d4 0x1030778b8 0x102e2ead4 0x102e2e850 0x102e2e8c0 0x102e2e888 0x102e2e8c0 0x102e2e8c0 0x102e2e008 0x103076fc8 0x10345f8d0 0x10345f068 0x1034928c0 0x1034928a1 0x102cd4e08 0x10349284c 0x103492819 0x1034727b0 0x102cc8844
#	0x10307c27b	go/types.Id+0x8b								/Users/bytedance/go/pkg/mod/golang.org/[email protected]/src/go/types/object.go:90
#	0x1030a70d3	go/types.(*object).Id+0x33							/Users/bytedance/go/pkg/mod/golang.org/[email protected]/src/go/types/object.go:159
#	0x1030778b7	go/types.NewMethodSet.func1+0x47						/Users/bytedance/go/pkg/mod/golang.org/[email protected]/src/go/types/methodset.go:205
#	0x102e2ead3	sort.partition_func+0x193							/Users/bytedance/go/pkg/mod/golang.org/[email protected]/src/sort/zsortfunc.go:154
#	0x102e2e84f	sort.pdqsort_func+0x1af								/Users/bytedance/go/pkg/mod/golang.org/[email protected]/src/sort/zsortfunc.go:114
#	0x102e2e8bf	sort.pdqsort_func+0x21f								/Users/bytedance/go/pkg/mod/golang.org/[email protected]/src/sort/zsortfunc.go:125
#	0x102e2e887	sort.pdqsort_func+0x1e7								/Users/bytedance/go/pkg/mod/golang.org/[email protected]/src/sort/zsortfunc.go:121
#	0x102e2e8bf	sort.pdqsort_func+0x21f								/Users/bytedance/go/pkg/mod/golang.org/[email protected]/src/sort/zsortfunc.go:125
#	0x102e2e8bf	sort.pdqsort_func+0x21f								/Users/bytedance/go/pkg/mod/golang.org/[email protected]/src/sort/zsortfunc.go:125
#	0x102e2e007	sort.Slice+0xb7									/Users/bytedance/go/pkg/mod/golang.org/[email protected]/src/sort/slice.go:29
#	0x103076fc7	go/types.NewMethodSet+0x337							/Users/bytedance/go/pkg/mod/golang.org/[email protected]/src/go/types/methodset.go:204
#	0x10345f8cf	golang.org/x/tools/gopls/internal/cache/methodsets.methodSetInfo+0x2f		/Users/bytedance/go/pkg/mod/golang.org/x/tools/[email protected]/internal/cache/methodsets/methodsets.go:319
#	0x10345f067	golang.org/x/tools/gopls/internal/cache/methodsets.(*indexBuilder).build+0x437	/Users/bytedance/go/pkg/mod/golang.org/x/tools/[email protected]/internal/cache/methodsets/methodsets.go:286
#	0x1034928bf	golang.org/x/tools/gopls/internal/cache/methodsets.NewIndex+0x3f		/Users/bytedance/go/pkg/mod/golang.org/x/tools/[email protected]/internal/cache/methodsets/methodsets.go:82
#	0x1034928a0	golang.org/x/tools/gopls/internal/cache.(*syntaxPackage).methodsets.func1+0x20	/Users/bytedance/go/pkg/mod/golang.org/x/tools/[email protected]/internal/cache/package.go:79
#	0x102cd4e07	sync.(*Once).doSlow+0xf7							/Users/bytedance/go/pkg/mod/golang.org/[email protected]/src/sync/once.go:76
#	0x10349284b	sync.(*Once).Do+0x4b								/Users/bytedance/go/pkg/mod/golang.org/[email protected]/src/sync/once.go:67
#	0x103492818	golang.org/x/tools/gopls/internal/cache.(*syntaxPackage).methodsets+0x18	/Users/bytedance/go/pkg/mod/golang.org/x/tools/[email protected]/internal/cache/package.go:78
#	0x1034727af	golang.org/x/tools/gopls/internal/cache.storePackageResults+0xef		/Users/bytedance/go/pkg/mod/golang.org/x/tools/[email protected]/internal/cache/check.go:438

0: 0 [0: 0] @ 0x102ca3e8d 0x102ca3a14 0x102ca3c38 0x10307c27c 0x1030a70d4 0x1030778e8 0x102e2f260 0x102e2f275 0x102e2f134 0x102e2f115 0x102e2e744 0x102e2e8c0 0x102e2e008 0x103076fc8 0x10345f8d0 0x10345f068 0x1034928c0 0x1034928a1 0x102cd4e08 0x10349284c 0x103492819 0x1034727b0 0x102cc8844
#	0x10307c27b	go/types.Id+0x8b								/Users/bytedance/go/pkg/mod/golang.org/[email protected]/src/go/types/object.go:90
#	0x1030a70d3	go/types.(*object).Id+0x33							/Users/bytedance/go/pkg/mod/golang.org/[email protected]/src/go/types/object.go:159
#	0x1030778e7	go/types.NewMethodSet.func1+0x77						/Users/bytedance/go/pkg/mod/golang.org/[email protected]/src/go/types/methodset.go:205
#	0x102e2f25f	sort.order2_func+0x8f								/Users/bytedance/go/pkg/mod/golang.org/[email protected]/src/sort/zsortfunc.go:299
#	0x102e2f274	sort.median_func+0xa4								/Users/bytedance/go/pkg/mod/golang.org/[email protected]/src/sort/zsortfunc.go:309
#	0x102e2f133	sort.medianAdjacent_func+0xe3							/Users/bytedance/go/pkg/mod/golang.org/[email protected]/src/sort/zsortfunc.go:316
#	0x102e2f114	sort.choosePivot_func+0xc4							/Users/bytedance/go/pkg/mod/golang.org/[email protected]/src/sort/zsortfunc.go:281
#	0x102e2e743	sort.pdqsort_func+0xa3								/Users/bytedance/go/pkg/mod/golang.org/[email protected]/src/sort/zsortfunc.go:89
#	0x102e2e8bf	sort.pdqsort_func+0x21f								/Users/bytedance/go/pkg/mod/golang.org/[email protected]/src/sort/zsortfunc.go:125
#	0x102e2e007	sort.Slice+0xb7									/Users/bytedance/go/pkg/mod/golang.org/[email protected]/src/sort/slice.go:29
#	0x103076fc7	go/types.NewMethodSet+0x337							/Users/bytedance/go/pkg/mod/golang.org/[email protected]/src/go/types/methodset.go:204
#	0x10345f8cf	golang.org/x/tools/gopls/internal/cache/methodsets.methodSetInfo+0x2f		/Users/bytedance/go/pkg/mod/golang.org/x/tools/[email protected]/internal/cache/methodsets/methodsets.go:319
#	0x10345f067	golang.org/x/tools/gopls/internal/cache/methodsets.(*indexBuilder).build+0x437	/Users/bytedance/go/pkg/mod/golang.org/x/tools/[email protected]/internal/cache/methodsets/methodsets.go:286
#	0x1034928bf	golang.org/x/tools/gopls/internal/cache/methodsets.NewIndex+0x3f		/Users/bytedance/go/pkg/mod/golang.org/x/tools/[email protected]/internal/cache/methodsets/methodsets.go:82
#	0x1034928a0	golang.org/x/tools/gopls/internal/cache.(*syntaxPackage).methodsets.func1+0x20	/Users/bytedance/go/pkg/mod/golang.org/x/tools/[email protected]/internal/cache/package.go:79
#	0x102cd4e07	sync.(*Once).doSlow+0xf7							/Users/bytedance/go/pkg/mod/golang.org/[email protected]/src/sync/once.go:76
#	0x10349284b	sync.(*Once).Do+0x4b								/Users/bytedance/go/pkg/mod/golang.org/[email protected]/src/sync/once.go:67
#	0x103492818	golang.org/x/tools/gopls/internal/cache.(*syntaxPackage).methodsets+0x18	/Users/bytedance/go/pkg/mod/golang.org/x/tools/[email protected]/internal/cache/package.go:78
#	0x1034727af	golang.org/x/tools/gopls/internal/cache.storePackageResults+0xef		/Users/bytedance/go/pkg/mod/golang.org/x/tools/[email protected]/internal/cache/check.go:438

full goroutine stack dump

goroutine 76086 [running]:
runtime/pprof.writeGoroutineStacks({0x103b71540, 0x142017f8000})
	/Users/bytedance/go/pkg/mod/golang.org/[email protected]/src/runtime/pprof/pprof.go:761 +0x6c
runtime/pprof.writeGoroutine({0x103b71540?, 0x142017f8000?}, 0x1400b41f838?)
	/Users/bytedance/go/pkg/mod/golang.org/[email protected]/src/runtime/pprof/pprof.go:750 +0x2c
runtime/pprof.(*Profile).WriteTo(0x104273490?, {0x103b71540?, 0x142017f8000?}, 0xc?)
	/Users/bytedance/go/pkg/mod/golang.org/[email protected]/src/runtime/pprof/pprof.go:374 +0x148
net/http/pprof.handler.ServeHTTP({0x142466392a1, 0x9}, {0x103b797e0, 0x142017f8000}, 0x141606ac140)
	/Users/bytedance/go/pkg/mod/golang.org/[email protected]/src/net/http/pprof/pprof.go:272 +0x444
net/http/pprof.Index({0x103b797e0, 0x142017f8000}, 0x141606ac140?)
	/Users/bytedance/go/pkg/mod/golang.org/[email protected]/src/net/http/pprof/pprof.go:388 +0xc8
net/http.HandlerFunc.ServeHTTP(0x140001ee2a0?, {0x103b797e0?, 0x142017f8000?}, 0x102f56184?)
	/Users/bytedance/go/pkg/mod/golang.org/[email protected]/src/net/http/server.go:2220 +0x38
net/http.(*ServeMux).ServeHTTP(0x0?, {0x103b797e0, 0x142017f8000}, 0x141606ac140)
	/Users/bytedance/go/pkg/mod/golang.org/[email protected]/src/net/http/server.go:2747 +0x1b4
net/http.serverHandler.ServeHTTP({0x14144570240?}, {0x103b797e0?, 0x142017f8000?}, 0x6?)
	/Users/bytedance/go/pkg/mod/golang.org/[email protected]/src/net/http/server.go:3210 +0xbc
net/http.(*conn).serve(0x1424a46c990, {0x103b7b308, 0x140000ae480})
	/Users/bytedance/go/pkg/mod/golang.org/[email protected]/src/net/http/server.go:2092 +0x4fc
created by net/http.(*Server).Serve in goroutine 114
	/Users/bytedance/go/pkg/mod/golang.org/[email protected]/src/net/http/server.go:3360 +0x3dc

goroutine 1 [chan receive]:
golang.org/x/tools/gopls/internal/lsprpc.(*streamServer).ServeStream(0x140003eb3b0, {0x103b7b308, 0x140003eb890}, {0x103b7f3b0, 0x14000031130})
	/Users/bytedance/go/pkg/mod/golang.org/x/tools/[email protected]/internal/lsprpc/lsprpc.go:93 +0x724
golang.org/x/tools/gopls/internal/cmd.(*Serve).Run(0x140003e7d90, {0x103b7b308, 0x140003eaff0}, {0x1400015a040?, 0x0?, 0x0?})
	/Users/bytedance/go/pkg/mod/golang.org/x/tools/[email protected]/internal/cmd/serve.go:141 +0x79c
golang.org/x/tools/internal/tool.Run({0x103b7b308, 0x140003eaff0}, 0x14000364ee0, {0x103b7dce0, 0x140003e7d90}, {0x1400015a040, 0x0, 0x0})
	/Users/bytedance/go/pkg/mod/golang.org/x/[email protected]/internal/tool/tool.go:213 +0x568
golang.org/x/tools/gopls/internal/cmd.(*Application).Run(0x140003e7d40, {0x103b7b2d0, 0x1042cfee0}, {0x1400015a040, 0x0, 0x0})
	/Users/bytedance/go/pkg/mod/golang.org/x/tools/[email protected]/internal/cmd/cmd.go:244 +0x104
golang.org/x/tools/internal/tool.Run({0x103b7b2d0, 0x1042cfee0}, 0x14000364e70, {0x103b7d660, 0x140003e7d40}, {0x1400015a010, 0x4, 0x4})
	/Users/bytedance/go/pkg/mod/golang.org/x/[email protected]/internal/tool/tool.go:213 +0x568
golang.org/x/tools/internal/tool.Main({0x103b7b2d0, 0x1042cfee0}, {0x103b7d660, 0x140003e7d40}, {0x1400015a010, 0x4, 0x4})
	/Users/bytedance/go/pkg/mod/golang.org/x/[email protected]/internal/tool/tool.go:94 +0xfc
main.main()
	/Users/bytedance/go/pkg/mod/golang.org/x/tools/[email protected]/main.go:56 +0x210

goroutine 110 [sleep]:
time.Sleep(0x45d964b800)
	/Users/bytedance/go/pkg/mod/golang.org/[email protected]/src/runtime/time.go:300 +0xe0
golang.org/x/tools/gopls/internal/filecache.gc({0x140003c64b0, 0x25})
	/Users/bytedance/go/pkg/mod/golang.org/x/tools/[email protected]/internal/filecache/filecache.go:457 +0xcc
created by golang.org/x/tools/gopls/internal/filecache.getCacheDir.func1 in goroutine 1
	/Users/bytedance/go/pkg/mod/golang.org/x/tools/[email protected]/internal/filecache/filecache.go:365 +0x168

goroutine 109 [syscall]:
syscall.syscall6(0x12b346088?, 0x90?, 0x140002b1e98?, 0x104600108?, 0x90?, 0x102c52f74?, 0x140002b1e98?)
	/Users/bytedance/go/pkg/mod/golang.org/[email protected]/src/runtime/sys_darwin.go:60 +0x50
syscall.wait4(0x140002b1ea8?, 0x102d47d84?, 0x90?, 0x103b4b400?)
	/Users/bytedance/go/pkg/mod/golang.org/[email protected]/src/syscall/zsyscall_darwin_arm64.go:44 +0x4c
syscall.Wait4(0x140000021c0?, 0x140002b1edc, 0x3?, 0x100000102c52ea8?)
	/Users/bytedance/go/pkg/mod/golang.org/[email protected]/src/syscall/syscall_bsd.go:144 +0x28
os.(*Process).pidWait(0x140003b0740)
	/Users/bytedance/go/pkg/mod/golang.org/[email protected]/src/os/exec_unix.go:70 +0x9c
os.(*Process).wait(0x140002b1fa8?)
	/Users/bytedance/go/pkg/mod/golang.org/[email protected]/src/os/exec_unix.go:30 +0x24
os.(*Process).Wait(...)
	/Users/bytedance/go/pkg/mod/golang.org/[email protected]/src/os/exec.go:358
os/exec.(*Cmd).Wait(0x14000192600)
	/Users/bytedance/go/pkg/mod/golang.org/[email protected]/src/os/exec/exec.go:906 +0x38
golang.org/x/telemetry.startChild.func1()
	/Users/bytedance/go/pkg/mod/golang.org/x/[email protected]/start.go:246 +0x28
created by golang.org/x/telemetry.startChild in goroutine 1
	/Users/bytedance/go/pkg/mod/golang.org/x/[email protected]/start.go:245 +0x764

goroutine 114 [IO wait]:
internal/poll.runtime_pollWait(0x12b4ad048, 0x72)
	/Users/bytedance/go/pkg/mod/golang.org/[email protected]/src/runtime/netpoll.go:351 +0xa0
internal/poll.(*pollDesc).wait(0x14000190280?, 0x102cb9dc8?, 0x0)
	/Users/bytedance/go/pkg/mod/golang.org/[email protected]/src/internal/poll/fd_poll_runtime.go:84 +0x28
internal/poll.(*pollDesc).waitRead(...)
	/Users/bytedance/go/pkg/mod/golang.org/[email protected]/src/internal/poll/fd_poll_runtime.go:89
internal/poll.(*FD).Accept(0x14000190280)
	/Users/bytedance/go/pkg/mod/golang.org/[email protected]/src/internal/poll/fd_unix.go:620 +0x24c
net.(*netFD).accept(0x14000190280)
	/Users/bytedance/go/pkg/mod/golang.org/[email protected]/src/net/fd_unix.go:172 +0x28
net.(*TCPListener).accept(0x1400040b280)
	/Users/bytedance/go/pkg/mod/golang.org/[email protected]/src/net/tcpsock_posix.go:159 +0x28
net.(*TCPListener).Accept(0x1400040b280)
	/Users/bytedance/go/pkg/mod/golang.org/[email protected]/src/net/tcpsock.go:372 +0x2c
net/http.(*Server).Serve(0x140005040f0, {0x103b7a770, 0x1400040b280})
	/Users/bytedance/go/pkg/mod/golang.org/[email protected]/src/net/http/server.go:3330 +0x294
net/http.Serve(...)
	/Users/bytedance/go/pkg/mod/golang.org/[email protected]/src/net/http/server.go:2858
golang.org/x/tools/gopls/internal/debug.(*Instance).Serve.func1()
	/Users/bytedance/go/pkg/mod/golang.org/x/tools/[email protected]/internal/debug/serve.go:479 +0x984
created by golang.org/x/tools/gopls/internal/debug.(*Instance).Serve in goroutine 1
	/Users/bytedance/go/pkg/mod/golang.org/x/tools/[email protected]/internal/debug/serve.go:440 +0x384

goroutine 115 [syscall]:
syscall.syscall(0x140000fadd8?, 0x102d3ef0c?, 0x800000?, 0x7ffff800000?)
	/Users/bytedance/go/pkg/mod/golang.org/[email protected]/src/runtime/sys_darwin.go:27 +0x48
syscall.read(0x1400014c060?, {0x140003fa000?, 0x140002b1738?, 0x100010102e3d74c?})
	/Users/bytedance/go/pkg/mod/golang.org/[email protected]/src/syscall/zsyscall_darwin_arm64.go:1245 +0x48
syscall.Read(...)
	/Users/bytedance/go/pkg/mod/golang.org/[email protected]/src/syscall/syscall_unix.go:183
internal/poll.ignoringEINTRIO(...)
	/Users/bytedance/go/pkg/mod/golang.org/[email protected]/src/internal/poll/fd_unix.go:745
internal/poll.(*FD).Read(0x1400014c060, {0x140003fa000, 0x1000, 0x1000})
	/Users/bytedance/go/pkg/mod/golang.org/[email protected]/src/internal/poll/fd_unix.go:161 +0x220
os.(*File).read(...)
	/Users/bytedance/go/pkg/mod/golang.org/[email protected]/src/os/file_posix.go:29
os.(*File).Read(0x14000126018, {0x140003fa000?, 0x2?, 0x2?})
	/Users/bytedance/go/pkg/mod/golang.org/[email protected]/src/os/file.go:124 +0x70
golang.org/x/tools/internal/fakenet.(*connFeeder).run(0x140003eb3e0)
	/Users/bytedance/go/pkg/mod/golang.org/x/[email protected]/internal/fakenet/conn.go:121 +0x8c
created by golang.org/x/tools/internal/fakenet.NewConn in goroutine 1
	/Users/bytedance/go/pkg/mod/golang.org/x/[email protected]/internal/fakenet/conn.go:26 +0x2e0

goroutine 116 [select]:
golang.org/x/tools/internal/fakenet.(*connFeeder).run(0x140003eb410)
	/Users/bytedance/go/pkg/mod/golang.org/x/[email protected]/internal/fakenet/conn.go:115 +0x6c
created by golang.org/x/tools/internal/fakenet.NewConn in goroutine 1
	/Users/bytedance/go/pkg/mod/golang.org/x/[email protected]/internal/fakenet/conn.go:27 +0x32c

goroutine 117 [select]:
golang.org/x/tools/gopls/internal/cache.(*parseCache).gc(0x14000031180)
	/Users/bytedance/go/pkg/mod/golang.org/x/tools/[email protected]/internal/cache/parse_cache.go:262 +0xa4
created by golang.org/x/tools/gopls/internal/cache.newParseCache in goroutine 1
	/Users/bytedance/go/pkg/mod/golang.org/x/tools/[email protected]/internal/cache/parse_cache.go:119 +0xc4

goroutine 118 [select]:
golang.org/x/tools/internal/fakenet.(*connFeeder).do(...)
	/Users/bytedance/go/pkg/mod/golang.org/x/[email protected]/internal/fakenet/conn.go:103
golang.org/x/tools/internal/fakenet.(*fakeConn).Read(0x0?, {0x140003fa000?, 0x0?, 0x0?})
	/Users/bytedance/go/pkg/mod/golang.org/x/[email protected]/internal/fakenet/conn.go:67 +0xd4
bufio.(*Reader).fill(0x140003f81e0)
	/Users/bytedance/go/pkg/mod/golang.org/[email protected]/src/bufio/bufio.go:110 +0xf8
bufio.(*Reader).ReadSlice(0x140003f81e0, 0xa)
	/Users/bytedance/go/pkg/mod/golang.org/[email protected]/src/bufio/bufio.go:376 +0x30
bufio.(*Reader).collectFragments(0x140003f81e0, 0xa)
	/Users/bytedance/go/pkg/mod/golang.org/[email protected]/src/bufio/bufio.go:451 +0x64
bufio.(*Reader).ReadString(0x103b6fe28?, 0xa0?)
	/Users/bytedance/go/pkg/mod/golang.org/[email protected]/src/bufio/bufio.go:498 +0x20
golang.org/x/tools/internal/jsonrpc2.(*headerStream).Read(0x140002f7b90, {0x103b7b308, 0x140003eb890})
	/Users/bytedance/go/pkg/mod/golang.org/x/[email protected]/internal/jsonrpc2/stream.go:110 +0xa4
golang.org/x/tools/gopls/internal/protocol.(*loggingStream).Read(0x140003eb440, {0x103b7b308?, 0x140003eb890?})
	/Users/bytedance/go/pkg/mod/golang.org/x/tools/[email protected]/internal/protocol/log.go:30 +0x38
golang.org/x/tools/internal/jsonrpc2.(*conn).run(0x14000031130, {0x103b7b308, 0x140003eb890}, 0x140002f7c38)
	/Users/bytedance/go/pkg/mod/golang.org/x/[email protected]/internal/jsonrpc2/conn.go:195 +0x80
created by golang.org/x/tools/internal/jsonrpc2.(*conn).Go in goroutine 1
	/Users/bytedance/go/pkg/mod/golang.org/x/[email protected]/internal/jsonrpc2/conn.go:188 +0x90

goroutine 123 [chan receive]:
golang.org/x/tools/gopls/internal/protocol.LogEvent.func1.1()
	/Users/bytedance/go/pkg/mod/golang.org/x/tools/[email protected]/internal/protocol/context.go:47 +0x48
created by golang.org/x/tools/gopls/internal/protocol.LogEvent.func1 in goroutine 16
	/Users/bytedance/go/pkg/mod/golang.org/x/tools/[email protected]/internal/protocol/context.go:46 +0x24

goroutine 146 [semacquire]:
sync.runtime_Semacquire(0x1403c471318?)
	/Users/bytedance/go/pkg/mod/golang.org/[email protected]/src/runtime/sema.go:71 +0x2c
sync.(*WaitGroup).Wait(0x14216735188)
	/Users/bytedance/go/pkg/mod/golang.org/[email protected]/src/sync/waitgroup.go:118 +0x74
golang.org/x/sync/errgroup.(*Group).Wait(0x14216735180)
	/Users/bytedance/go/pkg/mod/golang.org/x/[email protected]/errgroup/errgroup.go:56 +0x2c
golang.org/x/tools/gopls/internal/cache.(*typeCheckBatch).query(0x14064457440, {0x103b7b308, 0x140604f45d0}, {0x1405aa2d770, 0x1, 0x10349fbbc?}, 0x0, 0x14216735140, 0x20?)
	/Users/bytedance/go/pkg/mod/golang.org/x/tools/[email protected]/internal/cache/check.go:302 +0x138
golang.org/x/tools/gopls/internal/cache.(*Snapshot).forEachPackage(0x14000001d40, {0x103b7b308, 0x140604f4480}, {0x1403c471618, 0x1, 0x2?}, 0x0, 0x140604f24e0)
	/Users/bytedance/go/pkg/mod/golang.org/x/tools/[email protected]/internal/cache/check.go:229 +0x638
golang.org/x/tools/gopls/internal/cache.(*Snapshot).TypeCheck(0x14000001d40, {0x103b7b308, 0x140604f4480}, {0x1403c471618, 0x1, 0x1})
	/Users/bytedance/go/pkg/mod/golang.org/x/tools/[email protected]/internal/cache/check.go:137 +0xb0
golang.org/x/tools/gopls/internal/golang.selectPackageForFile({0x103b7b308, 0x140604f4480}, 0x14000001d40, {0x14008ffca20, 0x57}, 0x103b69c50)
	/Users/bytedance/go/pkg/mod/golang.org/x/tools/[email protected]/internal/golang/snapshot.go:79 +0x220
golang.org/x/tools/gopls/internal/golang.NarrowestPackageForFile({0x103b7b308?, 0x140604f4480?}, 0x10365a1e0?, {0x14008ffca20?, 0x0?})
	/Users/bytedance/go/pkg/mod/golang.org/x/tools/[email protected]/internal/golang/snapshot.go:48 +0x30
golang.org/x/tools/gopls/internal/golang.InlayHint({0x103b7b308?, 0x140604f4330?}, 0x14000001d40, {0x103b7dea0, 0x1405afdbce0}, {{0x39a0640?, 0x1?}, {0x604f4060?, 0x140?}})
	/Users/bytedance/go/pkg/mod/golang.org/x/tools/[email protected]/internal/golang/inlay_hint.go:29 +0xb0
golang.org/x/tools/gopls/internal/server.(*server).InlayHint(0x14000192780, {0x103b7b308, 0x140004e2900}, 0x140604f4060)
	/Users/bytedance/go/pkg/mod/golang.org/x/tools/[email protected]/internal/server/inlay_hint.go:32 +0x278
golang.org/x/tools/gopls/internal/protocol.serverDispatch({0x103b7b308, 0x140004e2900}, {0x103b97fb8, 0x14000192780}, 0x140604f4030, {0x103b7b500, 0x140002ce500})
	/Users/bytedance/go/pkg/mod/golang.org/x/tools/[email protected]/internal/protocol/tsserver.go:527 +0x19a0
golang.org/x/tools/gopls/internal/lsprpc.(*streamServer).ServeStream.ServerHandler.func3({0x103b7b308, 0x140004e2900}, 0x140604f4030, {0x103b7b500, 0x140002ce500})
	/Users/bytedance/go/pkg/mod/golang.org/x/tools/[email protected]/internal/protocol/protocol.go:160 +0x74
golang.org/x/tools/gopls/internal/lsprpc.(*streamServer).ServeStream.handshaker.func4({0x103b7b308, 0x140004e2900}, 0x140604f4030, {0x103b7b500, 0x140002ce500})
	/Users/bytedance/go/pkg/mod/golang.org/x/tools/[email protected]/internal/lsprpc/lsprpc.go:509 +0x6b8
golang.org/x/tools/gopls/internal/protocol.Handlers.MustReplyHandler.func1({0x103b7b308, 0x140004e2900}, 0x1400000cd80, {0x103b7b500, 0x140002ce500})
	/Users/bytedance/go/pkg/mod/golang.org/x/[email protected]/internal/jsonrpc2/handler.go:35 +0xc0
golang.org/x/tools/gopls/internal/protocol.Handlers.AsyncHandler.func2.2()
	/Users/bytedance/go/pkg/mod/golang.org/x/[email protected]/internal/jsonrpc2/handler.go:104 +0x90
created by golang.org/x/tools/gopls/internal/protocol.Handlers.AsyncHandler.func2 in goroutine 118
	/Users/bytedance/go/pkg/mod/golang.org/x/[email protected]/internal/jsonrpc2/handler.go:101 +0x1fc

goroutine 15173 [semacquire]:
sync.runtime_Semacquire(0x140656f3918?)
	/Users/bytedance/go/pkg/mod/golang.org/[email protected]/src/runtime/sema.go:71 +0x2c
sync.(*WaitGroup).Wait(0x142168f0008)
	/Users/bytedance/go/pkg/mod/golang.org/[email protected]/src/sync/waitgroup.go:118 +0x74
golang.org/x/sync/errgroup.(*Group).Wait(0x142168f0000)
	/Users/bytedance/go/pkg/mod/golang.org/x/[email protected]/errgroup/errgroup.go:56 +0x2c
golang.org/x/tools/gopls/internal/cache.(*typeCheckBatch).query(0x14064457440, {0x103b7b308, 0x1406445d7a0}, {0x1406443cbe0, 0x1, 0x102cba2dc?}, 0x142168c5ef0, 0x142167bdf40, 0x10?)
	/Users/bytedance/go/pkg/mod/golang.org/x/tools/[email protected]/internal/cache/check.go:302 +0x138
golang.org/x/tools/gopls/internal/cache.(*Snapshot).forEachPackage(0x14000001d40, {0x103b7b308, 0x1406445d620}, {0x1406443cb60, 0x1, 0x100000104602fe8?}, 0x14064460660, 0x1406443cba0)
	/Users/bytedance/go/pkg/mod/golang.org/x/tools/[email protected]/internal/cache/check.go:229 +0x638
golang.org/x/tools/gopls/internal/cache.(*Snapshot).PackageDiagnostics(0x14000001d40, {0x103b7b308?, 0x1406445d470?}, {0x1406443cb60, 0x1, 0x1})
	/Users/bytedance/go/pkg/mod/golang.org/x/tools/[email protected]/internal/cache/snapshot.go:559 +0x19c
golang.org/x/tools/gopls/internal/server.(*server).diagnoseChangedFiles(0x103b7b340?, {0x103b7b308, 0x1406445d2c0}, 0x14000001d40, {0x1405cf84e20, 0x1, 0x3?})
	/Users/bytedance/go/pkg/mod/golang.org/x/tools/[email protected]/internal/server/diagnostics.go:293 +0x33c
golang.org/x/tools/gopls/internal/server.(*server).diagnoseSnapshot(0x14000192780, {0x103b7b340, 0x1403126a960}, 0x14000001d40, {0x1405cf84e20, 0x1, 0x1}, 0x3b9aca00)
	/Users/bytedance/go/pkg/mod/golang.org/x/tools/[email protected]/internal/server/diagnostics.go:216 +0xb8
golang.org/x/tools/gopls/internal/server.(*server).diagnoseChangedViews.func1(0x2ffa?, {0x1405cf84e20?, 0x63?, 0xffc3f3c1?})
	/Users/bytedance/go/pkg/mod/golang.org/x/tools/[email protected]/internal/server/diagnostics.go:157 +0xbc
created by golang.org/x/tools/gopls/internal/server.(*server).diagnoseChangedViews in goroutine 12630
	/Users/bytedance/go/pkg/mod/golang.org/x/tools/[email protected]/internal/server/diagnostics.go:154 +0x4e4

goroutine 169 [chan receive]:
golang.org/x/tools/gopls/internal/protocol.Handlers.AsyncHandler.func2.2()
	/Users/bytedance/go/pkg/mod/golang.org/x/[email protected]/internal/jsonrpc2/handler.go:102 +0x60
created by golang.org/x/tools/gopls/internal/protocol.Handlers.AsyncHandler.func2 in goroutine 118
	/Users/bytedance/go/pkg/mod/golang.org/x/[email protected]/internal/jsonrpc2/handler.go:101 +0x1fc

goroutine 170 [chan receive]:
golang.org/x/tools/gopls/internal/protocol.Handlers.AsyncHandler.func2.2()
	/Users/bytedance/go/pkg/mod/golang.org/x/[email protected]/internal/jsonrpc2/handler.go:102 +0x60
created by golang.org/x/tools/gopls/internal/protocol.Handlers.AsyncHandler.func2 in goroutine 118
	/Users/bytedance/go/pkg/mod/golang.org/x/[email protected]/internal/jsonrpc2/handler.go:101 +0x1fc

goroutine 171 [chan receive]:
golang.org/x/tools/gopls/internal/protocol.Handlers.AsyncHandler.func2.2()
	/Users/bytedance/go/pkg/mod/golang.org/x/[email protected]/internal/jsonrpc2/handler.go:102 +0x60
created by golang.org/x/tools/gopls/internal/protocol.Handlers.AsyncHandler.func2 in goroutine 118
	/Users/bytedance/go/pkg/mod/golang.org/x/[email protected]/internal/jsonrpc2/handler.go:101 +0x1fc

goroutine 172 [chan receive]:
golang.org/x/tools/gopls/internal/protocol.Handlers.AsyncHandler.func2.2()
	/Users/bytedance/go/pkg/mod/golang.org/x/[email protected]/internal/jsonrpc2/handler.go:102 +0x60
created by golang.org/x/tools/gopls/internal/protocol.Handlers.AsyncHandler.func2 in goroutine 118
	/Users/bytedance/go/pkg/mod/golang.org/x/[email protected]/internal/jsonrpc2/handler.go:101 +0x1fc

goroutine 173 [chan receive]:
golang.org/x/tools/gopls/internal/protocol.Handlers.AsyncHandler.func2.2()
	/Users/bytedance/go/pkg/mod/golang.org/x/[email protected]/internal/jsonrpc2/handler.go:102 +0x60
created by golang.org/x/tools/gopls/internal/protocol.Handlers.AsyncHandler.func2 in goroutine 118
	/Users/bytedance/go/pkg/mod/golang.org/x/[email protected]/internal/jsonrpc2/handler.go:101 +0x1fc

goroutine 174 [chan receive]:
golang.org/x/tools/gopls/internal/protocol.Handlers.AsyncHandler.func2.2()
	/Users/bytedance/go/pkg/mod/golang.org/x/[email protected]/internal/jsonrpc2/handler.go:102 +0x60
created by golang.org/x/tools/gopls/internal/protocol.Handlers.AsyncHandler.func2 in goroutine 118
	/Users/bytedance/go/pkg/mod/golang.org/x/[email protected]/internal/jsonrpc2/handler.go:101 +0x1fc

goroutine 175 [chan receive]:
golang.org/x/tools/gopls/internal/protocol.Handlers.AsyncHandler.func2.2()
	/Users/bytedance/go/pkg/mod/golang.org/x/[email protected]/internal/jsonrpc2/handler.go:102 +0x60
created by golang.org/x/tools/gopls/internal/protocol.Handlers.AsyncHandler.func2 in goroutine 118
	/Users/bytedance/go/pkg/mod/golang.org/x/[email protected]/internal/jsonrpc2/handler.go:101 +0x1fc

goroutine 176 [chan receive]:
golang.org/x/tools/gopls/internal/protocol.Handlers.AsyncHandler.func2.2()
	/Users/bytedance/go/pkg/mod/golang.org/x/[email protected]/internal/jsonrpc2/handler.go:102 +0x60
created by golang.org/x/tools/gopls/internal/protocol.Handlers.AsyncHandler.func2 in goroutine 118
	/Users/bytedance/go/pkg/mod/golang.org/x/[email protected]/internal/jsonrpc2/handler.go:101 +0x1fc

goroutine 177 [chan receive]:
golang.org/x/tools/gopls/internal/protocol.Handlers.AsyncHandler.func2.2()
	/Users/bytedance/go/pkg/mod/golang.org/x/[email protected]/internal/jsonrpc2/handler.go:102 +0x60
created by golang.org/x/tools/gopls/internal/protocol.Handlers.AsyncHandler.func2 in goroutine 118
	/Users/bytedance/go/pkg/mod/golang.org/x/[email protected]/internal/jsonrpc2/handler.go:101 +0x1fc

goroutine 178 [chan receive]:
golang.org/x/tools/gopls/internal/protocol.Handlers.AsyncHandler.func2.2()
	/Users/bytedance/go/pkg/mod/golang.org/x/[email protected]/internal/jsonrpc2/handler.go:102 +0x60
created by golang.org/x/tools/gopls/internal/protocol.Handlers.AsyncHandler.func2 in goroutine 118
	/Users/bytedance/go/pkg/mod/golang.org/x/[email protected]/internal/jsonrpc2/handler.go:101 +0x1fc

goroutine 179 [chan receive]:
golang.org/x/tools/gopls/internal/protocol.Handlers.AsyncHandler.func2.2()
	/Users/bytedance/go/pkg/mod/golang.org/x/[email protected]/internal/jsonrpc2/handler.go:102 +0x60
created by golang.org/x/tools/gopls/internal/protocol.Handlers.AsyncHandler.func2 in goroutine 118
	/Users/bytedance/go/pkg/mod/golang.org/x/[email protected]/internal/jsonrpc2/handler.go:101 +0x1fc

goroutine 180 [chan receive]:
golang.org/x/tools/gopls/internal/protocol.Handlers.AsyncHandler.func2.2()
	/Users/bytedance/go/pkg/mod/golang.org/x/[email protected]/internal/jsonrpc2/handler.go:102 +0x60
created by golang.org/x/tools/gopls/internal/protocol.Handlers.AsyncHandler.func2 in goroutine 118
	/Users/bytedance/go/pkg/mod/golang.org/x/[email protected]/internal/jsonrpc2/handler.go:101 +0x1fc

goroutine 181 [chan receive]:
golang.org/x/tools/gopls/internal/protocol.Handlers.AsyncHandler.func2.2()
	/Users/bytedance/go/pkg/mod/golang.org/x/[email protected]/internal/jsonrpc2/handler.go:102 +0x60
created by golang.org/x/tools/gopls/internal/protocol.Handlers.AsyncHandler.func2 in goroutine 118
	/Users/bytedance/go/pkg/mod/golang.org/x/[email protected]/internal/jsonrpc2/handler.go:101 +0x1fc

goroutine 182 [chan receive]:
golang.org/x/tools/gopls/internal/protocol.Handlers.AsyncHandler.func2.2()
	/Users/bytedance/go/pkg/mod/golang.org/x/[email protected]/internal/jsonrpc2/handler.go:102 +0x60
created by golang.org/x/tools/gopls/internal/protocol.Handlers.AsyncHandler.func2 in goroutine 118
	/Users/bytedance/go/pkg/mod/golang.org/x/[email protected]/internal/jsonrpc2/handler.go:101 +0x1fc

goroutine 183 [chan receive]:
golang.org/x/tools/gopls/internal/protocol.Handlers.AsyncHandler.func2.2()
	/Users/bytedance/go/pkg/mod/golang.org/x/[email protected]/internal/jsonrpc2/handler.go:102 +0x60
created by golang.org/x/tools/gopls/internal/protocol.Handlers.AsyncHandler.func2 in goroutine 118
	/Users/bytedance/go/pkg/mod/golang.org/x/[email protected]/internal/jsonrpc2/handler.go:101 +0x1fc

goroutine 128 [chan receive]:
golang.org/x/tools/gopls/internal/protocol.Handlers.AsyncHandler.func2.2()
	/Users/bytedance/go/pkg/mod/golang.org/x/[email protected]/internal/jsonrpc2/handler.go:102 +0x60
created by golang.org/x/tools/gopls/internal/protocol.Handlers.AsyncHandler.func2 in goroutine 118
	/Users/bytedance/go/pkg/mod/golang.org/x/[email protected]/internal/jsonrpc2/handler.go:101 +0x1fc

goroutine 193 [chan receive]:
golang.org/x/tools/gopls/internal/protocol.Handlers.AsyncHandler.func2.2()
	/Users/bytedance/go/pkg/mod/golang.org/x/[email protected]/internal/jsonrpc2/handler.go:102 +0x60
created by golang.org/x/tools/gopls/internal/protocol.Handlers.AsyncHandler.func2 in goroutine 118
	/Users/bytedance/go/pkg/mod/golang.org/x/[email protected]/internal/jsonrpc2/handler.go:101 +0x1fc

goroutine 194 [chan receive]:
golang.org/x/tools/gopls/internal/protocol.Handlers.AsyncHandler.func2.2()
	/Users/bytedance/go/pkg/mod/golang.org/x/[email protected]/internal/jsonrpc2/handler.go:102 +0x60
created by golang.org/x/tools/gopls/internal/protocol.Handlers.AsyncHandler.func2 in goroutine 118
	/Users/bytedance/go/pkg/mod/golang.org/x/[email protected]/internal/jsonrpc2/handler.go:101 +0x1fc

goroutine 195 [chan receive]:
golang.org/x/tools/gopls/internal/protocol.Handlers.AsyncHandler.func2.2()
	/Users/bytedance/go/pkg/mod/golang.org/x/[email protected]/internal/jsonrpc2/handler.go:102 +0x60
created by golang.org/x/tools/gopls/internal/protocol.Handlers.AsyncHandler.func2 in goroutine 118
	/Users/bytedance/go/pkg/mod/golang.org/x/[email protected]/internal/jsonrpc2/handler.go:101 +0x1fc

goroutine 196 [chan receive]:
golang.org/x/tools/gopls/internal/protocol.Handlers.AsyncHandler.func2.2()
	/Users/bytedance/go/pkg/mod/golang.org/x/[email protected]/internal/jsonrpc2/handler.go:102 +0x60
created by golang.org/x/tools/gopls/internal/protocol.Handlers.AsyncHandler.func2 in goroutine 118
	/Users/bytedance/go/pkg/mod/golang.org/x/[email protected]/internal/jsonrpc2/handler.go:101 +0x1fc

goroutine 197 [chan receive]:
golang.org/x/tools/gopls/internal/protocol.Handlers.AsyncHandler.func2.2()
	/Users/bytedance/go/pkg/mod/golang.org/x/[email protected]/internal/jsonrpc2/handler.go:102 +0x60
created by golang.org/x/tools/gopls/internal/protocol.Handlers.AsyncHandler.func2 in goroutine 118
	/Users/bytedance/go/pkg/mod/golang.org/x/[email protected]/internal/jsonrpc2/handler.go:101 +0x1fc

goroutine 198 [chan receive]:
golang.org/x/tools/gopls/internal/protocol.Handlers.AsyncHandler.func2.2()
	/Users/bytedance/go/pkg/mod/golang.org/x/[email protected]/internal/jsonrpc2/handler.go:102 +0x60
created by golang.org/x/tools/gopls/internal/protocol.Handlers.AsyncHandler.func2 in goroutine 118
	/Users/bytedance/go/pkg/mod/golang.org/x/[email protected]/internal/jsonrpc2/handler.go:101 +0x1fc

goroutine 199 [chan receive]:
golang.org/x/tools/gopls/internal/protocol.Handlers.AsyncHandler.func2.2()
	/Users/bytedance/go/pkg/mod/golang.org/x/[email protected]/internal/jsonrpc2/handler.go:102 +0x60
created by golang.org/x/tools/gopls/internal/protocol.Handlers.AsyncHandler.func2 in goroutine 118
	/Users/bytedance/go/pkg/mod/golang.org/x/[email protected]/internal/jsonrpc2/handler.go:101 +0x1fc

goroutine 184 [chan receive]:
golang.org/x/tools/gopls/internal/protocol.Handlers.AsyncHandler.func2.2()
	/Users/bytedance/go/pkg/mod/golang.org/x/[email protected]/internal/jsonrpc2/handler.go:102 +0x60
created by golang.org/x/tools/gopls/internal/protocol.Handlers.AsyncHandler.func2 in goroutine 118
	/Users/bytedance/go/pkg/mod/golang.org/x/[email protected]/internal/jsonrpc2/handler.go:101 +0x1fc

goroutine 185 [chan receive]:
golang.org/x/tools/gopls/internal/protocol.Handlers.AsyncHandler.func2.2()
	/Users/bytedance/go/pkg/mod/golang.org/x/[email protected]/internal/jsonrpc2/handler.go:102 +0x60
created by golang.org/x/tools/gopls/internal/protocol.Handlers.AsyncHandler.func2 in goroutine 118
	/Users/bytedance/go/pkg/mod/golang.org/x/[email protected]/internal/jsonrpc2/handler.go:101 +0x1fc

goroutine 186 [chan receive]:
golang.org/x/tools/gopls/internal/protocol.Handlers.AsyncHandler.func2.2()
	/Users/bytedance/go/pkg/mod/golang.org/x/[email protected]/internal/jsonrpc2/handler.go:102 +0x60
created by golang.org/x/tools/gopls/internal/protocol.Handlers.AsyncHandler.func2 in goroutine 118
	/Users/bytedance/go/pkg/mod/golang.org/x/[email protected]/internal/jsonrpc2/handler.go:101 +0x1fc

goroutine 187 [chan receive]:
golang.org/x/tools/gopls/internal/protocol.Handlers.AsyncHandler.func2.2()
	/Users/bytedance/go/pkg/mod/golang.org/x/[email protected]/internal/jsonrpc2/handler.go:102 +0x60
created by golang.org/x/tools/gopls/internal/protocol.Handlers.AsyncHandler.func2 in goroutine 118
	/Users/bytedance/go/pkg/mod/golang.org/x/[email protected]/internal/jsonrpc2/handler.go:101 +0x1fc

goroutine 188 [chan receive]:
golang.org/x/tools/gopls/internal/protocol.Handlers.AsyncHandler.func2.2()
	/Users/bytedance/go/pkg/mod/golang.org/x/[email protected]/internal/jsonrpc2/handler.go:102 +0x60
created by golang.org/x/tools/gopls/internal/protocol.Handlers.AsyncHandler.func2 in goroutine 118
	/Users/bytedance/go/pkg/mod/golang.org/x/[email protected]/internal/jsonrpc2/handler.go:101 +0x1fc

goroutine 189 [chan receive]:
golang.org/x/tools/gopls/internal/protocol.Handlers.AsyncHandler.func2.2()
	/Users/bytedance/go/pkg/mod/golang.org/x/[email protected]/internal/jsonrpc2/handler.go:102 +0x60
created by golang.org/x/tools/gopls/internal/protocol.Handlers.AsyncHandler.func2 in goroutine 118
	/Users/bytedance/go/pkg/mod/golang.org/x/[email protected]/internal/jsonrpc2/handler.go:101 +0x1fc

goroutine 12175 [chan receive]:
golang.org/x/tools/gopls/internal/protocol.Handlers.AsyncHandler.func2.2()
	/Users/bytedance/go/pkg/mod/golang.org/x/[email protected]/internal/jsonrpc2/handler.go:102 +0x60
created by golang.org/x/tools/gopls/internal/protocol.Handlers.AsyncHandler.func2 in goroutine 118
	/Users/bytedance/go/pkg/mod/golang.org/x/[email protected]/internal/jsonrpc2/handler.go:101 +0x1fc

goroutine 47503 [chan receive]:
golang.org/x/tools/gopls/internal/protocol.Handlers.AsyncHandler.func2.2()
	/Users/bytedance/go/pkg/mod/golang.org/x/[email protected]/internal/jsonrpc2/handler.go:102 +0x60
created by golang.org/x/tools/gopls/internal/protocol.Handlers.AsyncHandler.func2 in goroutine 118
	/Users/bytedance/go/pkg/mod/golang.org/x/[email protected]/internal/jsonrpc2/handler.go:101 +0x1fc

goroutine 11797 [chan receive]:
golang.org/x/tools/gopls/internal/protocol.Handlers.AsyncHandler.func2.2()
	/Users/bytedance/go/pkg/mod/golang.org/x/[email protected]/internal/jsonrpc2/handler.go:102 +0x60
created by golang.org/x/tools/gopls/internal/protocol.Handlers.AsyncHandler.func2 in goroutine 118
	/Users/bytedance/go/pkg/mod/golang.org/x/[email protected]/internal/jsonrpc2/handler.go:101 +0x1fc

goroutine 62247 [select]:
golang.org/x/tools/gopls/internal/cache.(*futureCache[...]).get(0x103b791e0, {0x103b7b308, 0x140af7f0bd0}, {0x140094f66e0, 0x41}, 0x143af72e328)
	/Users/bytedance/go/pkg/mod/golang.org/x/tools/[email protected]/internal/cache/future.go:118 +0x2b8
golang.org/x/tools/gopls/internal/cache.(*typeCheckBatch).getImportPackage(0x1400961b500?, {0x103b7b308?, 0x140af7f0bd0?}, {0x140094f66e0?, 0x140da2f1181?})
	/Users/bytedance/go/pkg/mod/golang.org/x/tools/[email protected]/internal/cache/check.go:314 +0x60
golang.org/x/tools/gopls/internal/cache.(*typeCheckBatch).typesConfig.func1({0x140da2f1181, 0x41})
	/Users/bytedance/go/pkg/mod/golang.org/x/tools/[email protected]/internal/cache/check.go:1775 +0x16c
golang.org/x/tools/gopls/internal/cache.importerFunc.Import(0x103a25ea0?, {0x140da2f1181?, 0x1406e3164b8?})
	/Users/bytedance/go/pkg/mod/golang.org/x/tools/[email protected]/internal/cache/check.go:2180 +0x30
go/types.(*Checker).importPackage(0x14066b59180, {0x103b71c20, 0x1408a8d88c0}, {0x140da2f1181, 0x41}, {0x1400a649d47, 0x58})
	/Users/bytedance/go/pkg/mod/golang.org/[email protected]/src/go/types/resolver.go:166 +0x458
go/types.(*Checker).collectObjects.func1({0x103b71d20?, 0x1408a8bd920})
	/Users/bytedance/go/pkg/mod/golang.org/[email protected]/src/go/types/resolver.go:270 +0xd8
go/types.(*Checker).walkDecl(0x14066b59180, {0x103b79900?, 0x1408a8c9640}, 0x143af72ec58)
	/Users/bytedance/go/pkg/mod/golang.org/[email protected]/src/go/types/decl.go:404 +0x218
go/types.(*Checker).walkDecls(...)
	/Users/bytedance/go/pkg/mod/golang.org/[email protected]/src/go/types/decl.go:391
go/types.(*Checker).collectObjects(0x14066b59180)
	/Users/bytedance/go/pkg/mod/golang.org/[email protected]/src/go/types/resolver.go:257 +0xb00
go/types.(*Checker).checkFiles(0x14066b59180, {0x140a6d798f0, 0x5, 0x5})
	/Users/bytedance/go/pkg/mod/golang.org/[email protected]/src/go/types/check.go:456 +0x170
go/types.(*Checker).Files(0x1400961b500?, {0x140a6d798f0?, 0x140d68d1500?, 0x6?})
	/Users/bytedance/go/pkg/mod/golang.org/[email protected]/src/go/types/check.go:422 +0x80
golang.org/x/tools/gopls/internal/cache.(*typeCheckBatch).checkPackageForImport(0x14064457440, {0x103b7b308, 0x142166d7500}, 0x1421631a140)
	/Users/bytedance/go/pkg/mod/golang.org/x/tools/[email protected]/internal/cache/check.go:648 +0x3f8
golang.org/x/tools/gopls/internal/cache.(*typeCheckBatch).getImportPackage.func1({0x103b7b308, 0x142166d7500})
	/Users/bytedance/go/pkg/mod/golang.org/x/tools/[email protected]/internal/cache/check.go:332 +0x1e0
golang.org/x/tools/gopls/internal/cache.(*futureCache[...]).get(0x103b791e0, {0x103b7b308, 0x142166d7500}, {0x1400961b500, 0x3b}, 0x1400bb2b0f8)
	/Users/bytedance/go/pkg/mod/golang.org/x/tools/[email protected]/internal/cache/future.go:126 +0x360
golang.org/x/tools/gopls/internal/cache.(*typeCheckBatch).getImportPackage(0x1400961ba40?, {0x103b7b308?, 0x142166d7500?}, {0x1400961b500?, 0x1421682e301?})
	/Users/bytedance/go/pkg/mod/golang.org/x/tools/[email protected]/internal/cache/check.go:314 +0x60
golang.org/x/tools/gopls/internal/cache.(*typeCheckBatch).typesConfig.func1({0x1421682e301, 0x3b})
	/Users/bytedance/go/pkg/mod/golang.org/x/tools/[email protected]/internal/cache/check.go:1775 +0x16c
golang.org/x/tools/gopls/internal/cache.importerFunc.Import(0x103a25ea0?, {0x1421682e301?, 0x1400bb2b288?})
	/Users/bytedance/go/pkg/mod/golang.org/x/tools/[email protected]/internal/cache/check.go:2180 +0x30
go/types.(*Checker).importPackage(0x141eb7d4380, {0x103b71c20, 0x142168352a0}, {0x1421682e301, 0x3b}, {0x1400a67b3b7, 0x4e})
	/Users/bytedance/go/pkg/mod/golang.org/[email protected]/src/go/types/resolver.go:166 +0x458
go/types.(*Checker).collectObjects.func1({0x103b71d20?, 0x14216833320})
	/Users/bytedance/go/pkg/mod/golang.org/[email protected]/src/go/types/resolver.go:270 +0xd8
go/types.(*Checker).walkDecl(0x141eb7d4380, {0x103b79900?, 0x14216836440}, 0x143af72fa28)
	/Users/bytedance/go/pkg/mod/golang.org/[email protected]/src/go/types/decl.go:404 +0x218
go/types.(*Checker).walkDecls(...)
	/Users/bytedance/go/pkg/mod/golang.org/[email protected]/src/go/types/decl.go:391
go/types.(*Checker).collectObjects(0x141eb7d4380)
	/Users/bytedance/go/pkg/mod/golang.org/[email protected]/src/go/types/resolver.go:257 +0xb00
go/types.(*Checker).checkFiles(0x141eb7d4380, {0x14215b84ae8, 0x1, 0x1})
	/Users/bytedance/go/pkg/mod/golang.org/[email protected]/src/go/types/check.go:456 +0x170
go/types.(*Checker).Files(0x1400961ba40?, {0x14215b84ae8?, 0x1421657c6c0?, 0x2?})
	/Users/bytedance/go/pkg/mod/golang.org/[email protected]/src/go/types/check.go:422 +0x80
golang.org/x/tools/gopls/internal/cache.(*typeCheckBatch).checkPackageForImport(0x14064457440, {0x103b7b308, 0x140604f45d0}, 0x142163f3900)
	/Users/bytedance/go/pkg/mod/golang.org/x/tools/[email protected]/internal/cache/check.go:648 +0x3f8
golang.org/x/tools/gopls/internal/cache.(*typeCheckBatch).getImportPackage.func1({0x103b7b308, 0x140604f45d0})
	/Users/bytedance/go/pkg/mod/golang.org/x/tools/[email protected]/internal/cache/check.go:332 +0x1e0
golang.org/x/tools/gopls/internal/cache.(*futureCache[...]).get(0x103b791e0, {0x103b7b308, 0x140604f45d0}, {0x1400961ba40, 0x31}, 0x140647796c8)
	/Users/bytedance/go/pkg/mod/golang.org/x/tools/[email protected]/internal/cache/future.go:126 +0x360
golang.org/x/tools/gopls/internal/cache.(*typeCheckBatch).getImportPackage(0x1c?, {0x103b7b308?, 0x140604f45d0?}, {0x1400961ba40?, 0x103b7b340?})
	/Users/bytedance/go/pkg/mod/golang.org/x/tools/[email protected]/internal/cache/check.go:314 +0x60
golang.org/x/tools/gopls/internal/cache.(*typeCheckBatch).getPackage.func1.1()
	/Users/bytedance/go/pkg/mod/golang.org/x/tools/[email protected]/internal/cache/check.go:388 +0x50
golang.org/x/sync/errgroup.(*Group).Go.func1()
	/Users/bytedance/go/pkg/mod/golang.org/x/[email protected]/errgroup/errgroup.go:78 +0x54
created by golang.org/x/sync/errgroup.(*Group).Go in goroutine 62245
	/Users/bytedance/go/pkg/mod/golang.org/x/[email protected]/errgroup/errgroup.go:75 +0x98

goroutine 62382 [select]:
golang.org/x/tools/gopls/internal/cache.(*futureCache[...]).get(0x103b791e0, {0x103b7b308, 0x1426a32efc0}, {0x140094905a0, 0x4f}, 0x1421bd42328)
	/Users/bytedance/go/pkg/mod/golang.org/x/tools/[email protected]/internal/cache/future.go:118 +0x2b8
golang.org/x/tools/gopls/internal/cache.(*typeCheckBatch).getImportPackage(0x14009490730?, {0x103b7b308?, 0x1426a32efc0?}, {0x140094905a0?, 0x1426518ec61?})
	/Users/bytedance/go/pkg/mod/golang.org/x/tools/[email protected]/internal/cache/check.go:314 +0x60
golang.org/x/tools/gopls/internal/cache.(*typeCheckBatch).typesConfig.func1({0x1426518ec61, 0x4f})
	/Users/bytedance/go/pkg/mod/golang.org/x/tools/[email protected]/internal/cache/check.go:1775 +0x16c
golang.org/x/tools/gopls/internal/cache.importerFunc.Import(0x103a25ea0?, {0x1426518ec61?, 0x1421bd424b8?})
	/Users/bytedance/go/pkg/mod/golang.org/x/tools/[email protected]/internal/cache/check.go:2180 +0x30
go/types.(*Checker).importPackage(0x141fcddb6c0, {0x103b71c20, 0x1426a363ba0}, {0x1426518ec61, 0x4f}, {0x1400a6ae807, 0x63})
	/Users/bytedance/go/pkg/mod/golang.org/[email protected]/src/go/types/resolver.go:166 +0x458
go/types.(*Checker).collectObjects.func1({0x103b71d20?, 0x1426a35de30})
	/Users/bytedance/go/pkg/mod/golang.org/[email protected]/src/go/types/resolver.go:270 +0xd8
go/types.(*Checker).walkDecl(0x141fcddb6c0, {0x103b79900?, 0x1426a3649c0}, 0x1421bd42c58)
	/Users/bytedance/go/pkg/mod/golang.org/[email protected]/src/go/types/decl.go:404 +0x218
go/types.(*Checker).walkDecls(...)
	/Users/bytedance/go/pkg/mod/golang.org/[email protected]/src/go/types/decl.go:391
go/types.(*Checker).collectObjects(0x141fcddb6c0)
	/Users/bytedance/go/pkg/mod/golang.org/[email protected]/src/go/types/resolver.go:257 +0xb00
go/types.(*Checker).checkFiles(0x141fcddb6c0, {0x142658c2f70, 0x1, 0x1})
	/Users/bytedance/go/pkg/mod/golang.org/[email protected]/src/go/types/check.go:456 +0x170
go/types.(*Checker).Files(0x14009490730?, {0x142658c2f70?, 0x1426a325080?, 0x4?})
	/Users/bytedance/go/pkg/mod/golang.org/[email protected]/src/go/types/check.go:422 +0x80
golang.org/x/tools/gopls/internal/cache.(*typeCheckBatch).checkPackageForImport(0x14064457440, {0x103b7b308, 0x1421854c270}, 0x141f801a8c0)
	/Users/bytedance/go/pkg/mod/golang.org/x/tools/[email protected]/internal/cache/check.go:648 +0x3f8
golang.org/x/tools/gopls/internal/cache.(*typeCheckBatch).getImportPackage.func1({0x103b7b308, 0x1421854c270})
	/Users/bytedance/go/pkg/mod/golang.org/x/tools/[email protected]/internal/cache/check.go:332 +0x1e0
golang.org/x/tools/gopls/internal/cache.(*futureCache[...]).get(0x103b791e0, {0x103b7b308, 0x1421854c270}, {0x14009490730, 0x46}, 0x1421bd430f8)
	/Users/bytedance/go/pkg/mod/golang.org/x/tools/[email protected]/internal/cache/future.go:126 +0x360
golang.org/x/tools/gopls/internal/cache.(*typeCheckBatch).getImportPackage(0x140094f66e0?, {0x103b7b308?, 0x1421854c270?}, {0x14009490730?, 0x142185500f1?})
	/Users/bytedance/go/pkg/mod/golang.org/x/tools/[email protected]/internal/cache/check.go:314 +0x60
golang.org/x/tools/gopls/internal/cache.(*typeCheckBatch).typesConfig.func1({0x142185500f1, 0x46})
	/Users/bytedance/go/pkg/mod/golang.org/x/tools/[email protected]/internal/cache/check.go:1775 +0x16c
golang.org/x/tools/gopls/internal/cache.importerFunc.Import(0x103a25ea0?, {0x142185500f1?, 0x1421bd43288?})
	/Users/bytedance/go/pkg/mod/golang.org/x/tools/[email protected]/internal/cache/check.go:2180 +0x30
go/types.(*Checker).importPackage(0x1421854e1c0, {0x103b71c20, 0x14218552600}, {0x142185500f1, 0x46}, {0x1400a5c9b87, 0x5e})
	/Users/bytedance/go/pkg/mod/golang.org/[email protected]/src/go/types/resolver.go:166 +0x458
go/types.(*Checker).collectObjects.func1({0x103b71d20?, 0x1421854d440})
	/Users/bytedance/go/pkg/mod/golang.org/[email protected]/src/go/types/resolver.go:270 +0xd8
go/types.(*Checker).walkDecl(0x1421854e1c0, {0x103b79900?, 0x14218549e00}, 0x1421bd43a28)
	/Users/bytedance/go/pkg/mod/golang.org/[email protected]/src/go/types/decl.go:404 +0x218
go/types.(*Checker).walkDecls(...)
	/Users/bytedance/go/pkg/mod/golang.org/[email protected]/src/go/types/decl.go:391
go/types.(*Checker).collectObjects(0x1421854e1c0)
	/Users/bytedance/go/pkg/mod/golang.org/[email protected]/src/go/types/resolver.go:257 +0xb00
go/types.(*Checker).checkFiles(0x1421854e1c0, {0x142185789d0, 0x2, 0x2})
	/Users/bytedance/go/pkg/mod/golang.org/[email protected]/src/go/types/check.go:456 +0x170
go/types.(*Checker).Files(0x140094f66e0?, {0x142185789d0?, 0x142185173e0?, 0x5?})
	/Users/bytedance/go/pkg/mod/golang.org/[email protected]/src/go/types/check.go:422 +0x80
golang.org/x/tools/gopls/internal/cache.(*typeCheckBatch).checkPackageForImport(0x14064457440, {0x103b7b308, 0x140604f45d0}, 0x14216212780)
	/Users/bytedance/go/pkg/mod/golang.org/x/tools/[email protected]/internal/cache/check.go:648 +0x3f8
golang.org/x/tools/gopls/internal/cache.(*typeCheckBatch).getImportPackage.func1({0x103b7b308, 0x140604f45d0})
	/Users/bytedance/go/pkg/mod/golang.org/x/tools/[email protected]/internal/cache/check.go:332 +0x1e0
golang.org/x/tools/gopls/internal/cache.(*futureCache[...]).get(0x103b791e0, {0x103b7b308, 0x140604f45d0}, {0x140094f66e0, 0x41}, 0x1406d12dec8)
	/Users/bytedance/go/pkg/mod/golang.org/x/tools/[email protected]/internal/cache/future.go:126 +0x360
golang.org/x/tools/gopls/internal/cache.(*typeCheckBatch).getImportPackage(0x1c?, {0x103b7b308?, 0x140604f45d0?}, {0x140094f66e0?, 0x103b7b340?})
	/Users/bytedance/go/pkg/mod/golang.org/x/tools/[email protected]/internal/cache/check.go:314 +0x60
golang.org/x/tools/gopls/internal/cache.(*typeCheckBatch).getPackage.func1.1()
	/Users/bytedance/go/pkg/mod/golang.org/x/tools/[email protected]/internal/cache/check.go:388 +0x50
golang.org/x/sync/errgroup.(*Group).Go.func1()
	/Users/bytedance/go/pkg/mod/golang.org/x/[email protected]/errgroup/errgroup.go:78 +0x54
created by golang.org/x/sync/errgroup.(*Group).Go in goroutine 62245
	/Users/bytedance/go/pkg/mod/golang.org/x/[email protected]/errgroup/errgroup.go:75 +0x98

goroutine 12946 [chan receive]:
golang.org/x/tools/gopls/internal/protocol.Handlers.AsyncHandler.func2.2()
	/Users/bytedance/go/pkg/mod/golang.org/x/[email protected]/internal/jsonrpc2/handler.go:102 +0x60
created by golang.org/x/tools/gopls/internal/protocol.Handlers.AsyncHandler.func2 in goroutine 118
	/Users/bytedance/go/pkg/mod/golang.org/x/[email protected]/internal/jsonrpc2/handler.go:101 +0x1fc

goroutine 12630 [semacquire]:
sync.runtime_Semacquire(0x1403be561c0?)
	/Users/bytedance/go/pkg/mod/golang.org/[email protected]/src/runtime/sema.go:71 +0x2c
sync.(*WaitGroup).Wait(0x140002846e0)
	/Users/bytedance/go/pkg/mod/golang.org/[email protected]/src/sync/waitgroup.go:118 +0x74
golang.org/x/tools/gopls/internal/server.(*server).diagnoseChangedViews(0x14000192780, {0x103b7b340, 0x1403126a960}, 0x1, 0x140647830e0, 0x0)
	/Users/bytedance/go/pkg/mod/golang.org/x/tools/[email protected]/internal/server/diagnostics.go:173 +0x4f4
golang.org/x/tools/gopls/internal/server.(*server).didModifyFiles.func2()
	/Users/bytedance/go/pkg/mod/golang.org/x/tools/[email protected]/internal/server/text_synchronization.go:270 +0x3c
created by golang.org/x/tools/gopls/internal/server.(*server).didModifyFiles in goroutine 129
	/Users/bytedance/go/pkg/mod/golang.org/x/tools/[email protected]/internal/server/text_synchronization.go:269 +0x464

goroutine 41431 [chan receive]:
golang.org/x/tools/gopls/internal/protocol.Handlers.AsyncHandler.func2.2()
	/Users/bytedance/go/pkg/mod/golang.org/x/[email protected]/internal/jsonrpc2/handler.go:102 +0x60
created by golang.org/x/tools/gopls/internal/protocol.Handlers.AsyncHandler.func2 in goroutine 118
	/Users/bytedance/go/pkg/mod/golang.org/x/[email protected]/internal/jsonrpc2/handler.go:101 +0x1fc

goroutine 62394 [select]:
golang.org/x/tools/gopls/internal/cache.(*futureCache[...]).get(0x103b791e0, {0x103b7b308, 0x14217b29170}, {0x140094905a0, 0x4f}, 0x141df5e90f8)
	/Users/bytedance/go/pkg/mod/golang.org/x/tools/[email protected]/internal/cache/future.go:118 +0x2b8
golang.org/x/tools/gopls/internal/cache.(*typeCheckBatch).getImportPackage(0x140094932c0?, {0x103b7b308?, 0x14217b29170?}, {0x140094905a0?, 0x14217674de1?})
	/Users/bytedance/go/pkg/mod/golang.org/x/tools/[email protected]/internal/cache/check.go:314 +0x60
golang.org/x/tools/gopls/internal/cache.(*typeCheckBatch).typesConfig.func1({0x14217674de1, 0x4f})
	/Users/bytedance/go/pkg/mod/golang.org/x/tools/[email protected]/internal/cache/check.go:1775 +0x16c
golang.org/x/tools/gopls/internal/cache.importerFunc.Import(0x103a25ea0?, {0x14217674de1?, 0x1421daf3288?})
	/Users/bytedance/go/pkg/mod/golang.org/x/tools/[email protected]/internal/cache/check.go:2180 +0x30
go/types.(*Checker).importPackage(0x141b19bb6c0, {0x103b71c20, 0x14217b2baa0}, {0x14217674de1, 0x4f}, {0x1400a5f5f47, 0x6e})
	/Users/bytedance/go/pkg/mod/golang.org/[email protected]/src/go/types/resolver.go:166 +0x458
go/types.(*Checker).collectObjects.func1({0x103b71d20?, 0x14217b296e0})
	/Users/bytedance/go/pkg/mod/golang.org/[email protected]/src/go/types/resolver.go:270 +0xd8
go/types.(*Checker).walkDecl(0x141b19bb6c0, {0x103b79900?, 0x14217b341c0}, 0x141df5e9a28)
	/Users/bytedance/go/pkg/mod/golang.org/[email protected]/src/go/types/decl.go:404 +0x218
go/types.(*Checker).walkDecls(...)
	/Users/bytedance/go/pkg/mod/golang.org/[email protected]/src/go/types/decl.go:391
go/types.(*Checker).collectObjects(0x141b19bb6c0)
	/Users/bytedance/go/pkg/mod/golang.org/[email protected]/src/go/types/resolver.go:257 +0xb00
go/types.(*Checker).checkFiles(0x141b19bb6c0, {0x14217c5e840, 0x3, 0x3})
	/Users/bytedance/go/pkg/mod/golang.org/[email protected]/src/go/types/check.go:456 +0x170
go/types.(*Checker).Files(0x140094932c0?, {0x14217c5e840?, 0x14217c0f200?, 0x6?})
	/Users/bytedance/go/pkg/mod/golang.org/[email protected]/src/go/types/check.go:422 +0x80
golang.org/x/tools/gopls/internal/cache.(*typeCheckBatch).checkPackageForImport(0x14064457440, {0x103b7b308, 0x140604f45d0}, 0x14215cd8000)
	/Users/bytedance/go/pkg/mod/golang.org/x/tools/[email protected]/internal/cache/check.go:648 +0x3f8
golang.org/x/tools/gopls/internal/cache.(*typeCheckBatch).getImportPackage.func1({0x103b7b308, 0x140604f45d0})
	/Users/bytedance/go/pkg/mod/golang.org/x/tools/[email protected]/internal/cache/check.go:332 +0x1e0
golang.org/x/tools/gopls/internal/cache.(*futureCache[...]).get(0x103b791e0, {0x103b7b308, 0x140604f45d0}, {0x140094932c0, 0x51}, 0x140645606c8)
	/Users/bytedance/go/pkg/mod/golang.org/x/tools/[email protected]/internal/cache/future.go:126 +0x360
golang.org/x/tools/gopls/internal/cache.(*typeCheckBatch).getImportPackage(0x1c?, {0x103b7b308?, 0x140604f45d0?}, {0x140094932c0?, 0x103b7b340?})
	/Users/bytedance/go/pkg/mod/golang.org/x/tools/[email protected]/internal/cache/check.go:314 +0x60
golang.org/x/tools/gopls/internal/cache.(*typeCheckBatch).getPackage.func1.1()
	/Users/bytedance/go/pkg/mod/golang.org/x/tools/[email protected]/internal/cache/check.go:388 +0x50
golang.org/x/sync/errgroup.(*Group).Go.func1()
	/Users/bytedance/go/pkg/mod/golang.org/x/[email protected]/errgroup/errgroup.go:78 +0x54
created by golang.org/x/sync/errgroup.(*Group).Go in goroutine 62245
	/Users/bytedance/go/pkg/mod/golang.org/x/[email protected]/errgroup/errgroup.go:75 +0x98

goroutine 62354 [select]:
golang.org/x/tools/gopls/internal/cache.(*futureCache[...]).get(0x103b79220, {0x103b7b308, 0x1406445d7a0}, {0x14009650d50, 0x28}, 0x14075a07e70)
	/Users/bytedance/go/pkg/mod/golang.org/x/tools/[email protected]/internal/cache/future.go:118 +0x2b8
golang.org/x/tools/gopls/internal/cache.(*typeCheckBatch).getPackage(0x14064457440?, {0x103b7b308?, 0x1406445d7a0?}, 0x103471ad4?)
	/Users/bytedance/go/pkg/mod/golang.org/x/tools/[email protected]/internal/cache/check.go:372 +0x5c
golang.org/x/tools/gopls/internal/cache.(*typeCheckBatch).handleSyntaxPackage(0x14064457440, {0x103b7b308, 0x1406445d7a0}, 0x0, {0x14009650d50?, 0x140648296e0?}, 0x142168c5ef0, 0x142167bdf40)
	/Users/bytedance/go/pkg/mod/golang.org/x/tools/[email protected]/internal/cache/check.go:361 +0x88
golang.org/x/tools/gopls/internal/cache.(*typeCheckBatch).query.func1()
	/Users/bytedance/go/pkg/mod/golang.org/x/tools/[email protected]/internal/cache/check.go:299 +0xa8
golang.org/x/sync/errgroup.(*Group).Go.func1()
	/Users/bytedance/go/pkg/mod/golang.org/x/[email protected]/errgroup/errgroup.go:78 +0x54
created by golang.org/x/sync/errgroup.(*Group).Go in goroutine 15173
	/Users/bytedance/go/pkg/mod/golang.org/x/[email protected]/errgroup/errgroup.go:75 +0x98

goroutine 62386 [select]:
golang.org/x/tools/gopls/internal/cache.(*futureCache[...]).get(0x103b791e0, {0x103b7b308, 0x14215946300}, {0x140094e3b80, 0x3d}, 0x141dceb50f8)
	/Users/bytedance/go/pkg/mod/golang.org/x/tools/[email protected]/internal/cache/future.go:118 +0x2b8
golang.org/x/tools/gopls/internal/cache.(*typeCheckBatch).getImportPackage(0x1400961bfc0?, {0x103b7b308?, 0x14215946300?}, {0x140094e3b80?, 0x14215916ac1?})
	/Users/bytedance/go/pkg/mod/golang.org/x/tools/[email protected]/internal/cache/check.go:314 +0x60
golang.org/x/tools/gopls/internal/cache.(*typeCheckBatch).typesConfig.func1({0x14215916ac1, 0x3d})
	/Users/bytedance/go/pkg/mod/golang.org/x/tools/[email protected]/internal/cache/check.go:1775 +0x16c
golang.org/x/tools/gopls/internal/cache.importerFunc.Import(0x104271430?, {0x14215916ac1?, 0x14215916ac1?})
	/Users/bytedance/go/pkg/mod/golang.org/x/tools/[email protected]/internal/cache/check.go:2180 +0x30
go/types.(*Checker).importPackage(0x142030b6a80, {0x103b71c20, 0x1421593da40}, {0x14215916ac1, 0x3d}, {0x1400a67b657, 0x50})
	/Users/bytedance/go/pkg/mod/golang.org/[email protected]/src/go/types/resolver.go:166 +0x458
go/types.(*Checker).collectObjects.func1({0x103b71d20?, 0x142159465d0})
	/Users/bytedance/go/pkg/mod/golang.org/[email protected]/src/go/types/resolver.go:270 +0xd8
go/types.(*Checker).walkDecl(0x142030b6a80, {0x103b79900?, 0x1421593ed00}, 0x141dceb5a28)
	/Users/bytedance/go/pkg/mod/golang.org/[email protected]/src/go/types/decl.go:404 +0x218
go/types.(*Checker).walkDecls(...)
	/Users/bytedance/go/pkg/mod/golang.org/[email protected]/src/go/types/decl.go:391
go/types.(*Checker).collectObjects(0x142030b6a80)
	/Users/bytedance/go/pkg/mod/golang.org/[email protected]/src/go/types/resolver.go:257 +0xb00
go/types.(*Checker).checkFiles(0x142030b6a80, {0x14215934210, 0x1, 0x1})
	/Users/bytedance/go/pkg/mod/golang.org/[email protected]/src/go/types/check.go:456 +0x170
go/types.(*Checker).Files(0x1400961bfc0?, {0x14215934210?, 0x14215922cc0?, 0x4?})
	/Users/bytedance/go/pkg/mod/golang.org/[email protected]/src/go/types/check.go:422 +0x80
golang.org/x/tools/gopls/internal/cache.(*typeCheckBatch).checkPackageForImport(0x14064457440, {0x103b7b308, 0x140604f45d0}, 0x14215ded7c0)
	/Users/bytedance/go/pkg/mod/golang.org/x/tools/[email protected]/internal/cache/check.go:648 +0x3f8
golang.org/x/tools/gopls/internal/cache.(*typeCheckBatch).getImportPackage.func1({0x103b7b308, 0x140604f45d0})
	/Users/bytedance/go/pkg/mod/golang.org/x/tools/[email protected]/internal/cache/check.go:332 +0x1e0
golang.org/x/tools/gopls/internal/cache.(*futureCache[...]).get(0x103b791e0, {0x103b7b308, 0x140604f45d0}, {0x1400961bfc0, 0x33}, 0x14065117ec8)
	/Users/bytedance/go/pkg/mod/golang.org/x/tools/[email protected]/internal/cache/future.go:126 +0x360
golang.org/x/tools/gopls/internal/cache.(*typeCheckBatch).getImportPackage(0x1c?, {0x103b7b308?, 0x140604f45d0?}, {0x1400961bfc0?, 0x103b7b340?})
	/Users/bytedance/go/pkg/mod/golang.org/x/tools/[email protected]/internal/cache/check.go:314 +0x60
golang.org/x/tools/gopls/internal/cache.(*typeCheckBatch).getPackage.func1.1()
	/Users/bytedance/go/pkg/mod/golang.org/x/tools/[email protected]/internal/cache/check.go:388 +0x50
golang.org/x/sync/errgroup.(*Group).Go.func1()
	/Users/bytedance/go/pkg/mod/golang.org/x/[email protected]/errgroup/errgroup.go:78 +0x54
created by golang.org/x/sync/errgroup.(*Group).Go in goroutine 62245
	/Users/bytedance/go/pkg/mod/golang.org/x/[email protected]/errgroup/errgroup.go:75 +0x98

goroutine 79588 [IO wait]:
internal/poll.runtime_pollWait(0x12b4acbe8, 0x72)
	/Users/bytedance/go/pkg/mod/golang.org/[email protected]/src/runtime/netpoll.go:351 +0xa0
internal/poll.(*pollDesc).wait(0x14105c00a00?, 0x14144570251?, 0x0)
	/Users/bytedance/go/pkg/mod/golang.org/[email protected]/src/internal/poll/fd_poll_runtime.go:84 +0x28
internal/poll.(*pollDesc).waitRead(...)
	/Users/bytedance/go/pkg/mod/golang.org/[email protected]/src/internal/poll/fd_poll_runtime.go:89
internal/poll.(*FD).Read(0x14105c00a00, {0x14144570251, 0x1, 0x1})
	/Users/bytedance/go/pkg/mod/golang.org/[email protected]/src/internal/poll/fd_unix.go:165 +0x1fc
net.(*netFD).Read(0x14105c00a00, {0x14144570251?, 0x14064457400?, 0x14277cfb8c0?})
	/Users/bytedance/go/pkg/mod/golang.org/[email protected]/src/net/fd_posix.go:55 +0x28
net.(*conn).Read(0x141f257e978, {0x14144570251?, 0x2?, 0x141931641c8?})
	/Users/bytedance/go/pkg/mod/golang.org/[email protected]/src/net/net.go:189 +0x34
net/http.(*connReader).backgroundRead(0x14144570240)
	/Users/bytedance/go/pkg/mod/golang.org/[email protected]/src/net/http/server.go:690 +0x40
created by net/http.(*connReader).startBackgroundRead in goroutine 76086
	/Users/bytedance/go/pkg/mod/golang.org/[email protected]/src/net/http/server.go:686 +0xc4

goroutine 62375 [runnable]:
go/types.dependencyGraph(0x14331b44a20)
	/Users/bytedance/go/pkg/mod/golang.org/[email protected]/src/go/types/initorder.go:225 +0xf0
go/types.(*Checker).initOrder(0x14262162a80)
	/Users/bytedance/go/pkg/mod/golang.org/[email protected]/src/go/types/initorder.go:25 +0x4c
go/types.(*Checker).checkFiles(0x14262162a80, {0x1419079c870, 0x3, 0x3})
	/Users/bytedance/go/pkg/mod/golang.org/[email protected]/src/go/types/check.go:468 +0x1f4
go/types.(*Checker).Files(0x14009146f00?, {0x1419079c870?, 0x1423ebd86c0?, 0x9?})
	/Users/bytedance/go/pkg/mod/golang.org/[email protected]/src/go/types/check.go:422 +0x80
golang.org/x/tools/gopls/internal/cache.(*typeCheckBatch).checkPackageForImport(0x14064457440, {0x103b7b308, 0x14316e50060}, 0x1413f043900)
	/Users/bytedance/go/pkg/mod/golang.org/x/tools/[email protected]/internal/cache/check.go:648 +0x3f8
golang.org/x/tools/gopls/internal/cache.(*typeCheckBatch).getImportPackage.func1({0x103b7b308, 0x14316e50060})
	/Users/bytedance/go/pkg/mod/golang.org/x/tools/[email protected]/internal/cache/check.go:332 +0x1e0
golang.org/x/tools/gopls/internal/cache.(*futureCache[...]).get(0x103b791e0, {0x103b7b308, 0x14316e50060}, {0x14009146f00, 0x4c}, 0x1408c944788)
	/Users/bytedance/go/pkg/mod/golang.org/x/tools/[email protected]/internal/cache/future.go:126 +0x360
golang.org/x/tools/gopls/internal/cache.(*typeCheckBatch).getImportPackage(0x14009147ae0?, {0x103b7b308?, 0x14316e50060?}, {0x14009146f00?, 0x140e6fc5091?})
	/Users/bytedance/go/pkg/mod/golang.org/x/tools/[email protected]/internal/cache/check.go:314 +0x60
golang.org/x/tools/gopls/internal/cache.(*typeCheckBatch).typesConfig.func1({0x140e6fc5091, 0x4c})
	/Users/bytedance/go/pkg/mod/golang.org/x/tools/[email protected]/internal/cache/check.go:1775 +0x16c
golang.org/x/tools/gopls/internal/cache.importerFunc.Import(0x103a25ea0?, {0x140e6fc5091?, 0x1408c944918?})
	/Users/bytedance/go/pkg/mod/golang.org/x/tools/[email protected]/internal/cache/check.go:2180 +0x30
go/types.(*Checker).importPackage(0x142621628c0, {0x103b71c20, 0x140af4e5cc0}, {0x140e6fc5091, 0x4c}, {0x1400a455a27, 0x8f})
	/Users/bytedance/go/pkg/mod/golang.org/[email protected]/src/go/types/resolver.go:166 +0x458
go/types.(*Checker).collectObjects.func1({0x103b71d20?, 0x142690b1080})
	/Users/bytedance/go/pkg/mod/golang.org/[email protected]/src/go/types/resolver.go:270 +0xd8
go/types.(*Checker).walkDecl(0x142621628c0, {0x103b79900?, 0x142b01ee440}, 0x1408c9450b8)
	/Users/bytedance/go/pkg/mod/golang.org/[email protected]/src/go/types/decl.go:404 +0x218
go/types.(*Checker).walkDecls(...)
	/Users/bytedance/go/pkg/mod/golang.org/[email protected]/src/go/types/decl.go:391
go/types.(*Checker).collectObjects(0x142621628c0)
	/Users/bytedance/go/pkg/mod/golang.org/[email protected]/src/go/types/resolver.go:257 +0xb00
go/types.(*Checker).checkFiles(0x142621628c0, {0x14179c9ed68, 0x3, 0x3})
	/Users/bytedance/go/pkg/mod/golang.org/[email protected]/src/go/types/check.go:456 +0x170
go/types.(*Checker).Files(0x14009147ae0?, {0x14179c9ed68?, 0x14232af52c0?, 0x9?})
	/Users/bytedance/go/pkg/mod/golang.org/[email protected]/src/go/types/check.go:422 +0x80
golang.org/x/tools/gopls/internal/cache.(*typeCheckBatch).checkPackageForImport(0x14064457440, {0x103b7b308, 0x1420809dcb0}, 0x1411ec559a0)
	/Users/bytedance/go/pkg/mod/golang.org/x/tools/[email protected]/internal/cache/check.go:648 +0x3f8
golang.org/x/tools/gopls/internal/cache.(*typeCheckBatch).getImportPackage.func1({0x103b7b308, 0x1420809dcb0})
	/Users/bytedance/go/pkg/mod/golang.org/x/tools/[email protected]/internal/cache/check.go:332 +0x1e0
golang.org/x/tools/gopls/internal/cache.(*futureCache[...]).get(0x103b791e0, {0x103b7b308, 0x1420809dcb0}, {0x14009147ae0, 0x50}, 0x1408c945558)
	/Users/bytedance/go/pkg/mod/golang.org/x/tools/[email protected]/internal/cache/future.go:126 +0x360
golang.org/x/tools/gopls/internal/cache.(*typeCheckBatch).getImportPackage(0x140091b6ba0?, {0x103b7b308?, 0x1420809dcb0?}, {0x14009147ae0?, 0x140770f8361?})
	/Users/bytedance/go/pkg/mod/golang.org/x/tools/[email protected]/internal/cache/check.go:314 +0x60
golang.org/x/tools/gopls/internal/cache.(*typeCheckBatch).typesConfig.func1({0x140770f8361, 0x50})
	/Users/bytedance/go/pkg/mod/golang.org/x/tools/[email protected]/internal/cache/check.go:1775 +0x16c
golang.org/x/tools/gopls/internal/cache.importerFunc.Import(0x103a25ea0?, {0x140770f8361?, 0x1408c9456e8?})
	/Users/bytedance/go/pkg/mod/golang.org/x/tools/[email protected]/internal/cache/check.go:2180 +0x30
go/types.(*Checker).importPackage(0x142030b6e00, {0x103b71c20, 0x141287f8ce0}, {0x140770f8361, 0x50}, {0x1400a450cc7, 0x91})
	/Users/bytedance/go/pkg/mod/golang.org/[email protected]/src/go/types/resolver.go:166 +0x458
go/types.(*Checker).collectObjects.func1({0x103b71d20?, 0x141e48cce70})
	/Users/bytedance/go/pkg/mod/golang.org/[email protected]/src/go/types/resolver.go:270 +0xd8
go/types.(*Checker).walkDecl(0x142030b6e00, {0x103b79900?, 0x1417c7aee00}, 0x1408c945e88)
	/Users/bytedance/go/pkg/mod/golang.org/[email protected]/src/go/types/decl.go:404 +0x218
go/types.(*Checker).walkDecls(...)
	/Users/bytedance/go/pkg/mod/golang.org/[email protected]/src/go/types/decl.go:391
go/types.(*Checker).collectObjects(0x142030b6e00)
	/Users/bytedance/go/pkg/mod/golang.org/[email protected]/src/go/types/resolver.go:257 +0xb00
go/types.(*Checker).checkFiles(0x142030b6e00, {0x14244438df8, 0x3, 0x3})
	/Users/bytedance/go/pkg/mod/golang.org/[email protected]/src/go/types/check.go:456 +0x170
go/types.(*Checker).Files(0x140091b6ba0?, {0x14244438df8?, 0x143b2b40180?, 0xf?})
	/Users/bytedance/go/pkg/mod/golang.org/[email protected]/src/go/types/check.go:422 +0x80
golang.org/x/tools/gopls/internal/cache.(*typeCheckBatch).checkPackageForImport(0x14064457440, {0x103b7b308, 0x14276deb8f0}, 0x14137493220)
	/Users/bytedance/go/pkg/mod/golang.org/x/tools/[email protected]/internal/cache/check.go:648 +0x3f8
golang.org/x/tools/gopls/internal/cache.(*typeCheckBatch).getImportPackage.func1({0x103b7b308, 0x14276deb8f0})
	/Users/bytedance/go/pkg/mod/golang.org/x/tools/[email protected]/internal/cache/check.go:332 +0x1e0
golang.org/x/tools/gopls/internal/cache.(*futureCache[...]).get(0x103b791e0, {0x103b7b308, 0x14276deb8f0}, {0x140091b6ba0, 0x52}, 0x142fe87e328)
	/Users/bytedance/go/pkg/mod/golang.org/x/tools/[email protected]/internal/cache/future.go:126 +0x360
golang.org/x/tools/gopls/internal/cache.(*typeCheckBatch).getImportPackage(0x1400944dbc0?, {0x103b7b308?, 0x14276deb8f0?}, {0x140091b6ba0?, 0x14260271c81?})
	/Users/bytedance/go/pkg/mod/golang.org/x/tools/[email protected]/internal/cache/check.go:314 +0x60
golang.org/x/tools/gopls/internal/cache.(*typeCheckBatch).typesConfig.func1({0x14260271c81, 0x52})
	/Users/bytedance/go/pkg/mod/golang.org/x/tools/[email protected]/internal/cache/check.go:1775 +0x16c
golang.org/x/tools/gopls/internal/cache.importerFunc.Import(0x103a25ea0?, {0x14260271c81?, 0x142fe87e4b8?})
	/Users/bytedance/go/pkg/mod/golang.org/x/tools/[email protected]/internal/cache/check.go:2180 +0x30
go/types.(*Checker).importPackage(0x14262162540, {0x103b71c20, 0x14277242fa0}, {0x14260271c81, 0x52}, {0x1400a535367, 0x6e})
	/Users/bytedance/go/pkg/mod/golang.org/[email protected]/src/go/types/resolver.go:166 +0x458
go/types.(*Checker).collectObjects.func1({0x103b71d20?, 0x142772443c0})
	/Users/bytedance/go/pkg/mod/golang.org/[email protected]/src/go/types/resolver.go:270 +0xd8
go/types.(*Checker).walkDecl(0x14262162540, {0x103b79900?, 0x14277241000}, 0x1408c946c58)
	/Users/bytedance/go/pkg/mod/golang.org/[email protected]/src/go/types/decl.go:404 +0x218
go/types.(*Checker).walkDecls(...)
	/Users/bytedance/go/pkg/mod/golang.org/[email protected]/src/go/types/decl.go:391
go/types.(*Checker).collectObjects(0x14262162540)
	/Users/bytedance/go/pkg/mod/golang.org/[email protected]/src/go/types/resolver.go:257 +0xb00
go/types.(*Checker).checkFiles(0x14262162540, {0x141e4544000, 0x1d, 0x1d})
	/Users/bytedance/go/pkg/mod/golang.org/[email protected]/src/go/types/check.go:456 +0x170
go/types.(*Checker).Files(0x1400944dbc0?, {0x141e4544000?, 0x142771f69c0?, 0x6?})
	/Users/bytedance/go/pkg/mod/golang.org/[email protected]/src/go/types/check.go:422 +0x80
golang.org/x/tools/gopls/internal/cache.(*typeCheckBatch).checkPackageForImport(0x14064457440, {0x103b7b308, 0x142173cad20}, 0x1420bbdf900)
	/Users/bytedance/go/pkg/mod/golang.org/x/tools/[email protected]/internal/cache/check.go:648 +0x3f8
golang.org/x/tools/gopls/internal/cache.(*typeCheckBatch).getImportPackage.func1({0x103b7b308, 0x142173cad20})
	/Users/bytedance/go/pkg/mod/golang.org/x/tools/[email protected]/internal/cache/check.go:332 +0x1e0
golang.org/x/tools/gopls/internal/cache.(*futureCache[...]).get(0x103b791e0, {0x103b7b308, 0x142173cad20}, {0x1400944dbc0, 0x51}, 0x14097e5d0f8)
	/Users/bytedance/go/pkg/mod/golang.org/x/tools/[email protected]/internal/cache/future.go:126 +0x360
golang.org/x/tools/gopls/internal/cache.(*typeCheckBatch).getImportPackage(0x140094905a0?, {0x103b7b308?, 0x142173cad20?}, {0x1400944dbc0?, 0x142176754a1?})
	/Users/bytedance/go/pkg/mod/golang.org/x/tools/[email protected]/internal/cache/check.go:314 +0x60
golang.org/x/tools/gopls/internal/cache.(*typeCheckBatch).typesConfig.func1({0x142176754a1, 0x51})
	/Users/bytedance/go/pkg/mod/golang.org/x/tools/[email protected]/internal/cache/check.go:1775 +0x16c
golang.org/x/tools/gopls/internal/cache.importerFunc.Import(0x103a25ea0?, {0x142176754a1?, 0x14097e5d288?})
	/Users/bytedance/go/pkg/mod/golang.org/x/tools/[email protected]/internal/cache/check.go:2180 +0x30
go/types.(*Checker).importPackage(0x142030b7340, {0x103b71c20, 0x1421891c460}, {0x142176754a1, 0x51}, {0x1400a5bc3f7, 0x6c})
	/Users/bytedance/go/pkg/mod/golang.org/[email protected]/src/go/types/resolver.go:166 +0x458
go/types.(*Checker).collectObjects.func1({0x103b71d20?, 0x142189132f0})
	/Users/bytedance/go/pkg/mod/golang.org/[email protected]/src/go/types/resolver.go:270 +0xd8
go/types.(*Checker).walkDecl(0x142030b7340, {0x103b79900?, 0x14218920040}, 0x1408c947a28)
	/Users/bytedance/go/pkg/mod/golang.org/[email protected]/src/go/types/decl.go:404 +0x218
go/types.(*Checker).walkDecls(...)
	/Users/bytedance/go/pkg/mod/golang.org/[email protected]/src/go/types/decl.go:391
go/types.(*Checker).collectObjects(0x142030b7340)
	/Users/bytedance/go/pkg/mod/golang.org/[email protected]/src/go/types/resolver.go:257 +0xb00
go/types.(*Checker).checkFiles(0x142030b7340, {0x14217fb5178, 0x1, 0x1})
	/Users/bytedance/go/pkg/mod/golang.org/[email protected]/src/go/types/check.go:456 +0x170
go/types.(*Checker).Files(0x140094905a0?, {0x14217fb5178?, 0x1421890ae40?, 0x4?})
	/Users/bytedance/go/pkg/mod/golang.org/[email protected]/src/go/types/check.go:422 +0x80
golang.org/x/tools/gopls/internal/cache.(*typeCheckBatch).checkPackageForImport(0x14064457440, {0x103b7b308, 0x140604f45d0}, 0x141f5df3e00)
	/Users/bytedance/go/pkg/mod/golang.org/x/tools/[email protected]/internal/cache/check.go:648 +0x3f8
golang.org/x/tools/gopls/internal/cache.(*typeCheckBatch).getImportPackage.func1({0x103b7b308, 0x140604f45d0})
	/Users/bytedance/go/pkg/mod/golang.org/x/tools/[email protected]/internal/cache/check.go:332 +0x1e0
golang.org/x/tools/gopls/internal/cache.(*futureCache[...]).get(0x103b791e0, {0x103b7b308, 0x140604f45d0}, {0x140094905a0, 0x4f}, 0x14064826ec8)
	/Users/bytedance/go/pkg/mod/golang.org/x/tools/[email protected]/internal/cache/future.go:126 +0x360
golang.org/x/tools/gopls/internal/cache.(*typeCheckBatch).getImportPackage(0x1c?, {0x103b7b308?, 0x140604f45d0?}, {0x140094905a0?, 0x103b7b340?})
	/Users/bytedance/go/pkg/mod/golang.org/x/tools/[email protected]/internal/cache/check.go:314 +0x60
golang.org/x/tools/gopls/internal/cache.(*typeCheckBatch).getPackage.func1.1()
	/Users/bytedance/go/pkg/mod/golang.org/x/tools/[email protected]/internal/cache/check.go:388 +0x50
golang.org/x/sync/errgroup.(*Group).Go.func1()
	/Users/bytedance/go/pkg/mod/golang.org/x/[email protected]/errgroup/errgroup.go:78 +0x54
created by golang.org/x/sync/errgroup.(*Group).Go in goroutine 62245
	/Users/bytedance/go/pkg/mod/golang.org/x/[email protected]/errgroup/errgroup.go:75 +0x98

goroutine 41432 [chan receive]:
golang.org/x/tools/gopls/internal/protocol.Handlers.AsyncHandler.func2.2()
	/Users/bytedance/go/pkg/mod/golang.org/x/[email protected]/internal/jsonrpc2/handler.go:102 +0x60
created by golang.org/x/tools/gopls/internal/protocol.Handlers.AsyncHandler.func2 in goroutine 118
	/Users/bytedance/go/pkg/mod/golang.org/x/[email protected]/internal/jsonrpc2/handler.go:101 +0x1fc

goroutine 79040 [IO wait]:
internal/poll.runtime_pollWait(0x12b4acd00, 0x72)
	/Users/bytedance/go/pkg/mod/golang.org/[email protected]/src/runtime/netpoll.go:351 +0xa0
internal/poll.(*pollDesc).wait(0x14308d51b80?, 0x14308eea000?, 0x0)
	/Users/bytedance/go/pkg/mod/golang.org/[email protected]/src/internal/poll/fd_poll_runtime.go:84 +0x28
internal/poll.(*pollDesc).waitRead(...)
	/Users/bytedance/go/pkg/mod/golang.org/[email protected]/src/internal/poll/fd_poll_runtime.go:89
internal/poll.(*FD).Read(0x14308d51b80, {0x14308eea000, 0x1000, 0x1000})
	/Users/bytedance/go/pkg/mod/golang.org/[email protected]/src/internal/poll/fd_unix.go:165 +0x1fc
net.(*netFD).Read(0x14308d51b80, {0x14308eea000?, 0x0?, 0x0?})
	/Users/bytedance/go/pkg/mod/golang.org/[email protected]/src/net/fd_posix.go:55 +0x28
net.(*conn).Read(0x143085dd5c8, {0x14308eea000?, 0x72?, 0x14308ee71a8?})
	/Users/bytedance/go/pkg/mod/golang.org/[email protected]/src/net/net.go:189 +0x34
net/http.(*connReader).Read(0x14308ee71a0, {0x14308eea000, 0x1000, 0x1000})
	/Users/bytedance/go/pkg/mod/golang.org/[email protected]/src/net/http/server.go:798 +0x224
bufio.(*Reader).fill(0x14308ee1260)
	/Users/bytedance/go/pkg/mod/golang.org/[email protected]/src/bufio/bufio.go:110 +0xf8
bufio.(*Reader).Peek(0x14308ee1260, 0x4)
	/Users/bytedance/go/pkg/mod/golang.org/[email protected]/src/bufio/bufio.go:148 +0x60
net/http.(*conn).serve(0x14064343ef0, {0x103b7b308, 0x140000ae480})
	/Users/bytedance/go/pkg/mod/golang.org/[email protected]/src/net/http/server.go:2127 +0x634
created by net/http.(*Server).Serve in goroutine 114
	/Users/bytedance/go/pkg/mod/golang.org/[email protected]/src/net/http/server.go:3360 +0x3dc

goroutine 41433 [chan receive]:
golang.org/x/tools/gopls/internal/protocol.Handlers.AsyncHandler.func2.2()
	/Users/bytedance/go/pkg/mod/golang.org/x/[email protected]/internal/jsonrpc2/handler.go:102 +0x60
created by golang.org/x/tools/gopls/internal/protocol.Handlers.AsyncHandler.func2 in goroutine 118
	/Users/bytedance/go/pkg/mod/golang.org/x/[email protected]/internal/jsonrpc2/handler.go:101 +0x1fc

goroutine 62396 [select]:
golang.org/x/tools/gopls/internal/cache.(*futureCache[...]).get(0x103b791e0, {0x103b7b308, 0x14216170960}, {0x1400944dbc0, 0x51}, 0x141c15710f8)
	/Users/bytedance/go/pkg/mod/golang.org/x/tools/[email protected]/internal/cache/future.go:118 +0x2b8
golang.org/x/tools/gopls/internal/cache.(*typeCheckBatch).getImportPackage(0x140094e3b80?, {0x103b7b308?, 0x14216170960?}, {0x1400944dbc0?, 0x14215a17ec1?})
	/Users/bytedance/go/pkg/mod/golang.org/x/tools/[email protected]/internal/cache/check.go:314 +0x60
golang.org/x/tools/gopls/internal/cache.(*typeCheckBatch).typesConfig.func1({0x14215a17ec1, 0x51})
	/Users/bytedance/go/pkg/mod/golang.org/x/tools/[email protected]/internal/cache/check.go:1775 +0x16c
golang.org/x/tools/gopls/internal/cache.importerFunc.Import(0x103a25ea0?, {0x14215a17ec1?, 0x14294f45288?})
	/Users/bytedance/go/pkg/mod/golang.org/x/tools/[email protected]/internal/cache/check.go:2180 +0x30
go/types.(*Checker).importPackage(0x141dccad340, {0x103b71c20, 0x14216c0a8c0}, {0x14215a17ec1, 0x51}, {0x1400a5c9f07, 0x5a})
	/Users/bytedance/go/pkg/mod/golang.org/[email protected]/src/go/types/resolver.go:166 +0x458
go/types.(*Checker).collectObjects.func1({0x103b71d20?, 0x14216c101e0})
	/Users/bytedance/go/pkg/mod/golang.org/[email protected]/src/go/types/resolver.go:270 +0xd8
go/types.(*Checker).walkDecl(0x141dccad340, {0x103b79900?, 0x14216c09a40}, 0x141c1571a28)
	/Users/bytedance/go/pkg/mod/golang.org/[email protected]/src/go/types/decl.go:404 +0x218
go/types.(*Checker).walkDecls(...)
	/Users/bytedance/go/pkg/mod/golang.org/[email protected]/src/go/types/decl.go:391
go/types.(*Checker).collectObjects(0x141dccad340)
	/Users/bytedance/go/pkg/mod/golang.org/[email protected]/src/go/types/resolver.go:257 +0xb00
go/types.(*Checker).checkFiles(0x141dccad340, {0x14216a415c0, 0xc, 0xc})
	/Users/bytedance/go/pkg/mod/golang.org/[email protected]/src/go/types/check.go:456 +0x170
go/types.(*Checker).Files(0x140094e3b80?, {0x14216a415c0?, 0x14216a41500?, 0x8?})
	/Users/bytedance/go/pkg/mod/golang.org/[email protected]/src/go/types/check.go:422 +0x80
golang.org/x/tools/gopls/internal/cache.(*typeCheckBatch).checkPackageForImport(0x14064457440, {0x103b7b308, 0x140604f45d0}, 0x14215e4aa00)
	/Users/bytedance/go/pkg/mod/golang.org/x/tools/[email protected]/internal/cache/check.go:648 +0x3f8
golang.org/x/tools/gopls/internal/cache.(*typeCheckBatch).getImportPackage.func1({0x103b7b308, 0x140604f45d0})
	/Users/bytedance/go/pkg/mod/golang.org/x/tools/[email protected]/internal/cache/check.go:332 +0x1e0
golang.org/x/tools/gopls/internal/cache.(*futureCache[...]).get(0x103b791e0, {0x103b7b308, 0x140604f45d0}, {0x140094e3b80, 0x3d}, 0x140646c06c8)
	/Users/bytedance/go/pkg/mod/golang.org/x/tools/[email protected]/internal/cache/future.go:126 +0x360
golang.org/x/tools/gopls/internal/cache.(*typeCheckBatch).getImportPackage(0x140646c0728?, {0x103b7b308?, 0x140604f45d0?}, {0x140094e3b80?, 0x14215c4b080?})
	/Users/bytedance/go/pkg/mod/golang.org/x/tools/[email protected]/internal/cache/check.go:314 +0x60
golang.org/x/tools/gopls/internal/cache.(*typeCheckBatch).getPackage.func1.1()
	/Users/bytedance/go/pkg/mod/golang.org/x/tools/[email protected]/internal/cache/check.go:388 +0x50
golang.org/x/sync/errgroup.(*Group).Go.func1()
	/Users/bytedance/go/pkg/mod/golang.org/x/[email protected]/errgroup/errgroup.go:78 +0x54
created by golang.org/x/sync/errgroup.(*Group).Go in goroutine 62245
	/Users/bytedance/go/pkg/mod/golang.org/x/[email protected]/errgroup/errgroup.go:75 +0x98

goroutine 76172 [IO wait]:
internal/poll.runtime_pollWait(0x12b4ace18, 0x72)
	/Users/bytedance/go/pkg/mod/golang.org/[email protected]/src/runtime/netpoll.go:351 +0xa0
internal/poll.(*pollDesc).wait(0x141e8db8280?, 0x1422eb94000?, 0x0)
	/Users/bytedance/go/pkg/mod/golang.org/[email protected]/src/internal/poll/fd_poll_runtime.go:84 +0x28
internal/poll.(*pollDesc).waitRead(...)
	/Users/bytedance/go/pkg/mod/golang.org/[email protected]/src/internal/poll/fd_poll_runtime.go:89
internal/poll.(*FD).Read(0x141e8db8280, {0x1422eb94000, 0x1000, 0x1000})
	/Users/bytedance/go/pkg/mod/golang.org/[email protected]/src/internal/poll/fd_unix.go:165 +0x1fc
net.(*netFD).Read(0x141e8db8280, {0x1422eb94000?, 0x0?, 0x0?})
	/Users/bytedance/go/pkg/mod/golang.org/[email protected]/src/net/fd_posix.go:55 +0x28
net.(*conn).Read(0x14156aea000, {0x1422eb94000?, 0x72?, 0x1414d934098?})
	/Users/bytedance/go/pkg/mod/golang.org/[email protected]/src/net/net.go:189 +0x34
net/http.(*connReader).Read(0x1414d934090, {0x1422eb94000, 0x1000, 0x1000})
	/Users/bytedance/go/pkg/mod/golang.org/[email protected]/src/net/http/server.go:798 +0x224
bufio.(*Reader).fill(0x14267c9c060)
	/Users/bytedance/go/pkg/mod/golang.org/[email protected]/src/bufio/bufio.go:110 +0xf8
bufio.(*Reader).Peek(0x14267c9c060, 0x4)
	/Users/bytedance/go/pkg/mod/golang.org/[email protected]/src/bufio/bufio.go:148 +0x60
net/http.(*conn).serve(0x1407930c000, {0x103b7b308, 0x140000ae480})
	/Users/bytedance/go/pkg/mod/golang.org/[email protected]/src/net/http/server.go:2127 +0x634
created by net/http.(*Server).Serve in goroutine 114
	/Users/bytedance/go/pkg/mod/golang.org/[email protected]/src/net/http/server.go:3360 +0x3dc

goroutine 62245 [semacquire]:
sync.runtime_Semacquire(0x14121546b88?)
	/Users/bytedance/go/pkg/mod/golang.org/[email protected]/src/runtime/sema.go:71 +0x2c
sync.(*WaitGroup).Wait(0x142167351c8)
	/Users/bytedance/go/pkg/mod/golang.org/[email protected]/src/sync/waitgroup.go:118 +0x74
golang.org/x/sync/errgroup.(*Group).Wait(0x142167351c0)
	/Users/bytedance/go/pkg/mod/golang.org/x/[email protected]/errgroup/errgroup.go:56 +0x2c
golang.org/x/tools/gopls/internal/cache.(*typeCheckBatch).getPackage.func1({0x103b7b308, 0x140604f45d0})
	/Users/bytedance/go/pkg/mod/golang.org/x/tools/[email protected]/internal/cache/check.go:397 +0x1d4
golang.org/x/tools/gopls/internal/cache.(*futureCache[...]).get(0x103b79220, {0x103b7b308, 0x140604f45d0}, {0x14009650d50, 0x28}, 0x14121546e70)
	/Users/bytedance/go/pkg/mod/golang.org/x/tools/[email protected]/internal/cache/future.go:126 +0x360
golang.org/x/tools/gopls/internal/cache.(*typeCheckBatch).getPackage(0x14064457440?, {0x103b7b308?, 0x140604f45d0?}, 0x103471ad4?)
	/Users/bytedance/go/pkg/mod/golang.org/x/tools/[email protected]/internal/cache/check.go:372 +0x5c
golang.org/x/tools/gopls/internal/cache.(*typeCheckBatch).handleSyntaxPackage(0x14064457440, {0x103b7b308, 0x140604f45d0}, 0x0, {0x14009650d50?, 0x102d7de68?}, 0x0, 0x14216735140)
	/Users/bytedance/go/pkg/mod/golang.org/x/tools/[email protected]/internal/cache/check.go:361 +0x88
golang.org/x/tools/gopls/internal/cache.(*typeCheckBatch).query.func1()
	/Users/bytedance/go/pkg/mod/golang.org/x/tools/[email protected]/internal/cache/check.go:299 +0xa8
golang.org/x/sync/errgroup.(*Group).Go.func1()
	/Users/bytedance/go/pkg/mod/golang.org/x/[email protected]/errgroup/errgroup.go:78 +0x54
created by golang.org/x/sync/errgroup.(*Group).Go in goroutine 146
	/Users/bytedance/go/pkg/mod/golang.org/x/[email protected]/errgroup/errgroup.go:75 +0x98



@gabyhelp gabyhelp added the BugReport Issues describing a possible bug in the Go implementation. label May 14, 2025
@adonovan
Copy link
Member

adonovan commented May 14, 2025

Thanks for the bug report, and sorry for the terrible experience.

There's a lot to digest here. My first thought was that this was due to the set of new analyzers we recently added, but I see you are using gopls 18, so that can't explain it. The backtraces show clearly that type checking is the bottleneck, and type checking was fused with analysis in CL 622038; that optimization was included in the 18 release, so it should be in your favor. We will investigate.

@adonovan adonovan added the gopls/performance Issues related to gopls performance (CPU, memory, etc). label May 14, 2025
@bytemain
Copy link
Author

bytemain commented May 15, 2025

If you need more information, please let me know.
And is there anything I can help or check by myself?

I thought it may related to the dependency I use, because many project has this momery problem in bytedance

@bytemain
Copy link
Author

It seems that I figured out why it consuming so much memory.

Our project is using https://github.com/cloudwego/kitex as RPC framework, it will generate code from the .idl files: https://www.cloudwego.io/docs/kitex/tutorials/code-gen/code_generation/.

I used binary search to find the dependency causing the memory issue, and download them in a dedicate GOPATH.
it shows it has 19,000,000 lines go code.

When I remove those dependencies, the memory consumption is down to ~800M:

Image

===============================================================================
 Language            Files        Lines         Code     Comments       Blanks
===============================================================================
 Go                   1502     19013639     16214568       131462      2667609
 Markdown               34          374            0          204          170
 Shell                   1           28           20            1            7
===============================================================================
 Total                1537     19014041     16214588       131667      2667786
===============================================================================

@adonovan
Copy link
Member

Well down for tracking it down.

Hot take: any code generator that--for whatever reason--emits 19 million lines of code for a project of modest size (you reported 15K files, so I estimate a only few million lines total) is broken by design. File an upstream bug, or avoid the dependency entirely if you can.

@adonovan adonovan changed the title x/tools/gopls: Very high memory consumption x/tools/gopls: high memory consumption on 19MLoC input May 15, 2025
@bytemain
Copy link
Author

Thanks for you response~
I have report it to cloudwego team, they have a tool that can trim the generated code those are not used in codebase, after used, The number of lines of generated code has been changed from 16.2 million lines to 7.7 million lines(removed blank lines)

Image

and the memory usage reduced to 10.8g

Image

@bytemain
Copy link
Author

bytemain commented May 15, 2025

and sadly, kitex is used extensively in bytedance's golang projects, so we cannot remove it.

does gopls have a plan to optimize the memory usage of large codebase? goland use 4gb in the same repo and gopls will consume ~45gb

@bytemain
Copy link
Author

or it there an setting that can let user ignore to indexing some dep, this also can help to us

@adonovan
Copy link
Member

adonovan commented May 15, 2025

Unfortunately removing blank lines won't significantly reduce the memory consumption. Each blank line costs only about 1 byte (for '\n') + 1 word (in token.File.lines), plus a small amount extra because varint encodings of our various indexes will be longer. So, eliminating them will save a little more than about 9B * (16.2 million - 7.7 million) = 76MB, which is not a lot. (What difference did you observe?) The problem is not the spaces between the declarations: it's the declarations themselves.

We don't have a setting to ignore large packages. Even if we did, it would dramatically worsen the user experience, as essentially all features would be disabled in any package that transitively depends on one of the suppressed large packages.

A question: do you notice that the memory usage eventually settles down after an initial large (~minutes, I suspect) burst of computation? I would expect that, once computed, all the information about the large packages would be saved in the index, and would only need to be recomputed if you make changes to those packages (e.g. edit the IDL and re-run the generator). So it might be quite usable if you're patient the first time.

It shouldn't take longer for gopls to index your workspace than it takes for a clean build (indeed, it should be much quicker). How long does a clean build take? If gopls is slower, it could be a sign that it is simply using too much concurrency and getting bogged down in contention.

@findleyr findleyr added the WaitingForInfo Issue is not actionable because of missing required information, which needs to be provided. label May 15, 2025
@bytemain
Copy link
Author

bytemain commented May 16, 2025

I'm sorry that my expression has caused misunderstanding.
The tool indeed removed a lot of unnecessary code, not just blank lines.

Before Now
Total Go Lines 19013639 11733305
Total Lines(remove blank lines) 16214568 7739316
Total Dep Size(include markdown,yaml etc) 450M 279M
memory used for the first index 45G 10G

@adonovan
Copy link
Member

The tool indeed removed a lot of unnecessary code, not just blank lines.

Ok, well that should help. Did you notice any improvement in gopls behavior?
Did you observe whether gopls eventually settles down and becomes usable after the initial delay?

@bytemain
Copy link
Author

bytemain commented May 16, 2025

All that I have said above is the first time opening after clearing the gopls cache. The memory will not decrease so much unless I exit and reopen VSCode, and when opened for the second time, the memory will be much smaller than when opened for the first time. In the scene after the code has been cropped, it will first used ~5g memory, during use, it will gradually increase.

@bytemain
Copy link
Author

The tool indeed removed a lot of unnecessary code, not just blank lines.

Ok, well that should help. Did you notice any improvement in gopls behavior? Did you observe whether gopls eventually settles down and becomes usable after the initial delay?

Yes, gopls reduced the memory used for the first index project from 45G to 10G.

@bytemain
Copy link
Author

bytemain commented May 16, 2025

5.16.mp4

I think the indexing time is quite long. my computer is apple m3 pro.

and after indexing, the memory usage is decrease to 34g from 47g

Image

@seankhliao seankhliao removed the WaitingForInfo Issue is not actionable because of missing required information, which needs to be provided. label May 27, 2025
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
BugReport Issues describing a possible bug in the Go implementation. gopls/performance Issues related to gopls performance (CPU, memory, etc). gopls Issues related to the Go language server, gopls. Tools This label describes issues relating to any tools in the x/tools repository.
Projects
None yet
Development

No branches or pull requests

6 participants