Example: https://golangci.com/r/github.com/istio/istio/pulls/13041
Please include the following information:
$ GOLANGCI_COM_RUN=1 golangci-lint run --out-format=json --issues-exit-code=0 --deadline=5m --new=false --new-from-rev= --new-from-patch=../changes.patch
fatal error: runtime: out of memory
runtime stack:
runtime.throw(0xe79fc5, 0x16)
/home/travis/.gimme/versions/go1.12.1.linux.amd64/src/runtime/panic.go:617 +0x72
runtime.sysMap(0xc364000000, 0x4000000, 0x17fd0b8)
/home/travis/.gimme/versions/go1.12.1.linux.amd64/src/runtime/mem_linux.go:170 +0xc7
runtime.(*mheap).sysAlloc(0x17dec20, 0x2000, 0x17dec30, 0x1)
/home/travis/.gimme/versions/go1.12.1.linux.amd64/src/runtime/malloc.go:633 +0x1cd
runtime.(*mheap).grow(0x17dec20, 0x1, 0x0)
/home/travis/.gimme/versions/go1.12.1.linux.amd64/src/runtime/mheap.go:1232 +0x42
runtime.(*mheap).allocSpanLocked(0x17dec20, 0x1, 0x17fd0c8, 0x7f3037830fc8)
/home/travis/.gimme/versions/go1.12.1.linux.amd64/src/runtime/mheap.go:1150 +0x3a7
runtime.(*mheap).alloc_m(0x17dec20, 0x1, 0x7ffc7cd0003e, 0x7f3037830fc8)
/home/travis/.gimme/versions/go1.12.1.linux.amd64/src/runtime/mheap.go:977 +0xc2
runtime.(*mheap).alloc.func1()
/home/travis/.gimme/versions/go1.12.1.linux.amd64/src/runtime/mheap.go:1048 +0x4c
runtime.systemstack(0x4591c9)
/home/travis/.gimme/versions/go1.12.1.linux.amd64/src/runtime/asm_amd64.s:351 +0x66
runtime.mstart()
/home/travis/.gimme/versions/go1.12.1.linux.amd64/src/runtime/proc.go:1153
goroutine 24965 [running]:
runtime.systemstack_switch()
/home/travis/.gimme/versions/go1.12.1.linux.amd64/src/runtime/asm_amd64.s:311 fp=0xc0e95a71a0 sp=0xc0e95a7198 pc=0x4592c0
runtime.(*mheap).alloc(0x17dec20, 0x1, 0x1003e, 0xc363fe5d40)
/home/travis/.gimme/versions/go1.12.1.linux.amd64/src/runtime/mheap.go:1047 +0x8a fp=0xc0e95a71f0 sp=0xc0e95a71a0 pc=0x42493a
runtime.(*mcentral).grow(0x17dff20, 0x0)
/home/travis/.gimme/versions/go1.12.1.linux.amd64/src/runtime/mcentral.go:256 +0x95 fp=0xc0e95a7238 sp=0xc0e95a71f0 pc=0x417875
runtime.(*mcentral).cacheSpan(0x17dff20, 0xc363fe5d40)
/home/travis/.gimme/versions/go1.12.1.linux.amd64/src/runtime/mcentral.go:106 +0x2ff fp=0xc0e95a7298 sp=0xc0e95a7238 pc=0x41737f
runtime.(*mcache).refill(0x7f3065422d98, 0x3e)
/home/travis/.gimme/versions/go1.12.1.linux.amd64/src/runtime/mcache.go:135 +0x86 fp=0xc0e95a72b8 sp=0xc0e95a7298 pc=0x416e16
runtime.(*mcache).nextFree(0x7f3065422d98, 0xc363fd013e, 0x1, 0x1, 0x1)
/home/travis/.gimme/versions/go1.12.1.linux.amd64/src/runtime/malloc.go:786 +0x88 fp=0xc0e95a72f0 sp=0xc0e95a72b8 pc=0x40b718
runtime.mallocgc(0x400, 0xd1acc0, 0x851601, 0xc363fd0000)
/home/travis/.gimme/versions/go1.12.1.linux.amd64/src/runtime/malloc.go:939 +0x76e fp=0xc0e95a7390 sp=0xc0e95a72f0 pc=0x40c02e
runtime.growslice(0xd1acc0, 0xc3638cba00, 0x20, 0x20, 0x21, 0xc3638cba00, 0x10, 0x20)
/home/travis/.gimme/versions/go1.12.1.linux.amd64/src/runtime/slice.go:181 +0x1e6 fp=0xc0e95a73f8 sp=0xc0e95a7390 pc=0x442c66
go/parser.(*parser).parseStmtList(0xc363fd0000, 0xc3638cba00, 0x20, 0x20)
/home/travis/.gimme/versions/go1.12.1.linux.amd64/src/go/parser/parser.go:1068 +0x10e fp=0xc0e95a7458 sp=0xc0e95a73f8 pc=0x849dce
go/parser.(*parser).parseBody(0xc363fd0000, 0xc363fe25c0, 0x0)
/home/travis/.gimme/versions/go1.12.1.linux.amd64/src/go/parser/parser.go:1082 +0x15f fp=0xc0e95a74e8 sp=0xc0e95a7458 pc=0x849fcf
go/parser.(*parser).parseFuncDecl(0xc363fd0000, 0x0)
/home/travis/.gimme/versions/go1.12.1.linux.amd64/src/go/parser/parser.go:2441 +0x366 fp=0xc0e95a75a8 sp=0xc0e95a74e8 pc=0x8530e6
go/parser.(*parser).parseDecl(0xc363fd0000, 0xc000095770, 0x0, 0x0)
/home/travis/.gimme/versions/go1.12.1.linux.amd64/src/go/parser/parser.go:2485 +0x155 fp=0xc0e95a7600 sp=0xc0e95a75a8 pc=0x853315
go/parser.(*parser).parseFile(0xc363fd0000, 0x0)
/home/travis/.gimme/versions/go1.12.1.linux.amd64/src/go/parser/parser.go:2540 +0x310 fp=0xc0e95a76f0 sp=0xc0e95a7600 pc=0x8536f0
go/parser.ParseFile(0xc363da7680, 0xc00355ac00, 0x3b, 0xcaab20, 0xc363db0e20, 0x4, 0x0, 0x0, 0x0)
/home/travis/.gimme/versions/go1.12.1.linux.amd64/src/go/parser/interface.go:117 +0x183 fp=0xc0e95a7768 sp=0xc0e95a76f0 pc=0x8428f3
github.com/golangci/golangci-lint/vendor/golang.org/x/tools/imports.parse(0xc363da7680, 0xc00355ac00, 0x3b, 0xc354308800, 0x3455, 0x3655, 0x164bb60, 0x0, 0x0, 0xfbef00, ...)
/home/travis/gopath/src/github.com/golangci/golangci-lint/vendor/golang.org/x/tools/imports/imports.go:138 +0xee fp=0xc0e95a7820 sp=0xc0e95a7768 pc=0x9e1dbe
github.com/golangci/golangci-lint/vendor/golang.org/x/tools/imports.process(0xc00355ac00, 0x3b, 0xc354308800, 0x3455, 0x3655, 0x164bb60, 0xc3638c7d80, 0xc363ea6000, 0x1f64, 0x3b2e, ...)
/home/travis/gopath/src/github.com/golangci/golangci-lint/vendor/golang.org/x/tools/imports/imports.go:66 +0x101 fp=0xc0e95a7958 sp=0xc0e95a7820 pc=0x9e1531
github.com/golangci/golangci-lint/vendor/golang.org/x/tools/imports.Process(...)
/home/travis/gopath/src/github.com/golangci/golangci-lint/vendor/golang.org/x/tools/imports/imports.go:50
github.com/golangci/golangci-lint/vendor/github.com/golangci/gofmt/goimports.Run(0xc00355ac00, 0x3b, 0x0, 0x0, 0x0, 0x0, 0x0)
/home/travis/gopath/src/github.com/golangci/golangci-lint/vendor/github.com/golangci/gofmt/goimports/golangci.go:17 +0x148 fp=0xc0e95a7a28 sp=0xc0e95a7958 pc=0xa00958
github.com/golangci/golangci-lint/pkg/golinters.Gofmt.Run(0x1, 0xfd5360, 0xc000073aa0, 0xc0a7a5f3b0, 0xc0ab317c70, 0x1, 0x1, 0xfdc200, 0xc0ab2e3e80)
/home/travis/gopath/src/github.com/golangci/golangci-lint/pkg/golinters/gofmt.go:293 +0x112 fp=0xc0e95a7b50 sp=0xc0e95a7a28 pc=0xbdb4e2
github.com/golangci/golangci-lint/pkg/golinters.(*Gofmt).Run(0xc0003df341, 0xfd5360, 0xc000073aa0, 0xc0a7a5f3b0, 0xc0aa125230, 0xc0495d8ae0, 0x17e2d20, 0xc007e71911, 0x4)
<autogenerated>:1 +0x61 fp=0xc0e95a7ba8 sp=0xc0e95a7b50 pc=0xbe77c1
github.com/golangci/golangci-lint/pkg/lint.(*Runner).runLinterSafe(0xc071780ee0, 0xfd5360, 0xc000073aa0, 0xc0aafb6a80, 0xc000588e80, 0x0, 0x0, 0x0, 0x0, 0x0)
/home/travis/gopath/src/github.com/golangci/golangci-lint/pkg/lint/runner.go:112 +0x16a fp=0xc0e95a7ca8 sp=0xc0e95a7ba8 pc=0xc0846a
github.com/golangci/golangci-lint/pkg/lint.Runner.runWorker.func1()
/home/travis/gopath/src/github.com/golangci/golangci-lint/pkg/lint/runner.go:146 +0x64 fp=0xc0e95a7d18 sp=0xc0e95a7ca8 pc=0xc0a144
github.com/golangci/golangci-lint/pkg/timeutils.(*Stopwatch).TrackStage(0xc0a7a39900, 0xe16ca9, 0x9, 0xc0047d4e40)
/home/travis/gopath/src/github.com/golangci/golangci-lint/pkg/timeutils/stopwatch.go:75 +0x50 fp=0xc0e95a7d78 sp=0xc0e95a7d18 pc=0xc03730
github.com/golangci/golangci-lint/pkg/lint.Runner.runWorker(0xc0ab022120, 0x11, 0x11, 0xfdf320, 0xc0ab340f30, 0xfd5360, 0xc000073aa0, 0xc0aafb6a80, 0xc0ab374f60, 0xc0ab375020, ...)
/home/travis/gopath/src/github.com/golangci/golangci-lint/pkg/lint/runner.go:145 +0x23b fp=0xc0e95a7ee0 sp=0xc0e95a7d78 pc=0xc0882b
github.com/golangci/golangci-lint/pkg/lint.(*Runner).runWorkers.func1(0xc0ab3ca960, 0xc0ab3aca20, 0xfd5360, 0xc000073aa0, 0xc0aafb6a80, 0xc0ab374f60, 0xc0ab375020, 0xc0ab375080, 0x4, 0x4, ...)
/home/travis/gopath/src/github.com/golangci/golangci-lint/pkg/lint/runner.go:200 +0x163 fp=0xc0e95a7f88 sp=0xc0e95a7ee0 pc=0xc0a373
runtime.goexit()
/home/travis/.gimme/versions/go1.12.1.linux.amd64/src/runtime/asm_amd64.s:1337 +0x1 fp=0xc0e95a7f90 sp=0xc0e95a7f88 pc=0x45b211
created by github.com/golangci/golangci-lint/pkg/lint.(*Runner).runWorkers
/home/travis/gopath/src/github.com/golangci/golangci-lint/pkg/lint/runner.go:197 +0x1ab
goroutine 1 [chan receive]:
github.com/golangci/golangci-lint/pkg/printers.JSON.Print(0xc00040f3e0, 0xfd5360, 0xc000073aa0, 0xc0ab375200, 0xc00040f380, 0xc0ab375200)
/home/travis/gopath/src/github.com/golangci/golangci-lint/pkg/printers/json.go:30 +0xab
github.com/golangci/golangci-lint/pkg/commands.(*Executor).runAndPrint(0xc00040f380, 0xfd5360, 0xc000073aa0, 0xc000073a40, 0x0, 0x6, 0x0, 0x0)
/home/travis/gopath/src/github.com/golangci/golangci-lint/pkg/commands/run.go:350 +0x253
github.com/golangci/golangci-lint/pkg/commands.(*Executor).executeRun(0xc00040f380, 0xc0005b2f00, 0xc000073a40, 0x0, 0x6)
/home/travis/gopath/src/github.com/golangci/golangci-lint/pkg/commands/run.go:398 +0x153
github.com/golangci/golangci-lint/vendor/github.com/spf13/cobra.(*Command).execute(0xc0005b2f00, 0xc000073980, 0x6, 0x6, 0xc0005b2f00, 0xc000073980)
/home/travis/gopath/src/github.com/golangci/golangci-lint/vendor/github.com/spf13/cobra/command.go:760 +0x2ae
github.com/golangci/golangci-lint/vendor/github.com/spf13/cobra.(*Command).ExecuteC(0xc0005b2c80, 0x6, 0xfa8bf0, 0x7)
/home/travis/gopath/src/github.com/golangci/golangci-lint/vendor/github.com/spf13/cobra/command.go:846 +0x2ec
github.com/golangci/golangci-lint/vendor/github.com/spf13/cobra.(*Command).Execute(...)
/home/travis/gopath/src/github.com/golangci/golangci-lint/vendor/github.com/spf13/cobra/command.go:794
github.com/golangci/golangci-lint/pkg/commands.(*Executor).Execute(...)
/home/travis/gopath/src/github.com/golangci/golangci-lint/pkg/commands/executor.go:107
main.main()
/home/travis/gopath/src/github.com/golangci/golangci-lint/cmd/golangci-lint/main.go:20 +0x80
goroutine 24970 [chan receive]:
github.com/golangci/golangci-lint/pkg/commands.(*Executor).setExitCodeIfIssuesFound.func1(0xc0ab3751a0, 0xc0ab375200, 0xc00040f380)
/home/travis/gopath/src/github.com/golangci/golangci-lint/pkg/commands/run.go:309 +0x134
created by github.com/golangci/golangci-lint/pkg/commands.(*Executor).setExitCodeIfIssuesFound
/home/travis/gopath/src/github.com/golangci/golangci-lint/pkg/commands/run.go:307 +0x71
goroutine 24964 [running]:
goroutine running on other thread; stack unavailable
created by github.com/golangci/golangci-lint/pkg/lint.(*Runner).runWorkers
/home/travis/gopath/src/github.com/golangci/golangci-lint/pkg/lint/runner.go:197 +0x1ab
goroutine 24963 [runnable]:
syscall.Syscall6(0x106, 0xffffffffffffff9c, 0xc363793060, 0xc363e41078, 0x0, 0x0, 0x0, 0x0, 0xc363e41078, 0x0)
/home/travis/.gimme/versions/go1.12.1.linux.amd64/src/syscall/asm_linux_amd64.s:44 +0x5
syscall.fstatat(0xffffffffffffff9c, 0xc363793040, 0x1e, 0xc363e41078, 0x0, 0x0, 0x1e)
/home/travis/.gimme/versions/go1.12.1.linux.amd64/src/syscall/zsyscall_linux_amd64.go:1520 +0xcb
syscall.Stat(...)
/home/travis/.gimme/versions/go1.12.1.linux.amd64/src/syscall/syscall_linux_amd64.go:64
os.statNolog(0xc363793040, 0x1e, 0xc363793040, 0x1e, 0x1, 0xc363793040)
/home/travis/.gimme/versions/go1.12.1.linux.amd64/src/os/stat_unix.go:31 +0x6f
os.Stat(0xc363793040, 0x1e, 0x3, 0x3, 0xc363793040, 0x1e)
/home/travis/.gimme/versions/go1.12.1.linux.amd64/src/os/stat.go:13 +0x4d
go/build.(*Context).isDir(0x17d8c20, 0xc363793040, 0x1e, 0x3)
/home/travis/.gimme/versions/go1.12.1.linux.amd64/src/go/build/build.go:131 +0x4a
go/build.(*Context).Import(0x17d8c20, 0xc08417e561, 0x16, 0xc0030f7840, 0x32, 0x3, 0xcb5260, 0x40bba9, 0x71)
/home/travis/.gimme/versions/go1.12.1.linux.amd64/src/go/build/build.go:671 +0x5b7f
go/build.Import(...)
/home/travis/.gimme/versions/go1.12.1.linux.amd64/src/go/build/build.go:1280
github.com/golangci/golangci-lint/vendor/golang.org/x/tools/go/internal/gcimporter.FindPkg(0xc08417e561, 0x16, 0xc0030f7840, 0x32, 0xc0030f7840, 0x40894d, 0xc0030f7840, 0x6a17b17771207df0)
/home/travis/gopath/src/github.com/golangci/golangci-lint/vendor/golang.org/x/tools/go/internal/gcimporter/gcimporter.go:56 +0x330
github.com/golangci/golangci-lint/vendor/golang.org/x/tools/go/gcexportdata.Find(...)
/home/travis/gopath/src/github.com/golangci/golangci-lint/vendor/golang.org/x/tools/go/gcexportdata/gcexportdata.go:45
github.com/golangci/golangci-lint/vendor/golang.org/x/tools/go/gcexportdata.importer.ImportFrom(0xc000160e80, 0xc36322d620, 0xc08417e561, 0x16, 0xc0030f7840, 0x32, 0x0, 0x0, 0x0, 0x0)
/home/travis/gopath/src/github.com/golangci/golangci-lint/vendor/golang.org/x/tools/go/gcexportdata/importer.go:40 +0x7f
go/types.(*Checker).importPackage(0xc0006adc20, 0x35ebcef, 0xc08417e561, 0x16, 0xc0030f7840, 0x32, 0xc363bc5c20)
/home/travis/.gimme/versions/go1.12.1.linux.amd64/src/go/types/resolver.go:156 +0x180
go/types.(*Checker).collectObjects(0xc0006adc20)
/home/travis/.gimme/versions/go1.12.1.linux.amd64/src/go/types/resolver.go:256 +0x15f9
go/types.(*Checker).checkFiles(0xc0006adc20, 0xc362b938c8, 0x1, 0x1, 0x0, 0x0)
/home/travis/.gimme/versions/go1.12.1.linux.amd64/src/go/types/check.go:252 +0x97
go/types.(*Checker).Files(...)
/home/travis/.gimme/versions/go1.12.1.linux.amd64/src/go/types/check.go:245
go/types.(*Config).Check(0xc36322b700, 0xc084079310, 0x4, 0xc000160e80, 0xc362b938c8, 0x1, 0x1, 0xc3632304b0, 0x0, 0xc36308f790, ...)
/home/travis/.gimme/versions/go1.12.1.linux.amd64/src/go/types/api.go:351 +0x11c
github.com/golangci/golangci-lint/vendor/github.com/golangci/lint-1.(*pkg).typeCheck(0xc363230460, 0x4cb8a3, 0xc08b8725a0)
/home/travis/gopath/src/github.com/golangci/golangci-lint/vendor/github.com/golangci/lint-1/lint.go:324 +0x313
github.com/golangci/golangci-lint/vendor/github.com/golangci/lint-1.(*pkg).lint(0xc363230460, 0xc36322d5f0, 0xc0030f7840, 0x3a)
/home/travis/gopath/src/github.com/golangci/golangci-lint/vendor/github.com/golangci/lint-1/lint.go:194 +0x40
github.com/golangci/golangci-lint/vendor/github.com/golangci/lint-1.(*Linter).LintASTFiles(0xc216aa9990, 0xc362b938b8, 0x1, 0x1, 0xc000160e80, 0x1, 0xc362b938b8, 0x0, 0x1, 0xc00355b900)
/home/travis/gopath/src/github.com/golangci/golangci-lint/vendor/github.com/golangci/lint-1/lint.go:156 +0x7f0
github.com/golangci/golangci-lint/pkg/golinters.Golint.lintPkg(0x0, 0xc362b938b8, 0x1, 0x1, 0xc000160e80, 0xc000160e80, 0x0, 0x0, 0x0, 0x0)
/home/travis/gopath/src/github.com/golangci/golangci-lint/pkg/golinters/golint.go:50 +0x74
github.com/golangci/golangci-lint/pkg/golinters.Golint.Run(0xfd5360, 0xc000073aa0, 0xc0ab3cef50, 0xc0ab317c70, 0x1, 0x1, 0xfdc200, 0xc0ab2e3e80)
/home/travis/gopath/src/github.com/golangci/golangci-lint/pkg/golinters/golint.go:34 +0x130
github.com/golangci/golangci-lint/pkg/lint.(*Runner).runLinterSafe(0xc0781ffee0, 0xfd5360, 0xc000073aa0, 0xc0aafb6a80, 0xc000588600, 0x0, 0x0, 0x0, 0x0, 0x0)
/home/travis/gopath/src/github.com/golangci/golangci-lint/pkg/lint/runner.go:112 +0x16a
github.com/golangci/golangci-lint/pkg/lint.Runner.runWorker.func1()
/home/travis/gopath/src/github.com/golangci/golangci-lint/pkg/lint/runner.go:146 +0x64
github.com/golangci/golangci-lint/pkg/timeutils.(*Stopwatch).TrackStage(0xc0ab3d0050, 0xdf71f7, 0x6, 0xc001ff0e40)
/home/travis/gopath/src/github.com/golangci/golangci-lint/pkg/timeutils/stopwatch.go:75 +0x50
github.com/golangci/golangci-lint/pkg/lint.Runner.runWorker(0xc0ab022120, 0x11, 0x11, 0xfdf320, 0xc0ab340f30, 0xfd5360, 0xc000073aa0, 0xc0aafb6a80, 0xc0ab374f60, 0xc0ab375020, ...)
/home/travis/gopath/src/github.com/golangci/golangci-lint/pkg/lint/runner.go:145 +0x23b
github.com/golangci/golangci-lint/pkg/lint.(*Runner).runWorkers.func1(0xc0ab3ca960, 0xc0ab3aca20, 0xfd5360, 0xc000073aa0, 0xc0aafb6a80, 0xc0ab374f60, 0xc0ab375020, 0xc0ab375080, 0x4, 0x4, ...)
/home/travis/gopath/src/github.com/golangci/golangci-lint/pkg/lint/runner.go:200 +0x163
created by github.com/golangci/golangci-lint/pkg/lint.(*Runner).runWorkers
/home/travis/gopath/src/github.com/golangci/golangci-lint/pkg/lint/runner.go:197 +0x1ab
goroutine 24969 [chan receive]:
github.com/golangci/golangci-lint/pkg/lint.collectIssues.func1(0xc0ab3751a0, 0xc0ab375140)
/home/travis/gopath/src/github.com/golangci/golangci-lint/pkg/lint/runner.go:267 +0x8f
created by github.com/golangci/golangci-lint/pkg/lint.collectIssues
/home/travis/gopath/src/github.com/golangci/golangci-lint/pkg/lint/runner.go:264 +0x62
goroutine 24968 [chan receive]:
github.com/golangci/golangci-lint/pkg/lint.Runner.processLintResults.func1(0xc0ab3aca50, 0xc0ab375140, 0xc0ab375020)
/home/travis/gopath/src/github.com/golangci/golangci-lint/pkg/lint/runner.go:230 +0x194
created by github.com/golangci/golangci-lint/pkg/lint.Runner.processLintResults
/home/travis/gopath/src/github.com/golangci/golangci-lint/pkg/lint/runner.go:224 +0xb6
goroutine 24967 [semacquire]:
sync.runtime_Semacquire(0xc0ab3ca968)
/home/travis/.gimme/versions/go1.12.1.linux.amd64/src/runtime/sema.go:56 +0x39
sync.(*WaitGroup).Wait(0xc0ab3ca960)
/home/travis/.gimme/versions/go1.12.1.linux.amd64/src/sync/waitgroup.go:130 +0x65
github.com/golangci/golangci-lint/pkg/lint.(*Runner).runWorkers.func2(0xc0ab3ca960, 0xc0ab375020, 0xc0ab3aca20, 0xc0ab375080, 0x4, 0x4)
/home/travis/gopath/src/github.com/golangci/golangci-lint/pkg/lint/runner.go:212 +0x2f
created by github.com/golangci/golangci-lint/pkg/lint.(*Runner).runWorkers
/home/travis/gopath/src/github.com/golangci/golangci-lint/pkg/lint/runner.go:211 +0x2d9
goroutine 24966 [running]:
goroutine running on other thread; stack unavailable
created by github.com/golangci/golangci-lint/pkg/lint.(*Runner).runWorkers
/home/travis/gopath/src/github.com/golangci/golangci-lint/pkg/lint/runner.go:197 +0x1ab
I've been seeing the same symptoms since upgrading to golangci-lint v1.16.0 on our repositories at Pulumi:
We found that disabling the staticcheck linter fixed this in CI temporarily: https://github.com/pulumi/pulumi-aws/commit/8a24c9afc2ce5380b3433b18f817eb1348f52de7
I've also found this with megacheck on some repositories.
Same issue for our repository in v1.16.0, out of memory with 32Go of memory. No problem in v1.15.0.
Hi, thank you for the issue!
I'll investigate. As a workaround, you can tweak GOGC
Thanks @jirfag! I'll test this in our environment this week.
If it helps anyone: I was on golangci 1.12 and had severe memory/performance regressions after updating to Go 1.12. Upgrading to golangci 1.16.0 fixed it for me.
Same problem with go 1.12 and golanci-lint 1.17.1.
1.15.0 => ~3Go RAM used
1.16.0 => 22Go
1.17.1 => 22Go
For the same returned warnings and errors. Tested in a repository with ~4000 Go files.
+1 to this issue.
we also had this Issue in minikube: see logs at: https://travis-ci.org/kubernetes/minikube/jobs/562528986
@jirfag it worth noting that in minikube we are already using GOGC = 10 but we still get the issue !
here is from our current Makefile
GOLINT_GOGC ?= 10
GOGC=${GOLINT_GOGC} ./out/linters/golangci-lint run \
--concurrency ${GOLINT_JOBS} \
--deadline 4m \
--build-tags "${MINIKUBE_INTEGRATION_BUILD_TAGS}" \
--enable goimports,gocritic,golint,gocyclo,interfacer,misspell,nakedret,stylecheck,unconvert,unparam \
--exclude 'variable on range scope.*in function literal|ifElseChain' \
./...
We also have an issue with memory
For those still hitting this, we had the same issue on containerd and found that GOGC=75 and pinning to 1.18 right now works on travis-ci and appveyor.
hi, thank you!
but let's continue in #337: it's difficult to manage repository when there are many duplicates