-
Notifications
You must be signed in to change notification settings - Fork 679
Closed
Labels
Data raceDomain: EditorRelated to the LSP server, editor experienceRelated to the LSP server, editor experience
Description
Seems like this code doesn't guard against concurrent update.
WARNING: DATA RACE
Write at 0x00c000293560 by goroutine 1005:
runtime.mapassign_faststr()
/usr/local/go/src/internal/runtime/maps/runtime_faststr_swiss.go:263 +0x0
github.com/microsoft/typescript-go/internal/collections.(*Set[go.shape.string]).Add()
/home/jabaile/work/TypeScript-go/internal/collections/set.go:23 +0x4ea
github.com/microsoft/typescript-go/internal/lsp.(*Server).WatchFiles()
/home/jabaile/work/TypeScript-go/internal/lsp/server.go:214 +0x432
github.com/microsoft/typescript-go/internal/project.(*watchedFiles[go.shape.[]string]).update()
/home/jabaile/work/TypeScript-go/internal/project/watch.go:85 +0xbc1
github.com/microsoft/typescript-go/internal/project.(*ConfigFileRegistry).updateRootFilesWatch()
/home/jabaile/work/TypeScript-go/internal/project/configfileregistry.go:134 +0x990
github.com/microsoft/typescript-go/internal/project.(*ConfigFileRegistry).AcquireConfig()
/home/jabaile/work/TypeScript-go/internal/project/configfileregistry.go:111 +0x5c4
github.com/microsoft/typescript-go/internal/project.(*Project).GetResolvedProjectReference()
/home/jabaile/work/TypeScript-go/internal/project/project.go:290 +0x88
github.com/microsoft/typescript-go/internal/compiler.(*projectReferenceParseTask).start()
/home/jabaile/work/TypeScript-go/internal/compiler/projectreferenceparsetask.go:19 +0xde
github.com/microsoft/typescript-go/internal/compiler.(*fileLoaderWorker[go.shape.*github.com/microsoft/typescript-go/internal/compiler.projectReferenceParseTask]).start.func1()
/home/jabaile/work/TypeScript-go/internal/compiler/fileloadertask.go:35 +0x63
github.com/microsoft/typescript-go/internal/core.(*parallelWorkGroup).Queue.func1()
/home/jabaile/work/TypeScript-go/internal/core/workgroup.go:39 +0x8d
Previous write at 0x00c000293560 by goroutine 1006:
runtime.mapassign_faststr()
/usr/local/go/src/internal/runtime/maps/runtime_faststr_swiss.go:263 +0x0
github.com/microsoft/typescript-go/internal/collections.(*Set[go.shape.string]).Add()
/home/jabaile/work/TypeScript-go/internal/collections/set.go:23 +0x4ea
github.com/microsoft/typescript-go/internal/lsp.(*Server).WatchFiles()
/home/jabaile/work/TypeScript-go/internal/lsp/server.go:214 +0x432
github.com/microsoft/typescript-go/internal/project.(*watchedFiles[go.shape.[]string]).update()
/home/jabaile/work/TypeScript-go/internal/project/watch.go:85 +0xbc1
github.com/microsoft/typescript-go/internal/project.(*ConfigFileRegistry).updateRootFilesWatch()
/home/jabaile/work/TypeScript-go/internal/project/configfileregistry.go:134 +0x990
github.com/microsoft/typescript-go/internal/project.(*ConfigFileRegistry).AcquireConfig()
/home/jabaile/work/TypeScript-go/internal/project/configfileregistry.go:111 +0x5c4
github.com/microsoft/typescript-go/internal/project.(*Project).GetResolvedProjectReference()
/home/jabaile/work/TypeScript-go/internal/project/project.go:290 +0x88
github.com/microsoft/typescript-go/internal/compiler.(*projectReferenceParseTask).start()
/home/jabaile/work/TypeScript-go/internal/compiler/projectreferenceparsetask.go:19 +0xde
github.com/microsoft/typescript-go/internal/compiler.(*fileLoaderWorker[go.shape.*github.com/microsoft/typescript-go/internal/compiler.projectReferenceParseTask]).start.func1()
/home/jabaile/work/TypeScript-go/internal/compiler/fileloadertask.go:35 +0x63
github.com/microsoft/typescript-go/internal/core.(*parallelWorkGroup).Queue.func1()
/home/jabaile/work/TypeScript-go/internal/core/workgroup.go:39 +0x8d
Metadata
Metadata
Assignees
Labels
Data raceDomain: EditorRelated to the LSP server, editor experienceRelated to the LSP server, editor experience