cockroachdb / cockroachdb/cockroach

kv/kvclient/kvcoord: TestTxnUpdateFromTxnRecordDoesNotOverwriteFields failed

Open
#175,581 3 comments 0 reactions 0 assignees View on GitHub
branch-master C-test-failure O-robot P-2 T-kv X-duplicate
Dominant language
Go
Stars
32.5k
Forks
4.1k
PR merge metrics
PR metrics pending

Description

kv/kvclient/kvcoord.TestTxnUpdateFromTxnRecordDoesNotOverwriteFields [failed](https://mesolite.cluster.engflow.com/invocations/default/9dd0ee54-61e2-4174-8106-7fed7b14e121?testReportRun=1&testReportShard=4&testReportAttempt=1#targets-Ly9wa2cva3Yva3ZjbGllbnQva3Zjb29yZDprdmNvb3JkX3Rlc3Q=) on master @ [cb2513a889b02173df65f74ad0699816493b9f8a](https://github.com/cockroachdb/cockroach/commits/cb2513a889b02173df65f74ad0699816493b9f8a):

Data race:

```
WARNING: DATA RACE
Write at 0x00c008a0a280 by goroutine 11293:
github.com/cockroachdb/cockroach/pkg/kv/kvpb.(*RequestHeader).SetHeader()
pkg/kv/kvpb/api.go:719 +0x9a
github.com/cockroachdb/cockroach/pkg/kv/kvpb.(*HeartbeatTxnRequest).SetHeader()
:1 +0x12
github.com/cockroachdb/cockroach/pkg/kv/kvclient/kvcoord.(*txnSeqNumAllocator).SendLocked()
pkg/kv/kvclient/kvcoord/txn_interceptor_seq_num_allocator.go:121 +0x14a
github.com/cockroachdb/cockroach/pkg/kv/kvclient/kvcoord.(*txnHeartbeater).SendLocked()
pkg/kv/kvclient/kvcoord/txn_interceptor_heartbeater.go:267 +0x7a2
github.com/cockroachdb/cockroach/pkg/kv/kvclient/kvcoord.(*TxnCoordSender).Send()
pkg/kv/kvclient/kvcoord/txn_coord_sender.go:574 +0xd74
github.com/cockroachdb/cockroach/pkg/kv.(*DB).sendUsingSender()
pkg/kv/db.go:1277 +0x17d
github.com/cockroachdb/cockroach/pkg/kv.(*Txn).Send()
pkg/kv/txn.go:1471 +0x6c5
github.com/cockroachdb/cockroach/pkg/kv.(*Txn).Send-fm()
:1 +0x48
github.com/cockroachdb/cockroach/pkg/kv.sendAndFill()
pkg/kv/db.go:1032 +0x2b9
github.com/cockroachdb/cockroach/pkg/kv.(*Txn).Run()
pkg/kv/txn.go:936 +0xa7
github.com/cockroachdb/cockroach/pkg/kv/kvclient/kvcoord_test.TestTxnUpdateFromTxnRecordDoesNotOverwriteFields()
pkg/kv/kvclient/kvcoord/txn_test.go:1475 +0x867
github.com/cockroachdb/cockroach/pkg/kv.(*Txn).Run()
pkg/kv/txn.go:936 +0xa7
github.com/cockroachdb/cockroach/pkg/kv/kvclient/kvcoord_test.TestTxnUpdateFromTxnRecordDoesNotOverwriteFields()
pkg/kv/kvclient/kvcoord/txn_test.go:1465 +0x687
github.com/cockroachdb/cockroach/pkg/server.(*SQLServer).preStart()
pkg/server/server_sql.go:1656 +0xbed
github.com/cockroachdb/cockroach/pkg/server.(*topLevelServer).PreStart()
pkg/server/server.go:2367 +0x6bca
github.com/cockroachdb/cockroach/pkg/util/metric.(*Registry).Each()
pkg/util/metric/registry.go:265 +0xf7
github.com/cockroachdb/cockroach/pkg/util/metric.(*Registry).Each()
pkg/util/metric/registry.go:265 +0xf7
github.com/cockroachdb/cockroach/pkg/util/metric.(*Registry).Each()
pkg/util/metric/registry.go:265 +0xf7
github.com/cockroachdb/cockroach/pkg/util/metric.(*Registry).Each()
pkg/util/metric/registry.go:265 +0xf7
github.com/cockroachdb/cockroach/pkg/util/metric.(*Registry).Each()
pkg/util/metric/registry.go:265 +0xf7
github.com/cockroachdb/cockroach/pkg/util/metric.(*Registry).Each()
pkg/util/metric/registry.go:265 +0xf7
github.com/cockroachdb/cockroach/pkg/util/metric.(*Registry).Each()
pkg/util/metric/registry.go:265 +0xf7
github.com/cockroachdb/cockroach/pkg/util/metric.(*Registry).Each()
pkg/util/metric/registry.go:265 +0xf7
github.com/cockroachdb/cockroach/pkg/util/metric.(*Registry).Each()
pkg/util/metric/registry.go:265 +0xf7
github.com/cockroachdb/cockroach/pkg/util/metric.(*Registry).Each()
pkg/util/metric/registry.go:265 +0xf7
github.com/cockroachdb/cockroach/pkg/util/metric.(*Registry).Each()
pkg/util/metric/registry.go:265 +0xf7
github.com/cockroachdb/cockroach/pkg/util/metric.(*Registry).Each()
pkg/util/metric/registry.go:265 +0xf7
github.com/cockroachdb/cockroach/pkg/util/metric.(*Registry).Each()
pkg/util/metric/registry.go:265 +0xf7
github.com/cockroachdb/cockroach/pkg/util/metric.(*Registry).Each()
pkg/util/metric/registry.go:265 +0xf7
github.com/cockroachdb/cockroach/pkg/util/metric.(*Registry).Each()
pkg/util/metric/registry.go:265 +0xf7
github.com/cockroachdb/cockroach/pkg/util/metric.(*Registry).Each()
pkg/util/metric/registry.go:265 +0xf7
github.com/cockroachdb/cockroach/pkg/util/metric.(*Registry).Each()
pkg/util/metric/registry.go:265 +0xf7
github.com/cockroachdb/cockroach/pkg/util/metric.(*Registry).Each()
pkg/util/metric/registry.go:265 +0xf7
github.com/cockroachdb/cockroach/pkg/util/metric.(*Registry).Each()
pkg/util/metric/registry.go:265 +0xf7
github.com/cockroachdb/cockroach/pkg/util/metric.(*Registry).Each()
pkg/util/metric/registry.go:265 +0xf7
github.com/cockroachdb/cockroach/pkg/util/metric.(*Registry).Each()
pkg/util/metric/registry.go:265 +0xf7
github.com/cockroachdb/cockroach/pkg/util/metric.(*Registry).Each()
pkg/util/metric/registry.go:265 +0xf7
github.com/cockroachdb/cockroach/pkg/util/metric.(*Registry).Each()
pkg/util/metric/registry.go:265 +0xf7
github.com/cockroachdb/cockroach/pkg/util/metric.(*Registry).Each()
pkg/util/metric/registry.go:265 +0xf7
github.com/cockroachdb/cockroach/pkg/util/metric.(*Registry).Each()
pkg/util/metric/registry.go:265 +0xf7
github.com/cockroachdb/cockroach/pkg/util/metric.(*Registry).Each()
pkg/util/metric/registry.go:265 +0xf7
github.com/cockroachdb/cockroach/pkg/util/metric.(*Registry).Each()
pkg/util/metric/registry.go:265 +0xf7
github.com/cockroachdb/cockroach/pkg/util/metric.(*Registry).Each()
pkg/util/metric/registry.go:265 +0xf7
github.com/cockroachdb/cockroach/pkg/util/metric.(*Registry).Each()
pkg/util/metric/registry.go:265 +0xf7
github.com/cockroachdb/cockroach/pkg/util/metric.(*Registry).Each()
pkg/util/metric/registry.go:265 +0xf7
github.com/cockroachdb/cockroach/pkg/util/metric.(*Registry).Each()
pkg/util/metric/registry.go:265 +0xf7
github.com/cockroachdb/cockroach/pkg/util/metric.(*Registry).Each()
pkg/util/metric/registry.go:265 +0xf7
github.com/cockroachdb/cockroach/pkg/server/status.eachRecordableValue()
recorder.go:1086 +0x1192
github.com/cockroachdb/cockroach/pkg/server/status.(*MetricsRecorder).GenerateNodeStatus()
recorder.go:941 +0x1096
github.com/cockroachdb/cockroach/pkg/util/metric.(*Registry).Each()
pkg/util/metric/registry.go:265 +0xf7
github.com/cockroachdb/cockroach/pkg/util/metric.(*Registry).Each()
pkg/util/metric/registry.go:265 +0xf7
github.com/cockroachdb/cockroach/pkg/util/metric.(*Registry).Each()
pkg/util/metric/registry.go:265 +0xf7
github.com/cockroachdb/cockroach/pkg/util/metric.(*Registry).Each()
pkg/util/metric/registry.go:265 +0xf7
github.com/cockroachdb/cockroach/pkg/util/metric.(*Registry).Each()
pkg/util/metric/registry.go:265 +0xf7
github.com/cockroachdb/cockroach/pkg/util/metric.(*Registry).Each()
pkg/util/metric/registry.go:265 +0xf7
github.com/cockroachdb/cockroach/pkg/util/metric.(*Registry).Each()
pkg/util/metric/registry.go:265 +0xf7
github.com/cockroachdb/cockroach/pkg/util/metric.(*Registry).Each()
pkg/util/metric/registry.go:265 +0xf7
github.com/cockroachdb/cockroach/pkg/util/metric.(*Registry).Each()
pkg/util/metric/registry.go:265 +0xf7
github.com/cockroachdb/cockroach/pkg/util/metric.(*Registry).Each()
pkg/util/metric/registry.go:265 +0xf7
github.com/cockroachdb/cockroach/pkg/util/metric.(*Registry).Each()
pkg/util/metric/registry.go:265 +0xf7
github.com/cockroachdb/cockroach/pkg/util/metric.(*Registry).Each()
pkg/util/metric/registry.go:265 +0xf7
github.com/cockroachdb/cockroach/pkg/util/metric.(*Registry).Each()
pkg/util/metric/registry.go:265 +0xf7
github.com/cockroachdb/cockroach/pkg/util/metric.(*Registry).Each()
pkg/util/metric/registry.go:265 +0xf7
github.com/cockroachdb/cockroach/pkg/util/metric.(*Registry).Each()
pkg/util/metric/registry.go:265 +0xf7
github.com/cockroachdb/cockroach/pkg/util/metric.(*Registry).Each()
pkg/util/metric/registry.go:265 +0xf7
github.com/cockroachdb/cockroach/pkg/util/metric.(*Registry).Each()
pkg/util/metric/registry.go:265 +0xf7
github.com/cockroachdb/cockroach/pkg/util/metric.(*Registry).Each()
pkg/util/metric/registry.go:265 +0xf7
github.com/cockroachdb/cockroach/pkg/util/metric.(*Registry).Each()
pkg/util/metric/registry.go:265 +0xf7
github.com/cockroachdb/cockroach/pkg/util/metric.(*Registry).Each()
pkg/util/metric/registry.go:265 +0xf7
github.com/cockroachdb/cockroach/pkg/util/metric.(*Registry).Each()
pkg/util/metric/registry.go:265 +0xf7
github.com/cockroachdb/cockroach/pkg/util/metric.(*Registry).Each()
pkg/util/metric/registry.go:265 +0xf7
github.com/cockroachdb/cockroach/pkg/util/metric.(*Registry).Each()
pkg/util/metric/registry.go:265 +0xf7
github.com/cockroachdb/cockroach/pkg/util/metric.(*Registry).Each()
pkg/util/metric/registry.go:265 +0xf7
github.com/cockroachdb/cockroach/pkg/util/metric.(*Registry).Each()
pkg/util/metric/registry.go:265 +0xf7
github.com/cockroachdb/cockroach/pkg/util/metric.(*Registry).Each()
pkg/util/metric/registry.go:265 +0xf7
github.com/cockroachdb/cockroach/pkg/util/metric.(*Registry).Each()
pkg/util/metric/registry.go:265 +0xf7
github.com/cockroachdb/cockroach/pkg/util/metric.(*Registry).Each()
pkg/util/metric/registry.go:265 +0xf7
github.com/cockroachdb/cockroach/pkg/util/metric.(*Registry).Each()
pkg/util/metric/registry.go:265 +0xf7
github.com/cockroachdb/cockroach/pkg/util/metric.(*Registry).Each()
pkg/util/metric/registry.go:265 +0xf7
github.com/cockroachdb/cockroach/pkg/util/metric.(*Registry).Each()
pkg/util/metric/registry.go:265 +0xf7
github.com/cockroachdb/cockroach/pkg/util/metric.(*Registry).Each()
pkg/util/metric/registry.go:265 +0xf7
github.com/cockroachdb/cockroach/pkg/util/metric.(*Registry).Each()
pkg/util/metric/registry.go:265 +0xf7
github.com/cockroachdb/cockroach/pkg/util/metric.(*Registry).Each()
pkg/util/metric/registry.go:265 +0xf7
github.com/cockroachdb/cockroach/pkg/util/metric.(*Registry).Each()
pkg/util/metric/registry.go:265 +0xf7
github.com/cockroachdb/cockroach/pkg/util/metric.(*Registry).Each()
pkg/util/metric/registry.go:265 +0xf7
github.com/cockroachdb/cockroach/pkg/util/metric.(*Registry).Each()
pkg/util/metric/registry.go:265 +0xf7
github.com/cockroachdb/cockroach/pkg/util/metric.(*Registry).Each()
pkg/util/metric/registry.go:265 +0xf7
github.com/cockroachdb/cockroach/pkg/util/metric.(*Registry).Each()
pkg/util/metric/registry.go:265 +0xf7
github.com/cockroachdb/cockroach/pkg/util/metric.(*Registry).Each()
pkg/util/metric/registry.go:265 +0xf7
github.com/cockroachdb/cockroach/pkg/util/metric.(*Registry).Each()
pkg/util/metric/registry.go:265 +0xf7
github.com/cockroachdb/cockroach/pkg/util/metric.(*Registry).Each()
pkg/util/metric/registry.go:265 +0xf7
github.com/cockroachdb/cockroach/pkg/util/metric.(*Registry).Each()
pkg/util/metric/registry.go:265 +0xf7
github.com/cockroachdb/cockroach/pkg/util/metric.(*Registry).Each()
pkg/util/metric/registry.go:265 +0xf7
github.com/cockroachdb/cockroach/pkg/util/metric.(*Registry).Each()
pkg/util/metric/registry.go:265 +0xf7
github.com/cockroachdb/cockroach/pkg/util/metric.(*Registry).Each()
pkg/util/metric/registry.go:265 +0xf7
github.com/cockroachdb/cockroach/pkg/util/metric.(*Registry).Each()
pkg/util/metric/registry.go:265 +0xf7
github.com/cockroachdb/cockroach/pkg/util/metric.(*Registry).Each()
pkg/util/metric/registry.go:265 +0xf7
github.com/cockroachdb/cockroach/pkg/util/metric.(*Registry).Each()
pkg/util/metric/registry.go:265 +0xf7
github.com/cockroachdb/cockroach/pkg/util/metric.(*Registry).Each()
pkg/util/metric/registry.go:265 +0xf7
github.com/cockroachdb/cockroach/pkg/util/metric.(*Registry).Each()
pkg/util/metric/registry.go:265 +0xf7
github.com/cockroachdb/cockroach/pkg/util/metric.(*Registry).Each()
pkg/util/metric/registry.go:265 +0xf7
github.com/cockroachdb/cockroach/pkg/util/metric.(*Registry).Each()
pkg/util/metric/registry.go:265 +0xf7
github.com/cockroachdb/cockroach/pkg/util/metric.(*Registry).Each()
pkg/util/metric/registry.go:265 +0xf7
github.com/cockroachdb/cockroach/pkg/util/metric.(*Registry).Each()
pkg/util/metric/registry.go:265 +0xf7
github.com/cockroachdb/cockroach/pkg/util/metric.(*Registry).Each()
pkg/util/metric/registry.go:265 +0xf7
github.com/cockroachdb/cockroach/pkg/util/metric.(*Registry).Each()
pkg/util/metric/registry.go:265 +0xf7
github.com/cockroachdb/cockroach/pkg/util/metric.(*Registry).Each()
pkg/util/metric/registry.go:265 +0xf7
github.com/cockroachdb/cockroach/pkg/util/metric.(*Registry).Each()
pkg/util/metric/registry.go:265 +0xf7
github.com/cockroachdb/cockroach/pkg/util/metric.(*Registry).Each()
pkg/util/metric/registry.go:265 +0xf7
github.com/cockroachdb/cockroach/pkg/util/metric.(*Registry).Each()
pkg/util/metric/registry.go:265 +0xf7
github.com/cockroachdb/cockroach/pkg/util/metric.(*Registry).Each()
pkg/util/metric/registry.go:265 +0xf7
github.com/cockroachdb/cockroach/pkg/util/metric.(*Registry).Each()
pkg/util/metric/registry.go:265 +0xf7
github.com/cockroachdb/cockroach/pkg/util/metric.(*Registry).Each()
pkg/util/metric/registry.go:265 +0xf7
github.com/cockroachdb/cockroach/pkg/server/status.eachRecordableValue()
recorder.go:1086 +0xd45
github.com/cockroachdb/cockroach/pkg/server/status.(*MetricsRecorder).GenerateNodeStatus()
recorder.go:928 +0xc26
github.com/cockroachdb/cockroach/pkg/util/metric.(*Registry).Each()
pkg/util/metric/registry.go:265 +0xf7
github.com/cockroachdb/cockroach/pkg/util/metric.(*Registry).Each()
pkg/util/metric/registry.go:265 +0xf7
github.com/cockroachdb/cockroach/pkg/util/metric.(*Registry).Each()
pkg/util/metric/registry.go:265 +0xf7
github.com/cockroachdb/cockroach/pkg/util/metric.(*Registry).Each()
pkg/util/metric/registry.go:265 +0xf7
github.com/cockroachdb/cockroach/pkg/util/metric.(*Registry).Each()
pkg/util/metric/registry.go:265 +0xf7
github.com/cockroachdb/cockroach/pkg/util/metric.(*Registry).Each()
pkg/util/metric/registry.go:265 +0xf7
github.com/cockroachdb/cockroach/pkg/util/metric.(*Registry).Each()
pkg/util/metric/registry.go:265 +0xf7
github.com/cockroachdb/cockroach/pkg/util/metric.(*Registry).Each()
pkg/util/metric/registry.go:265 +0xf7
github.com/cockroachdb/cockroach/pkg/util/metric.(*Registry).Each()
pkg/util/metric/registry.go:265 +0xf7
github.com/cockroachdb/cockroach/pkg/util/metric.(*Registry).Each()
pkg/util/metric/registry.go:265 +0xf7
github.com/cockroachdb/cockroach/pkg/util/metric.(*Registry).Each()
pkg/util/metric/registry.go:265 +0xf7
github.com/cockroachdb/cockroach/pkg/util/metric.(*Registry).Each()
pkg/util/metric/registry.go:265 +0xf7
github.com/cockroachdb/cockroach/pkg/util/metric.(*Registry).Each()
pkg/util/metric/registry.go:265 +0xf7
github.com/cockroachdb/cockroach/pkg/util/metric.(*Registry).Each()
pkg/util/metric/registry.go:265 +0xf7
github.com/cockroachdb/cockroach/pkg/util/metric.(*Registry).Each()
pkg/util/metric/registry.go:265 +0xf7
github.com/cockroachdb/cockroach/pkg/util/metric.(*Registry).Each()
pkg/util/metric/registry.go:265 +0xf7
github.com/cockroachdb/cockroach/pkg/util/metric.(*Registry).Each()
pkg/util/metric/registry.go:265 +0xf7
github.com/cockroachdb/cockroach/pkg/util/metric.(*Registry).Each()
pkg/util/metric/registry.go:265 +0xf7
github.com/cockroachdb/cockroach/pkg/util/metric.(*Registry).Each()
pkg/util/metric/registry.go:265 +0xf7
github.com/cockroachdb/cockroach/pkg/util/metric.(*Registry).Each()
pkg/util/metric/registry.go:265 +0xf7
github.com/cockroachdb/cockroach/pkg/util/metric.(*Registry).Each()
pkg/util/metric/registry.go:265 +0xf7
github.com/cockroachdb/cockroach/pkg/util/metric.(*Registry).Each()
pkg/util/metric/registry.go:265 +0xf7
github.com/cockroachdb/cockroach/pkg/util/metric.(*Registry).Each()
pkg/util/metric/registry.go:265 +0xf7
github.com/cockroachdb/cockroach/pkg/util/metric.(*Registry).Each()
pkg/util/metric/registry.go:265 +0xf7
github.com/cockroachdb/cockroach/pkg/util/metric.(*Registry).Each()
pkg/util/metric/registry.go:265 +0xf7
github.com/cockroachdb/cockroach/pkg/util/metric.(*Registry).Each()
pkg/util/metric/registry.go:265 +0xf7
github.com/cockroachdb/cockroach/pkg/util/metric.(*Registry).Each()
pkg/util/metric/registry.go:265 +0xf7
github.com/cockroachdb/cockroach/pkg/util/metric.(*Registry).Each()
pkg/util/metric/registry.go:265 +0xf7
github.com/cockroachdb/cockroach/pkg/util/metric.(*Registry).Each()
pkg/util/metric/registry.go:265 +0xf7
github.com/cockroachdb/cockroach/pkg/util/metric.(*Registry).Each()
pkg/util/metric/registry.go:265 +0xf7
github.com/cockroachdb/cockroach/pkg/util/metric.(*Registry).Each()
pkg/util/metric/registry.go:265 +0xf7
github.com/cockroachdb/cockroach/pkg/util/metric.(*Registry).Each()
pkg/util/metric/registry.go:265 +0xf7
github.com/cockroachdb/cockroach/pkg/util/metric.(*Registry).Each()
pkg/util/metric/registry.go:265 +0xf7
github.com/cockroachdb/cockroach/pkg/util/metric.(*Registry).Each()
pkg/util/metric/registry.go:265 +0xf7
github.com/cockroachdb/cockroach/pkg/util/metric.(*Registry).Each()
pkg/util/metric/registry.go:265 +0xf7
github.com/cockroachdb/cockroach/pkg/util/metric.(*Registry).Each()
pkg/util/metric/registry.go:265 +0xf7
github.com/cockroachdb/cockroach/pkg/util/metric.(*Registry).Each()
pkg/util/metric/registry.go:265 +0xf7
github.com/cockroachdb/cockroach/pkg/util/metric.(*Registry).Each()
pkg/util/metric/registry.go:265 +0xf7
github.com/cockroachdb/cockroach/pkg/util/metric.(*Registry).Each()
pkg/util/metric/registry.go:265 +0xf7
github.com/cockroachdb/cockroach/pkg/util/metric.(*Registry).Each()
pkg/util/metric/registry.go:265 +0xf7
github.com/cockroachdb/cockroach/pkg/util/metric.(*Registry).Each()
pkg/util/metric/registry.go:265 +0xf7
github.com/cockroachdb/cockroach/pkg/util/metric.(*Registry).Each()
pkg/util/metric/registry.go:265 +0xf7
github.com/cockroachdb/cockroach/pkg/util/metric.(*Registry).Each()
pkg/util/metric/registry.go:265 +0xf7
github.com/cockroachdb/cockroach/pkg/util/metric.(*Registry).Each()
pkg/util/metric/registry.go:265 +0xf7
github.com/cockroachdb/cockroach/pkg/util/metric.(*Registry).Each()
pkg/util/metric/registry.go:265 +0xf7
github.com/cockroachdb/cockroach/pkg/util/metric.(*Registry).Each()
pkg/util/metric/registry.go:265 +0xf7
github.com/cockroachdb/cockroach/pkg/util/metric.(*Registry).Each()
pkg/util/metric/registry.go:265 +0xf7
github.com/cockroachdb/cockroach/pkg/util/metric.(*Registry).Each()
pkg/util/metric/registry.go:265 +0xf7
github.com/cockroachdb/cockroach/pkg/util/metric.(*Registry).Each()
pkg/util/metric/registry.go:265 +0xf7
github.com/cockroachdb/cockroach/pkg/util/metric.(*Registry).Each()
pkg/util/metric/registry.go:265 +0xf7
github.com/cockroachdb/cockroach/pkg/util/metric.(*Registry).Each()
pkg/util/metric/registry.go:265 +0xf7
github.com/cockroachdb/cockroach/pkg/util/metric.(*Registry).Each()
pkg/util/metric/registry.go:265 +0xf7
github.com/cockroachdb/cockroach/pkg/util/metric.(*Registry).Each()
pkg/util/metric/registry.go:265 +0xf7
github.com/cockroachdb/cockroach/pkg/util/metric.(*Registry).Each()
pkg/util/metric/registry.go:265 +0xf7
github.com/cockroachdb/cockroach/pkg/util/metric.(*Registry).Each()
pkg/util/metric/registry.go:265 +0xf7
github.com/cockroachdb/cockroach/pkg/util/metric.(*Registry).Each()
pkg/util/metric/registry.go:265 +0xf7
github.com/cockroachdb/cockroach/pkg/util/metric.(*Registry).Each()
pkg/util/metric/registry.go:265 +0xf7
github.com/cockroachdb/cockroach/pkg/util/metric.(*Registry).Each()
pkg/util/metric/registry.go:265 +0xf7
github.com/cockroachdb/cockroach/pkg/util/metric.(*Registry).Each()
pkg/util/metric/registry.go:265 +0xf7
github.com/cockroachdb/cockroach/pkg/util/metric.(*Registry).Each()
pkg/util/metric/registry.go:265 +0xf7
github.com/cockroachdb/cockroach/pkg/util/metric.(*Registry).Each()
pkg/util/metric/registry.go:265 +0xf7
github.com/cockroachdb/cockroach/pkg/util/metric.(*Registry).Each()
pkg/util/metric/registry.go:265 +0xf7
github.com/cockroachdb/cockroach/pkg/util/metric.(*Registry).Each()
pkg/util/metric/registry.go:265 +0xf7
github.com/cockroachdb/cockroach/pkg/util/metric.(*Registry).Each()
pkg/util/metric/registry.go:265 +0xf7
github.com/cockroachdb/cockroach/pkg/util/metric.(*Registry).Each()
pkg/util/metric/registry.go:265 +0xf7
github.com/cockroachdb/cockroach/pkg/util/metric.(*Registry).Each()
pkg/util/metric/registry.go:265 +0xf7
github.com/cockroachdb/cockroach/pkg/util/metric.(*Registry).Each()
pkg/util/metric/registry.go:265 +0xf7
github.com/cockroachdb/cockroach/pkg/util/metric.(*Registry).Each()
pkg/util/metric/registry.go:265 +0xf7
github.com/cockroachdb/cockroach/pkg/util/metric.(*Registry).Each()
pkg/util/metric/registry.go:265 +0xf7
github.com/cockroachdb/cockroach/pkg/util/metric.(*Registry).Each()
pkg/util/metric/registry.go:265 +0xf7
github.com/cockroachdb/cockroach/pkg/util/metric.(*Registry).Each()
pkg/util/metric/registry.go:265 +0xf7
github.com/cockroachdb/cockroach/pkg/util/metric.(*Registry).Each()
pkg/util/metric/registry.go:265 +0xf7
github.com/cockroachdb/cockroach/pkg/util/metric.(*Registry).Each()
pkg/util/metric/registry.go:265 +0xf7
github.com/cockroachdb/cockroach/pkg/server/status.eachRecordableValue()
recorder.go:1086 +0xc25
github.com/cockroachdb/cockroach/pkg/server/status.(*MetricsRecorder).GenerateNodeStatus()
recorder.go:925 +0xb08
github.com/cockroachdb/cockroach/pkg/server.(*Node).writeNodeStatus.func1()
pkg/server/node.go:1566 +0x9d
github.com/cockroachdb/cockroach/pkg/util/stop.(*Stopper).RunTask()
pkg/util/stop/stopper.go:318 +0x236
github.com/cockroachdb/cockroach/pkg/server.(*Node).writeNodeStatus()
pkg/server/node.go:1565 +0x107
github.com/cockroachdb/cockroach/pkg/server.(*Node).startWriteNodeStatus.func1()
pkg/server/node.go:1528 +0x44
github.com/cockroachdb/cockroach/pkg/util/startup.RunIdempotentWithRetry.func1()
pkg/util/startup/retry.go:116 +0x3e
github.com/cockroachdb/cockroach/pkg/util/startup.RunIdempotentWithRetryEx[go.shape.interface {}]()
pkg/util/startup/retry.go:137 +0x3a9
github.com/cockroachdb/cockroach/pkg/util/startup.RunIdempotentWithRetry()
pkg/util/startup/retry.go:115 +0xa7
github.com/cockroachdb/cockroach/pkg/server.(*Node).startWriteNodeStatus()
pkg/server/node.go:1525 +0x12a
github.com/cockroachdb/cockroach/pkg/server.(*topLevelServer).PreStart()
pkg/server/server.go:2321 +0x6244
github.com/cockroachdb/cockroach/pkg/server.(*topLevelServer).PreStart()
pkg/server/server.go:2197 +0x4dd9
github.com/cockroachdb/cockroach/pkg/server.(*topLevelServer).PreStart()
pkg/server/server.go:1862 +0x248f
github.com/cockroachdb/cockroach/pkg/server.(*testServer).PreStart()
pkg/server/testserver.go:959 +0x144
github.com/cockroachdb/cockroach/pkg/server.(*testServer).Start()
pkg/server/testserver.go:1037 +0xc4
github.com/cockroachdb/cockroach/pkg/testutils/serverutils.(*wrap).Start()
bazel-out/k8-fastbuild/bin/pkg/testutils/serverutils/ts_control_forwarder_generated.go:14 +0x71
github.com/cockroachdb/cockroach/pkg/testutils/serverutils.StartServerOnlyE()
pkg/testutils/serverutils/test_server_shim.go:301 +0x28d
github.com/cockroachdb/cockroach/pkg/testutils/serverutils.StartServerOnly()
pkg/testutils/serverutils/test_server_shim.go:316 +0x84
github.com/cockroachdb/cockroach/pkg/testutils/serverutils.StartServer()
pkg/testutils/serverutils/test_server_shim.go:352 +0x64
github.com/cockroachdb/cockroach/pkg/kv/kvclient/kvcoord_test.TestTxnUpdateFromTxnRecordDoesNotOverwriteFields()
pkg/kv/kvclient/kvcoord/txn_test.go:1441 +0x2b4
testing.tRunner()
GOROOT/src/testing/testing.go:2036 +0x21c
testing.(*T).Run.gowrap1()
GOROOT/src/testing/testing.go:2101 +0x38

Previous read at 0x00c008a0a280 by goroutine 11312:
github.com/cockroachdb/cockroach/pkg/kv/kvpb.(*RequestHeader).Size()
bazel-out/k8-fastbuild/bin/pkg/kv/kvpb/kvpb_go_proto_/github.com/cockroachdb/cockroach/pkg/kv/kvpb/api.pb.go:24664 +0x11c
github.com/cockroachdb/cockroach/pkg/kv/kvpb.(*HeartbeatTxnRequest).Size()
bazel-out/k8-fastbuild/bin/pkg/kv/kvpb/kvpb_go_proto_/github.com/cockroachdb/cockroach/pkg/kv/kvpb/api.pb.go:25523 +0x37
github.com/cockroachdb/cockroach/pkg/kv/kvpb.(*RequestUnion_HeartbeatTxn).Size()
bazel-out/k8-fastbuild/bin/pkg/kv/kvpb/kvpb_go_proto_/github.com/cockroachdb/cockroach/pkg/kv/kvpb/api.pb.go:27003 +0x54
github.com/cockroachdb/cockroach/pkg/kv/kvpb.(*RequestUnion).Size()
bazel-out/k8-fastbuild/bin/pkg/kv/kvpb/kvpb_go_proto_/github.com/cockroachdb/cockroach/pkg/kv/kvpb/api.pb.go:26871 +0x56
github.com/cockroachdb/cockroach/pkg/kv/kvpb.(*BatchRequest).Size()
bazel-out/k8-fastbuild/bin/pkg/kv/kvpb/kvpb_go_proto_/github.com/cockroachdb/cockroach/pkg/kv/kvpb/api.pb.go:28415 +0x176
github.com/cockroachdb/cockroach/pkg/kv/kvclient/kvcoord.readAll()
pkg/kv/kvclient/kvcoord/transport_race.go:39 +0x34
github.com/cockroachdb/cockroach/pkg/kv/kvclient/kvcoord.startRacer.func1()
pkg/kv/kvclient/kvcoord/transport_race.go:127 +0x157
github.com/cockroachdb/cockroach/pkg/util/stop.(*Stopper).RunAsyncTaskEx.func1()
pkg/util/stop/stopper.go:447 +0x112
github.com/cockroachdb/cockroach/pkg/util/stop.(*Stopper).RunAsyncTaskEx.gowrap1()
pkg/util/stop/stopper.go:448 +0x46

Goroutine 11293 (running) created at:
testing.(*T).Run()
GOROOT/src/testing/testing.go:2101 +0xb12
testing.runTests.func1()
GOROOT/src/testing/testing.go:2585 +0x84
testing.tRunner()
GOROOT/src/testing/testing.go:2036 +0x21c
testing.runTests()
GOROOT/src/testing/testing.go:2583 +0x9e9
testing.(*M).Run()
GOROOT/src/testing/testing.go:2443 +0xf4b
github.com/cockroachdb/cockroach/pkg/kv/kvclient/kvcoord_test.TestMain()
pkg/kv/kvclient/kvcoord/main_test.go:29 +0x1f7
main.main()
bazel-out/k8-fastbuild/bin/pkg/kv/kvclient/kvcoord/kvcoord_test_/testmain.go:854 +0x751
runtime.main()
GOROOT/src/runtime/proc.go:290 +0x2d4
github.com/cockroachdb/cockroach/pkg/util/parquet.box2DDecoder.decode()
pkg/util/parquet/decoders.go:175 +0x3b
github.com/cockroachdb/cockroach/pkg/util/parquet.init.0()
pkg/util/parquet/decoders.go:414 +0x1be

Goroutine 11312 (running) created at:
github.com/cockroachdb/cockroach/pkg/util/stop.(*Stopper).RunAsyncTaskEx()
pkg/util/stop/stopper.go:445 +0x246
github.com/cockroachdb/cockroach/pkg/util/stop.(*Stopper).RunAsyncTask()
pkg/util/stop/stopper.go:368 +0x125
github.com/cockroachdb/cockroach/pkg/kv/kvclient/kvcoord.startRacer()
pkg/kv/kvclient/kvcoord/transport_race.go:111 +0xd2
github.com/cockroachdb/cockroach/pkg/kv/kvclient/kvcoord.GRPCTransportFactory()
pkg/kv/kvclient/kvcoord/transport_race.go:98 +0x289b
github.com/cockroachdb/cockroach/pkg/server.NewServer()
pkg/server/server.go:539 +0x2abe
github.com/cockroachdb/cockroach/pkg/server.testServerFactoryImpl.New()
pkg/server/testserver.go:2698 +0x4ac
github.com/cockroachdb/cockroach/pkg/server.(*testServerFactoryImpl).New()
:1 +0x56
github.com/cockroachdb/cockroach/pkg/testutils/serverutils.NewServer()
pkg/testutils/serverutils/test_server_shim.go:376 +0x36b
github.com/cockroachdb/cockroach/pkg/testutils/serverutils.StartServerOnlyE()
pkg/testutils/serverutils/test_server_shim.go:289 +0x164
github.com/cockroachdb/cockroach/pkg/testutils/serverutils.StartServerOnly()
pkg/testutils/serverutils/test_server_shim.go:316 +0x84
github.com/cockroachdb/cockroach/pkg/testutils/serverutils.StartServer()
pkg/testutils/serverutils/test_server_shim.go:352 +0x64
github.com/cockroachdb/cockroach/pkg/kv/kvclient/kvcoord_test.TestTxnUpdateFromTxnRecordDoesNotOverwriteFields()
pkg/kv/kvclient/kvcoord/txn_test.go:1441 +0x2b4
testing.tRunner()
GOROOT/src/testing/testing.go:2036 +0x21c
testing.(*T).Run.gowrap1()
GOROOT/src/testing/testing.go:2101 +0x38
```
Log preceding data race

```
=== RUN TestTxnUpdateFromTxnRecordDoesNotOverwriteFields
test_log_scope.go:172: test logs captured to: outputs.zip/logTestTxnUpdateFromTxnRecordDoesNotOverwriteFields2915796652
test_log_scope.go:82: use -show-logs to present logs inline
test_server_shim.go:146: using test tenant configuration from testserver factory defaults
test_server_shim.go:150: cluster virtualization disabled due to issue: #156327 (expected label: C-bug)
test_server_shim.go:637: DRPC is enabled (via testserver factory defaults)
```

Parameters:
- attempt=1
- race=true
- run=1
- shard=4
Help

See also: [How To Investigate a Go Test Failure \(internal\)](https://cockroachlabs.atlassian.net/l/c/HgfXfJgM)

/cc @cockroachlabs/kv-triage

[Improve this report!](https://github.com/cockroachdb/cockroach/tree/master/pkg/cmd/bazci/githubpost/issues)

Jira issue: CRDB-68475

Contributor guide

Open the contributing guide

Research direction

Start with pkg/kv/kvclient/kvcoord/txn_test.go, especially TestTxnUpdateFromTxnRecordDoesNotOverwriteFields, and reproduce it with the race detector. Trace the reported calls through txn_interceptor_seq_num_allocator.go, txn_interceptor_heartbeater.go, txn_coord_sender.go, and pkg/kv/kvpb/api.go. Done means the test no longer reports the data race and still passes.

Written by the indexing model from the issue text.

Assessment

Tech stack
go
Domain
databases, distributed-systems
Issue type
Bug
Difficulty
4/5
Estimated time
3-5 days
Activity status
Active
Clarity
Needs clarification
Newbie friendliness
45/100

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.