cockroachdb / cockroachdb/cockroach

basalt-26.3.1-rc: kv/kvserver: TestSnapshotHardlinkFailureAborts failed

Open
#173,907 0 comments 0 reactions 0 assignees View on GitHub
branch-basalt-26.3.1-rc C-bug C-test-failure O-robot P-0 T-kv
Dominant language
Go
Stars
32.5k
Forks
4.1k
PR merge metrics
PR metrics pending

Description

kv/kvserver.TestSnapshotHardlinkFailureAborts [failed](https://mesolite.cluster.engflow.com/invocations/default/6794c952-c9cd-4d74-b955-d80520562956?testReportRun=1&testReportShard=40&testReportAttempt=1#targets-Ly9wa2cva3Yva3ZzZXJ2ZXI6a3ZzZXJ2ZXJfdGVzdA==) on basalt-26.3.1-rc @ [63bc2c6772a94c6d763293cd0c2ec06e359c0a36](https://github.com/cockroachdb/cockroach/commits/63bc2c6772a94c6d763293cd0c2ec06e359c0a36):

```
| pkg/rpc/context.go:918 +0x89
| github.com/cockroachdb/cockroach/pkg/rpc.makeInternalClientAdapter.func2({0xce47598, 0xc015e2f2c0}, {0x2?, 0x1?}, {0xc824380, 0xc002f63ce0}, {0xc660880, 0xc001a9c080}, 0x2?, {0x0, ...})
| pkg/rpc/context.go:817 +0x76
| github.com/cockroachdb/cockroach/pkg/rpc.NewContext.ClientInterceptor.func13({0xce47598, 0xc015e2f2c0}, {0xc9bdecc, 0x21}, {0xc824380, 0xc002f63ce0}, {0xc660880, 0xc001a9c080}, 0x0, 0xc01a3eb7a0, ...)
| pkg/util/tracing/grpcinterceptor/grpc_interceptor.go:185 +0x4fd
| github.com/cockroachdb/cockroach/pkg/rpc.makeInternalClientAdapter.getChainUnaryInvoker.func4({0xce47598, 0xc015e2f2c0}, {0xc9bdecc, 0x21}, {0xc824380, 0xc002f63ce0}, {0xc660880, 0xc001a9c080}, 0x0, {0x0, ...})
| pkg/rpc/context.go:1002 +0x18d
| github.com/cockroachdb/cockroach/pkg/rpc.makeInternalClientAdapter.func3({0xce47598, 0xc015e2f220}, 0xc002f638c0)
| pkg/rpc/context.go:887 +0x467
| github.com/cockroachdb/cockroach/pkg/rpc.internalClientAdapter.Batch(...)
| pkg/rpc/context.go:1010
| github.com/cockroachdb/cockroach/pkg/kv/kvclient/kvcoord.(*grpcTransport).sendBatch(0xc023910780, {0xce47598, 0xc015e2f220}, 0x1384ac0?, {0xcdff248, 0xc0146672c0}, 0xc002f638c0)
| pkg/kv/kvclient/kvcoord/transport.go:229 +0x3ac
| github.com/cockroachdb/cockroach/pkg/kv/kvclient/kvcoord.(*grpcTransport).SendNext(0xc023910780, {0xce47598, 0xc015e2f220}, 0xc002f638c0)
| pkg/kv/kvclient/kvcoord/transport.go:191 +0x135
| github.com/cockroachdb/cockroach/pkg/kv/kvclient/kvcoord.raceTransport.SendNext({{0xcea3f18?, 0xc023910780?}}, {0xce47598, 0xc015e2f220}, 0xc002f638c0)
| pkg/kv/kvclient/kvcoord/transport_race.go:70 +0x2df
| github.com/cockroachdb/cockroach/pkg/kv/kvclient/kvcoord.(*DistSender).sendToReplicas(0xc0223c9508, {0xce47598, 0xc015e2f220}, 0xc002f63760, {0xc01de963f0, 0xc026674e00}, 0x0)
| pkg/kv/kvclient/kvcoord/dist_sender.go:2923 +0x2a2e
| github.com/cockroachdb/cockroach/pkg/kv/kvclient/kvcoord.(*DistSender).sendPartialBatch(0xc0223c9508, {0xce47598, 0xc015e2f220}, 0xc002f63760, {{0xc0024092b8, 0x1, 0x8}, {0xc0024092d8, 0x2, 0x8}}, ...)
| pkg/kv/kvclient/kvcoord/dist_sender.go:2333 +0x925
| github.com/cockroachdb/cockroach/pkg/kv/kvclient/kvcoord.(*DistSender).divideAndSendBatchToRanges(0xc0223c9508, {0xce47598, 0xc015e2f220}, 0xc002f63760, {{0xc0024092b8, 0x1, 0x8}, {0xc0024092d8, 0x2, 0x8}}, ...)
| pkg/kv/kvclient/kvcoord/dist_sender.go:1879 +0xf87
| github.com/cockroachdb/cockroach/pkg/kv/kvclient/kvcoord.(*DistSender).Send(0xc0223c9508, {0xce47598, 0xc0035fd040}, 0xc002f63760)
| pkg/kv/kvclient/kvcoord/dist_sender.go:1384 +0x80e
| github.com/cockroachdb/cockroach/pkg/kv.(*CrossRangeTxnWrapperSender).Send(0xc019457928, {0xce47598, 0xc0035fd040}, 0xc002f63760)
| pkg/kv/db.go:232 +0x1e2
| github.com/cockroachdb/cockroach/pkg/kv.SendWrappedWithAdmission({_, _}, {_, _}, {{0x0, 0x0}, 0x0, {0x0, 0x0}, {0x0, ...}, ...}, ...)
| pkg/kv/sender.go:498 +0x224
| github.com/cockroachdb/cockroach/pkg/kv.SendWrappedWith(...)
| pkg/kv/sender.go:483
| github.com/cockroachdb/cockroach/pkg/kv/kvserver.(*ReplicaManifestCommitter).InstallNewManifest(0xc0127fc008, 0x0, {{{0xc0023f9381, 0xf}, 0x42}, {0xc027462cc0, 0x1, 0x1}}, {0x0, 0x0})
| pkg/kv/kvserver/replica_manifest_committer.go:258 +0xc57
| github.com/cockroachdb/cockroach/pkg/storage.(*TestingRSEngine).flushSSTables(0xc026c4f8c0, {0xc02531fd50, 0x1, 0x13c8be20?}, 0x0)
| pkg/storage/rs_engine_testing.go:431 +0xf12
| github.com/cockroachdb/cockroach/pkg/storage.(*rsEngineContainer).FlushSSTables(0xc01546aea0, {0xc02531fd50, 0x1, 0x1}, 0x0)
| pkg/storage/rs_engine_container.go:241 +0x115
| github.com/cockroachdb/cockroach/pkg/kv/kvserver_test.installTestManifestForKey(0xc0258fa008, 0xc01871d008, {0xcef85d8, 0xc02b9d6d00}, {0xc001a328c8, 0x1, 0x8})
| pkg/kv/kvserver/client_basalt_manifest_helpers_test.go:159 +0x844
| github.com/cockroachdb/cockroach/pkg/kv/kvserver_test.TestSnapshotHardlinkFailureAborts(0xc0258fa008)
| pkg/kv/kvserver/client_snapshot_manifest_test.go:146 +0x2f3
| testing.tRunner(0xc0258fa008, 0xcd8bd20)
| GOROOT/src/testing/testing.go:2036 +0x21d
| created by testing.(*T).Run in goroutine 1
| GOROOT/src/testing/testing.go:2101 +0xb13
Error types: (1) *errbase.opaqueWrapper (2) *errutil.withPrefix (3) *errbase.opaqueWrapper (4) *errutil.leafError
Test: TestSnapshotHardlinkFailureAborts
panic.go:694: -- test log scope end --
test logs left over in: outputs.zip/logTestSnapshotHardlinkFailureAborts4228008456
--- FAIL: TestSnapshotHardlinkFailureAborts (7.75s)
```

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

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

/cc @cockroachlabs/kv-triage

[This test on roachdash](https://roachdash.crdb.dev/?filter=status:open%20t:.*TestSnapshotHardlinkFailureAborts.*&sort=title+created&display=lastcommented+project) | [Improve this report!](https://github.com/cockroachdb/cockroach/tree/master/pkg/cmd/bazci/githubpost/issues)

Jira issue: CRDB-67206

Contributor guide

Open the contributing guide

Research direction

Start by running kv/kvserver_test.TestSnapshotHardlinkFailureAborts, then read pkg/kv/kvserver/client_snapshot_manifest_test.go and the installTestManifestForKey helper in client_basalt_manifest_helpers_test.go. Use the linked test report and stack trace to trace the failure through replica_manifest_committer.go and rs_engine_testing.go. Done means the test passes reliably on the reported race configuration without leaving test logs behind.

Written by the indexing model from the issue text.

Assessment

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

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.