Skip to content

x/tools/gopls: "internal error reading (shared cache|typerefs data|symbol data)" bug (ENOSPC?) #67433

@adonovan

Description

@adonovan
#!stacks
("bug.Reportf" || "bug.Errorf") && 
  ("runCached:21" || "runCached:+24" || "runCached:+18" || /* analysis */
   "typerefData:+5" ||  /* typerefs */
   "cache.(*Snapshot).Symbols.func1:+15") /* symbols */

Note that similar errors have been observed in three different places that call filecache.Get, as indicated by the comments in the pattern above. Presumably the underlying cause is the same in all cases.

This stack -iVK7w was reported by telemetry:

	// Access the cache.
	var summary *analyzeSummary
	const cacheKind = "analysis"
	if data, err := filecache.Get(cacheKind, key); err == nil {
		// cache hit
		analyzeSummaryCodec.Decode(data, &summary)
		if summary == nil { // debugging #66732
			bug.Reportf("analyzeSummaryCodec.Decode yielded nil *analyzeSummary")
		}
	} else if err != filecache.ErrNotFound {
		return nil, bug.Errorf("internal error reading shared cache: %v", err) // <--- here
	} else {
gopls/bug
golang.org/x/tools/gopls/internal/util/bug.report:+35
golang.org/x/tools/gopls/internal/util/bug.Errorf:+2
golang.org/x/tools/gopls/internal/cache.(*analysisNode).runCached:+24
golang.org/x/tools/gopls/internal/cache.(*Snapshot).Analyze.func6.1:+4
golang.org/x/sync/errgroup.(*Group).Go.func1:+3
runtime.goexit:+0
golang.org/x/tools/[email protected] go1.20.4 windows/amd64 vscode (1)

Issue created by golang.org/x/tools/gopls/internal/telemetry/cmd/stacks.

Dups: m4MTKQ UFNCpw e960MA T1ADGg HYjhzQ S3fsGA n0XcvA pM2JYg m1H29g 9gpe3A 3NAjKw hLEI6Q 5wa4iw RRKzTQ VhQfxA o46Q6Q

Metadata

Metadata

Assignees

Labels

NeedsInvestigationSomeone must examine and confirm this is a valid issue and not a duplicate of an existing one.ToolsThis label describes issues relating to any tools in the x/tools repository.goplsIssues related to the Go language server, gopls.gopls/telemetry-wins

Type

No type

Projects

No projects

Milestone

Relationships

None yet

Development

No branches or pull requests

Issue actions