gen icon indicating copy to clipboard operation
gen copied to clipboard

WARNING: DATA RACE detected with "go run --race"

Open chase-isabelle-roostify opened this issue 3 years ago • 0 comments

GORM Playground Link

no link as this is not something i found while coding

https://github.com/go-gorm/playground/pull/1

Description

go run --race tools/gentool/gentool.go \
			--db postgres \
			--dsn '.......' \
			--tables 'users,roles' \
			--outPath=query
2022/08/02 13:51:19 got 96 columns from table <users>
2022/08/02 13:51:19 got 6 columns from table <roles>
2022/08/02 13:51:19 Start generating code.
==================
WARNING: DATA RACE
Write at 0x00c0001c7a70 by goroutine 14:
  gorm.io/gen.(*Generator).generateModelFile.func1()
      /workdir/generator.go:478 +0x130
  gorm.io/gen.(*Generator).generateModelFile.func2()
      /workdir/generator.go:500 +0x48

Previous write at 0x00c0001c7a70 by goroutine 15:
  [failed to restore the stack]

Goroutine 14 (running) created at:
  gorm.io/gen.(*Generator).generateModelFile()
      /workdir/generator.go:474 +0x5d4
  gorm.io/gen.(*Generator).Execute()
      /workdir/generator.go:253 +0x58
  main.main()
      /workdir/tools/gentool/gentool.go:207 +0x344

Goroutine 15 (running) created at:
  gorm.io/gen.(*Generator).generateModelFile()
      /workdir/generator.go:474 +0x5d4
  gorm.io/gen.(*Generator).Execute()
      /workdir/generator.go:253 +0x58
  main.main()
      /workdir/tools/gentool/gentool.go:207 +0x344
==================
2022/08/02 13:51:19 generate model file(table <roles> -> {model.Role}): /workdir/model/roles.gen.go
2022/08/02 13:51:19 generate model file(table <users> -> {model.User}): /workdir/model/users.gen.go
==================
WARNING: DATA RACE
Write at 0x00c0001e48e0 by goroutine 25:
  gorm.io/gen.importPkgS.Add()
      /workdir/import.go:52 +0x3fc
  gorm.io/gen.(*Generator).generateSingleQueryFile()
      /workdir/generator.go:380 +0x1d8
  gorm.io/gen.(*Generator).generateQueryFile.func1()
      /workdir/generator.go:291 +0xa0
  gorm.io/gen.(*Generator).generateQueryFile.func2()
      /workdir/generator.go:302 +0x48

Previous write at 0x00c0001e48e0 by goroutine 26:
  gorm.io/gen.importPkgS.Add()
      /workdir/import.go:52 +0x3fc
  gorm.io/gen.(*Generator).generateSingleQueryFile()
      /workdir/generator.go:380 +0x1d8
  gorm.io/gen.(*Generator).generateQueryFile.func1()
      /workdir/generator.go:291 +0xa0
  gorm.io/gen.(*Generator).generateQueryFile.func2()
      /workdir/generator.go:302 +0x48

Goroutine 25 (running) created at:
  gorm.io/gen.(*Generator).generateQueryFile()
      /workdir/generator.go:289 +0x37c
  gorm.io/gen.(*Generator).Execute()
      /workdir/generator.go:258 +0x64
  main.main()
      /workdir/tools/gentool/gentool.go:207 +0x344

Goroutine 26 (running) created at:
  gorm.io/gen.(*Generator).generateQueryFile()
      /workdir/generator.go:289 +0x37c
  gorm.io/gen.(*Generator).Execute()
      /workdir/generator.go:258 +0x64
  main.main()
      /workdir/tools/gentool/gentool.go:207 +0x344
==================
==================
WARNING: DATA RACE
Write at 0x00c0001e48f0 by goroutine 25:
  gorm.io/gen.importPkgS.Add()
      /workdir/import.go:55 +0xfc
  gorm.io/gen.(*Generator).generateSingleQueryFile()
      /workdir/generator.go:380 +0x1d8
  gorm.io/gen.(*Generator).generateQueryFile.func1()
      /workdir/generator.go:291 +0xa0
  gorm.io/gen.(*Generator).generateQueryFile.func2()
      /workdir/generator.go:302 +0x48

Previous write at 0x00c0001e48f0 by goroutine 26:
  gorm.io/gen.importPkgS.Add()
      /workdir/import.go:55 +0xfc
  gorm.io/gen.(*Generator).generateSingleQueryFile()
      /workdir/generator.go:380 +0x1d8
  gorm.io/gen.(*Generator).generateQueryFile.func1()
      /workdir/generator.go:291 +0xa0
  gorm.io/gen.(*Generator).generateQueryFile.func2()
      /workdir/generator.go:302 +0x48

Goroutine 25 (running) created at:
  gorm.io/gen.(*Generator).generateQueryFile()
      /workdir/generator.go:289 +0x37c
  gorm.io/gen.(*Generator).Execute()
      /workdir/generator.go:258 +0x64
  main.main()
      /workdir/tools/gentool/gentool.go:207 +0x344

Goroutine 26 (running) created at:
  gorm.io/gen.(*Generator).generateQueryFile()
      /workdir/generator.go:289 +0x37c
  gorm.io/gen.(*Generator).Execute()
      /workdir/generator.go:258 +0x64
  main.main()
      /workdir/tools/gentool/gentool.go:207 +0x344
==================
2022/08/02 13:51:19 generate query file: /workdir/query/roles.gen.go
2022/08/02 13:51:19 generate query file: /workdir/query/users.gen.go
==================
WARNING: DATA RACE
Write at 0x00c00044e600 by goroutine 25:
  gorm.io/gen.(*Generator).generateQueryFile.func1()
      /workdir/generator.go:291 +0xb8
  gorm.io/gen.(*Generator).generateQueryFile.func2()
      /workdir/generator.go:302 +0x48

Previous write at 0x00c00044e600 by goroutine 26:
  gorm.io/gen.(*Generator).generateQueryFile.func1()
      /workdir/generator.go:291 +0xb8
  gorm.io/gen.(*Generator).generateQueryFile.func2()
      /workdir/generator.go:302 +0x48

Goroutine 25 (running) created at:
  gorm.io/gen.(*Generator).generateQueryFile()
      /workdir/generator.go:289 +0x37c
  gorm.io/gen.(*Generator).Execute()
      /workdir/generator.go:258 +0x64
  main.main()
      /workdir/tools/gentool/gentool.go:207 +0x344

Goroutine 26 (finished) created at:
  gorm.io/gen.(*Generator).generateQueryFile()
      /workdir/generator.go:289 +0x37c
  gorm.io/gen.(*Generator).Execute()
      /workdir/generator.go:258 +0x64
  main.main()
      /workdir/tools/gentool/gentool.go:207 +0x344
==================
2022/08/02 13:51:19 generate query file: /workdir/query/gen.go
2022/08/02 13:51:19 Generate code done.
Found 4 data race(s)
exit status 66

chase-isabelle-roostify avatar Aug 02 '22 13:08 chase-isabelle-roostify