Skip to content

fatal error: concurrent map writes #1605

@trim21

Description

@trim21
  • Task version: v3.36.0
  • Operating system: windiws
  • Experiments enabled: no

please try this branch #1701 if you encounter this issue.

I'm running job with --watch

fatal error: concurrent map writes

goroutine 10 [running]:
github.com/go-task/task/v3/internal/omap.(*OrderedMap[...]).Set(...)
        github.com/go-task/task/[email protected]/internal/omap/orderedmap.go:67
github.com/go-task/task/v3.(*Executor).GetTask(0xc00010f7c0, 0xc000071020)
        github.com/go-task/task/[email protected]/task.go:425 +0x2e8
github.com/go-task/task/v3.(*Executor).compiledTask(0xc00010f7c0, 0xc0001d3e08?, 0x1)
        github.com/go-task/task/[email protected]/variables.go:30 +0x39
github.com/go-task/task/v3.(*Executor).CompiledTask(...)
        github.com/go-task/task/[email protected]/variables.go:21
github.com/go-task/task/v3.(*Executor).registerWatchedFiles.func1(0xc000037280?)
        github.com/go-task/task/[email protected]/watch.go:127 +0x5e
github.com/go-task/task/v3.(*Executor).registerWatchedFiles(0xc00010f7c0, 0xc000037280, {0xc00006c298, 0x1, 0x0?})
        github.com/go-task/task/[email protected]/watch.go:176 +0xb3
github.com/go-task/task/v3.(*Executor).watchTasks.func3()
        github.com/go-task/task/[email protected]/watch.go:95 +0x72
created by github.com/go-task/task/v3.(*Executor).watchTasks in goroutine 1
        github.com/go-task/task/[email protected]/watch.go:92 +0x515

goroutine 1 [sleep]:
time.Sleep(0x12a05f200)
        runtime/time.go:195 +0x126
github.com/radovskyb/watcher.(*Watcher).Start(0xc000037280, 0x12a05f200)
        github.com/radovskyb/[email protected]/watcher.go:608 +0x105
github.com/go-task/task/v3.(*Executor).watchTasks(0xc00010f7c0, {0xc00006c298, 0x1, 0x1})
        github.com/go-task/task/[email protected]/watch.go:102 +0x525
github.com/go-task/task/v3.(*Executor).Run(0xc00010f7c0, {0xef9150, 0x121a620}, {0xc00006c280, 0x1, 0x1})
        github.com/go-task/task/[email protected]/task.go:139 +0x39d
main.run()
        github.com/go-task/task/[email protected]/cmd/task/task.go:193 +0xadb
main.main()
        github.com/go-task/task/[email protected]/cmd/task/task.go:25 +0x1f

goroutine 6 [runnable]:
syscall.Environ()
        syscall/env_windows.go:95 +0x1ff
os.Environ(...)
        os/env.go:140
github.com/go-task/task/v3/internal/compiler.GetEnviron()
        github.com/go-task/task/[email protected]/internal/compiler/env.go:14 +0x45
github.com/go-task/task/v3/internal/compiler.(*Compiler).getVariables(0xc00007e1e0, 0xc0001c45a0, 0xc000071020, 0x0)
        github.com/go-task/task/[email protected]/internal/compiler/compiler.go:49 +0x45
github.com/go-task/task/v3/internal/compiler.(*Compiler).FastGetVariables(...)
        github.com/go-task/task/[email protected]/internal/compiler/compiler.go:45
github.com/go-task/task/v3.(*Executor).compiledTask(0xc00010f7c0, 0x0?, 0x0)
        github.com/go-task/task/[email protected]/variables.go:39 +0xbe
github.com/go-task/task/v3.(*Executor).FastCompiledTask(...)
        github.com/go-task/task/[email protected]/variables.go:26
github.com/go-task/task/v3.(*Executor).RunTask(0xc00010f7c0, {0xef9210, 0xc000100910}, 0xc000071020)
        github.com/go-task/task/[email protected]/task.go:163 +0x5a
github.com/go-task/task/v3.(*Executor).watchTasks.func1()
        github.com/go-task/task/[email protected]/watch.go:36 +0x2f
created by github.com/go-task/task/v3.(*Executor).watchTasks in goroutine 1
        github.com/go-task/task/[email protected]/watch.go:35 +0x205

goroutine 7 [syscall]:
os/signal.signal_recv()
        runtime/sigqueue.go:152 +0x29
os/signal.loop()
        os/signal/signal_unix.go:23 +0x13
created by os/signal.Notify.func1.1 in goroutine 1
        os/signal/signal.go:151 +0x1f

goroutine 8 [chan receive]:
github.com/go-task/task/v3.closeOnInterrupt.func1()
        github.com/go-task/task/[email protected]/watch.go:117 +0x25
created by github.com/go-task/task/v3.closeOnInterrupt in goroutine 1
        github.com/go-task/task/[email protected]/watch.go:116 +0xc9

goroutine 9 [select]:
github.com/go-task/task/v3.(*Executor).watchTasks.func2()
        github.com/go-task/task/[email protected]/watch.go:62 +0x10f
created by github.com/go-task/task/v3.(*Executor).watchTasks in goroutine 1
        github.com/go-task/task/[email protected]/watch.go:60 +0x479

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions