go-ycsb
go-ycsb copied to clipboard
data race
reproduce:
-
go build -race cmd/go-ycsb/* -
echo 'threadcount=50' >> workloads/workloadb -
./client load basic -P workloads/workloadb -
./client run basic -P workloads/workloadb
this is the ouput:
./client run basic -P workloads/workloadb
***************** properties *****************
"updateproportion"="0.05"
"recordcount"="1000"
"workload"="core"
"insertproportion"="0"
"requestdistribution"="uniform"
"dotransactions"="true"
"operationcount"="1000"
"readallfields"="true"
"readproportion"="0.95"
"threadcount"="50"
"scanproportion"="0"
**********************************************
==================
WARNING: DATA RACE
Write at 0x00c00026ff60 by goroutine 64:
github.com/pingcap/go-ycsb/pkg/generator.(*Discrete).Next()
/root/workspace/go/src/github.com/pingcap/go-ycsb/pkg/generator/number.go:40 +0x1c3
github.com/pingcap/go-ycsb/pkg/workload.(*core).DoTransaction()
/root/workspace/go/src/github.com/pingcap/go-ycsb/pkg/workload/core.go:358 +0xc1
github.com/pingcap/go-ycsb/pkg/client.(*worker).run()
/root/workspace/go/src/github.com/pingcap/go-ycsb/pkg/client/client.go:126 +0x4d1
github.com/pingcap/go-ycsb/pkg/client.(*Client).Run.func2()
/root/workspace/go/src/github.com/pingcap/go-ycsb/pkg/client/client.go:212 +0x253
Previous write at 0x00c00026ff60 by goroutine 63:
github.com/pingcap/go-ycsb/pkg/generator.(*Discrete).Next()
/root/workspace/go/src/github.com/pingcap/go-ycsb/pkg/generator/number.go:40 +0x1c3
github.com/pingcap/go-ycsb/pkg/workload.(*core).DoTransaction()
/root/workspace/go/src/github.com/pingcap/go-ycsb/pkg/workload/core.go:358 +0xc1
github.com/pingcap/go-ycsb/pkg/client.(*worker).run()
/root/workspace/go/src/github.com/pingcap/go-ycsb/pkg/client/client.go:126 +0x4d1
github.com/pingcap/go-ycsb/pkg/client.(*Client).Run.func2()
/root/workspace/go/src/github.com/pingcap/go-ycsb/pkg/client/client.go:212 +0x253
Goroutine 64 (running) created at:
github.com/pingcap/go-ycsb/pkg/client.(*Client).Run()
/root/workspace/go/src/github.com/pingcap/go-ycsb/pkg/client/client.go:206 +0x1fb
main.runClientCommandFunc()
/root/workspace/go/src/github.com/pingcap/go-ycsb/cmd/go-ycsb/client.go:55 +0x511
main.runTransCommandFunc()
/root/workspace/go/src/github.com/pingcap/go-ycsb/cmd/go-ycsb/client.go:66 +0x5b
github.com/spf13/cobra.(*Command).execute()
/root/workspace/go/pkg/mod/github.com/spf13/[email protected]/command.go:766 +0x8e0
github.com/spf13/cobra.(*Command).ExecuteC()
/root/workspace/go/pkg/mod/github.com/spf13/[email protected]/command.go:852 +0x416
main.main()
/root/workspace/go/pkg/mod/github.com/spf13/[email protected]/command.go:800 +0x37f
Goroutine 63 (running) created at:
github.com/pingcap/go-ycsb/pkg/client.(*Client).Run()
/root/workspace/go/src/github.com/pingcap/go-ycsb/pkg/client/client.go:206 +0x1fb
main.runClientCommandFunc()
/root/workspace/go/src/github.com/pingcap/go-ycsb/cmd/go-ycsb/client.go:55 +0x511
main.runTransCommandFunc()
/root/workspace/go/src/github.com/pingcap/go-ycsb/cmd/go-ycsb/client.go:66 +0x5b
github.com/spf13/cobra.(*Command).execute()
/root/workspace/go/pkg/mod/github.com/spf13/[email protected]/command.go:766 +0x8e0
github.com/spf13/cobra.(*Command).ExecuteC()
/root/workspace/go/pkg/mod/github.com/spf13/[email protected]/command.go:852 +0x416
main.main()
/root/workspace/go/pkg/mod/github.com/spf13/[email protected]/command.go:800 +0x37f
==================
==================
WARNING: DATA RACE
Write at 0x00c0001fc180 by goroutine 64:
github.com/pingcap/go-ycsb/pkg/generator.(*Uniform).Next()
/root/workspace/go/src/github.com/pingcap/go-ycsb/pkg/generator/number.go:40 +0x97
github.com/pingcap/go-ycsb/pkg/workload.(*core).nextKeyNum()
/root/workspace/go/src/github.com/pingcap/go-ycsb/pkg/workload/core.go:408 +0x157
github.com/pingcap/go-ycsb/pkg/workload.(*core).doTransactionUpdate()
/root/workspace/go/src/github.com/pingcap/go-ycsb/pkg/workload/core.go:513 +0x68
github.com/pingcap/go-ycsb/pkg/workload.(*core).DoTransaction()
/root/workspace/go/src/github.com/pingcap/go-ycsb/pkg/workload/core.go:363 +0x1ad
github.com/pingcap/go-ycsb/pkg/client.(*worker).run()
/root/workspace/go/src/github.com/pingcap/go-ycsb/pkg/client/client.go:126 +0x4d1
github.com/pingcap/go-ycsb/pkg/client.(*Client).Run.func2()
/root/workspace/go/src/github.com/pingcap/go-ycsb/pkg/client/client.go:212 +0x253
Previous write at 0x00c0001fc180 by goroutine 63:
github.com/pingcap/go-ycsb/pkg/generator.(*Uniform).Next()
/root/workspace/go/src/github.com/pingcap/go-ycsb/pkg/generator/number.go:40 +0x97
github.com/pingcap/go-ycsb/pkg/workload.(*core).nextKeyNum()
/root/workspace/go/src/github.com/pingcap/go-ycsb/pkg/workload/core.go:408 +0x157
github.com/pingcap/go-ycsb/pkg/workload.(*core).doTransactionUpdate()
/root/workspace/go/src/github.com/pingcap/go-ycsb/pkg/workload/core.go:513 +0x68
github.com/pingcap/go-ycsb/pkg/workload.(*core).DoTransaction()
/root/workspace/go/src/github.com/pingcap/go-ycsb/pkg/workload/core.go:363 +0x1ad
github.com/pingcap/go-ycsb/pkg/client.(*worker).run()
/root/workspace/go/src/github.com/pingcap/go-ycsb/pkg/client/client.go:126 +0x4d1
github.com/pingcap/go-ycsb/pkg/client.(*Client).Run.func2()
/root/workspace/go/src/github.com/pingcap/go-ycsb/pkg/client/client.go:212 +0x253
Goroutine 64 (running) created at:
github.com/pingcap/go-ycsb/pkg/client.(*Client).Run()
/root/workspace/go/src/github.com/pingcap/go-ycsb/pkg/client/client.go:206 +0x1fb
main.runClientCommandFunc()
/root/workspace/go/src/github.com/pingcap/go-ycsb/cmd/go-ycsb/client.go:55 +0x511
main.runTransCommandFunc()
/root/workspace/go/src/github.com/pingcap/go-ycsb/cmd/go-ycsb/client.go:66 +0x5b
github.com/spf13/cobra.(*Command).execute()
/root/workspace/go/pkg/mod/github.com/spf13/[email protected]/command.go:766 +0x8e0
github.com/spf13/cobra.(*Command).ExecuteC()
/root/workspace/go/pkg/mod/github.com/spf13/[email protected]/command.go:852 +0x416
main.main()
/root/workspace/go/pkg/mod/github.com/spf13/[email protected]/command.go:800 +0x37f
Goroutine 63 (running) created at:
github.com/pingcap/go-ycsb/pkg/client.(*Client).Run()
/root/workspace/go/src/github.com/pingcap/go-ycsb/pkg/client/client.go:206 +0x1fb
main.runClientCommandFunc()
/root/workspace/go/src/github.com/pingcap/go-ycsb/cmd/go-ycsb/client.go:55 +0x511
main.runTransCommandFunc()
/root/workspace/go/src/github.com/pingcap/go-ycsb/cmd/go-ycsb/client.go:66 +0x5b
github.com/spf13/cobra.(*Command).execute()
/root/workspace/go/pkg/mod/github.com/spf13/[email protected]/command.go:766 +0x8e0
github.com/spf13/cobra.(*Command).ExecuteC()
/root/workspace/go/pkg/mod/github.com/spf13/[email protected]/command.go:852 +0x416
main.main()
/root/workspace/go/pkg/mod/github.com/spf13/[email protected]/command.go:800 +0x37f
==================
==================
WARNING: DATA RACE
Write at 0x00c0001fc180 by goroutine 65:
github.com/pingcap/go-ycsb/pkg/generator.(*Uniform).Next()
/root/workspace/go/src/github.com/pingcap/go-ycsb/pkg/generator/number.go:40 +0x97
github.com/pingcap/go-ycsb/pkg/workload.(*core).nextKeyNum()
/root/workspace/go/src/github.com/pingcap/go-ycsb/pkg/workload/core.go:408 +0x157
github.com/pingcap/go-ycsb/pkg/workload.(*core).doTransactionUpdate()
/root/workspace/go/src/github.com/pingcap/go-ycsb/pkg/workload/core.go:513 +0x68
github.com/pingcap/go-ycsb/pkg/workload.(*core).DoTransaction()
/root/workspace/go/src/github.com/pingcap/go-ycsb/pkg/workload/core.go:363 +0x1ad
github.com/pingcap/go-ycsb/pkg/client.(*worker).run()
/root/workspace/go/src/github.com/pingcap/go-ycsb/pkg/client/client.go:126 +0x4d1
github.com/pingcap/go-ycsb/pkg/client.(*Client).Run.func2()
/root/workspace/go/src/github.com/pingcap/go-ycsb/pkg/client/client.go:212 +0x253
Previous write at 0x00c0001fc180 by goroutine 63:
github.com/pingcap/go-ycsb/pkg/generator.(*Uniform).Next()
/root/workspace/go/src/github.com/pingcap/go-ycsb/pkg/generator/number.go:40 +0x97
github.com/pingcap/go-ycsb/pkg/workload.(*core).nextKeyNum()
/root/workspace/go/src/github.com/pingcap/go-ycsb/pkg/workload/core.go:408 +0x157
github.com/pingcap/go-ycsb/pkg/workload.(*core).doTransactionRead()
/root/workspace/go/src/github.com/pingcap/go-ycsb/pkg/workload/core.go:416 +0x7b
github.com/pingcap/go-ycsb/pkg/workload.(*core).DoTransaction()
/root/workspace/go/src/github.com/pingcap/go-ycsb/pkg/workload/core.go:361 +0x230
github.com/pingcap/go-ycsb/pkg/client.(*worker).run()
/root/workspace/go/src/github.com/pingcap/go-ycsb/pkg/client/client.go:126 +0x4d1
github.com/pingcap/go-ycsb/pkg/client.(*Client).Run.func2()
/root/workspace/go/src/github.com/pingcap/go-ycsb/pkg/client/client.go:212 +0x253
Goroutine 65 (running) created at:
github.com/pingcap/go-ycsb/pkg/client.(*Client).Run()
/root/workspace/go/src/github.com/pingcap/go-ycsb/pkg/client/client.go:206 +0x1fb
main.runClientCommandFunc()
/root/workspace/go/src/github.com/pingcap/go-ycsb/cmd/go-ycsb/client.go:55 +0x511
main.runTransCommandFunc()
/root/workspace/go/src/github.com/pingcap/go-ycsb/cmd/go-ycsb/client.go:66 +0x5b
github.com/spf13/cobra.(*Command).execute()
/root/workspace/go/pkg/mod/github.com/spf13/[email protected]/command.go:766 +0x8e0
github.com/spf13/cobra.(*Command).ExecuteC()
/root/workspace/go/pkg/mod/github.com/spf13/[email protected]/command.go:852 +0x416
main.main()
/root/workspace/go/pkg/mod/github.com/spf13/[email protected]/command.go:800 +0x37f
Goroutine 63 (running) created at:
github.com/pingcap/go-ycsb/pkg/client.(*Client).Run()
/root/workspace/go/src/github.com/pingcap/go-ycsb/pkg/client/client.go:206 +0x1fb
main.runClientCommandFunc()
/root/workspace/go/src/github.com/pingcap/go-ycsb/cmd/go-ycsb/client.go:55 +0x511
main.runTransCommandFunc()
/root/workspace/go/src/github.com/pingcap/go-ycsb/cmd/go-ycsb/client.go:66 +0x5b
github.com/spf13/cobra.(*Command).execute()
/root/workspace/go/pkg/mod/github.com/spf13/[email protected]/command.go:766 +0x8e0
github.com/spf13/cobra.(*Command).ExecuteC()
/root/workspace/go/pkg/mod/github.com/spf13/[email protected]/command.go:852 +0x416
main.main()
/root/workspace/go/pkg/mod/github.com/spf13/[email protected]/command.go:800 +0x37f
==================
==================
WARNING: DATA RACE
Write at 0x00c0001fc1a0 by goroutine 64:
github.com/pingcap/go-ycsb/pkg/generator.(*Uniform).Next()
/root/workspace/go/src/github.com/pingcap/go-ycsb/pkg/generator/number.go:40 +0x97
github.com/pingcap/go-ycsb/pkg/workload.(*core).buildSingleValue()
/root/workspace/go/src/github.com/pingcap/go-ycsb/pkg/workload/core.go:171 +0xae
github.com/pingcap/go-ycsb/pkg/workload.(*core).doTransactionUpdate()
/root/workspace/go/src/github.com/pingcap/go-ycsb/pkg/workload/core.go:520 +0x24d
github.com/pingcap/go-ycsb/pkg/workload.(*core).DoTransaction()
/root/workspace/go/src/github.com/pingcap/go-ycsb/pkg/workload/core.go:363 +0x1ad
github.com/pingcap/go-ycsb/pkg/client.(*worker).run()
/root/workspace/go/src/github.com/pingcap/go-ycsb/pkg/client/client.go:126 +0x4d1
github.com/pingcap/go-ycsb/pkg/client.(*Client).Run.func2()
/root/workspace/go/src/github.com/pingcap/go-ycsb/pkg/client/client.go:212 +0x253
Previous write at 0x00c0001fc1a0 by goroutine 63:
github.com/pingcap/go-ycsb/pkg/generator.(*Uniform).Next()
/root/workspace/go/src/github.com/pingcap/go-ycsb/pkg/generator/number.go:40 +0x97
github.com/pingcap/go-ycsb/pkg/workload.(*core).buildSingleValue()
/root/workspace/go/src/github.com/pingcap/go-ycsb/pkg/workload/core.go:171 +0xae
github.com/pingcap/go-ycsb/pkg/workload.(*core).doTransactionUpdate()
/root/workspace/go/src/github.com/pingcap/go-ycsb/pkg/workload/core.go:520 +0x24d
github.com/pingcap/go-ycsb/pkg/workload.(*core).DoTransaction()
/root/workspace/go/src/github.com/pingcap/go-ycsb/pkg/workload/core.go:363 +0x1ad
github.com/pingcap/go-ycsb/pkg/client.(*worker).run()
/root/workspace/go/src/github.com/pingcap/go-ycsb/pkg/client/client.go:126 +0x4d1
github.com/pingcap/go-ycsb/pkg/client.(*Client).Run.func2()
/root/workspace/go/src/github.com/pingcap/go-ycsb/pkg/client/client.go:212 +0x253
Goroutine 64 (running) created at:
github.com/pingcap/go-ycsb/pkg/client.(*Client).Run()
/root/workspace/go/src/github.com/pingcap/go-ycsb/pkg/client/client.go:206 +0x1fb
main.runClientCommandFunc()
/root/workspace/go/src/github.com/pingcap/go-ycsb/cmd/go-ycsb/client.go:55 +0x511
main.runTransCommandFunc()
/root/workspace/go/src/github.com/pingcap/go-ycsb/cmd/go-ycsb/client.go:66 +0x5b
github.com/spf13/cobra.(*Command).execute()
/root/workspace/go/pkg/mod/github.com/spf13/[email protected]/command.go:766 +0x8e0
github.com/spf13/cobra.(*Command).ExecuteC()
/root/workspace/go/pkg/mod/github.com/spf13/[email protected]/command.go:852 +0x416
main.main()
/root/workspace/go/pkg/mod/github.com/spf13/[email protected]/command.go:800 +0x37f
Goroutine 63 (running) created at:
github.com/pingcap/go-ycsb/pkg/client.(*Client).Run()
/root/workspace/go/src/github.com/pingcap/go-ycsb/pkg/client/client.go:206 +0x1fb
main.runClientCommandFunc()
/root/workspace/go/src/github.com/pingcap/go-ycsb/cmd/go-ycsb/client.go:55 +0x511
main.runTransCommandFunc()
/root/workspace/go/src/github.com/pingcap/go-ycsb/cmd/go-ycsb/client.go:66 +0x5b
github.com/spf13/cobra.(*Command).execute()
/root/workspace/go/pkg/mod/github.com/spf13/[email protected]/command.go:766 +0x8e0
github.com/spf13/cobra.(*Command).ExecuteC()
/root/workspace/go/pkg/mod/github.com/spf13/[email protected]/command.go:852 +0x416
main.main()
/root/workspace/go/pkg/mod/github.com/spf13/[email protected]/command.go:800 +0x37f
==================
==================
WARNING: DATA RACE
Write at 0x00c0001fc1a0 by goroutine 65:
github.com/pingcap/go-ycsb/pkg/generator.(*Uniform).Next()
/root/workspace/go/src/github.com/pingcap/go-ycsb/pkg/generator/number.go:40 +0x97
github.com/pingcap/go-ycsb/pkg/workload.(*core).buildSingleValue()
/root/workspace/go/src/github.com/pingcap/go-ycsb/pkg/workload/core.go:171 +0xae
github.com/pingcap/go-ycsb/pkg/workload.(*core).doTransactionUpdate()
/root/workspace/go/src/github.com/pingcap/go-ycsb/pkg/workload/core.go:520 +0x24d
github.com/pingcap/go-ycsb/pkg/workload.(*core).DoTransaction()
/root/workspace/go/src/github.com/pingcap/go-ycsb/pkg/workload/core.go:363 +0x1ad
github.com/pingcap/go-ycsb/pkg/client.(*worker).run()
/root/workspace/go/src/github.com/pingcap/go-ycsb/pkg/client/client.go:126 +0x4d1
github.com/pingcap/go-ycsb/pkg/client.(*Client).Run.func2()
/root/workspace/go/src/github.com/pingcap/go-ycsb/pkg/client/client.go:212 +0x253
Previous write at 0x00c0001fc1a0 by goroutine 63:
github.com/pingcap/go-ycsb/pkg/generator.(*Uniform).Next()
/root/workspace/go/src/github.com/pingcap/go-ycsb/pkg/generator/number.go:40 +0x97
github.com/pingcap/go-ycsb/pkg/workload.(*core).buildSingleValue()
/root/workspace/go/src/github.com/pingcap/go-ycsb/pkg/workload/core.go:171 +0xae
github.com/pingcap/go-ycsb/pkg/workload.(*core).doTransactionUpdate()
/root/workspace/go/src/github.com/pingcap/go-ycsb/pkg/workload/core.go:520 +0x24d
github.com/pingcap/go-ycsb/pkg/workload.(*core).DoTransaction()
/root/workspace/go/src/github.com/pingcap/go-ycsb/pkg/workload/core.go:363 +0x1ad
github.com/pingcap/go-ycsb/pkg/client.(*worker).run()
/root/workspace/go/src/github.com/pingcap/go-ycsb/pkg/client/client.go:126 +0x4d1
github.com/pingcap/go-ycsb/pkg/client.(*Client).Run.func2()
/root/workspace/go/src/github.com/pingcap/go-ycsb/pkg/client/client.go:212 +0x253
Goroutine 65 (running) created at:
github.com/pingcap/go-ycsb/pkg/client.(*Client).Run()
/root/workspace/go/src/github.com/pingcap/go-ycsb/pkg/client/client.go:206 +0x1fb
main.runClientCommandFunc()
/root/workspace/go/src/github.com/pingcap/go-ycsb/cmd/go-ycsb/client.go:55 +0x511
main.runTransCommandFunc()
/root/workspace/go/src/github.com/pingcap/go-ycsb/cmd/go-ycsb/client.go:66 +0x5b
github.com/spf13/cobra.(*Command).execute()
/root/workspace/go/pkg/mod/github.com/spf13/[email protected]/command.go:766 +0x8e0
github.com/spf13/cobra.(*Command).ExecuteC()
/root/workspace/go/pkg/mod/github.com/spf13/[email protected]/command.go:852 +0x416
main.main()
/root/workspace/go/pkg/mod/github.com/spf13/[email protected]/command.go:800 +0x37f
Goroutine 63 (finished) created at:
github.com/pingcap/go-ycsb/pkg/client.(*Client).Run()
/root/workspace/go/src/github.com/pingcap/go-ycsb/pkg/client/client.go:206 +0x1fb
main.runClientCommandFunc()
/root/workspace/go/src/github.com/pingcap/go-ycsb/cmd/go-ycsb/client.go:55 +0x511
main.runTransCommandFunc()
/root/workspace/go/src/github.com/pingcap/go-ycsb/cmd/go-ycsb/client.go:66 +0x5b
github.com/spf13/cobra.(*Command).execute()
/root/workspace/go/pkg/mod/github.com/spf13/[email protected]/command.go:766 +0x8e0
github.com/spf13/cobra.(*Command).ExecuteC()
/root/workspace/go/pkg/mod/github.com/spf13/[email protected]/command.go:852 +0x416
main.main()
/root/workspace/go/pkg/mod/github.com/spf13/[email protected]/command.go:800 +0x37f
==================
Run finished, takes 24.978378ms
READ - Takes(s): 0.0, Count: 952, OPS: 35603.8, Avg(us): 0, Min(us): 0, Max(us): 40, 99th(us): 1000, 99.9th(us): 1000, 99.99th(us): 1000
UPDATE - Takes(s): 0.0, Count: 48, OPS: 1633.8, Avg(us): 1, Min(us): 0, Max(us): 3, 99th(us): 1000, 99.9th(us): 1000, 99.99th(us): 1000
Found 5 data race(s)
got. @nullne could you please help fix it? thank you very much