Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

kv/kvserver: TestReplicaRemovalClosesProposalQuota failed #96932

Closed
cockroach-teamcity opened this issue Feb 10, 2023 · 14 comments · Fixed by #98685
Closed

kv/kvserver: TestReplicaRemovalClosesProposalQuota failed #96932

cockroach-teamcity opened this issue Feb 10, 2023 · 14 comments · Fixed by #98685
Assignees
Labels
branch-master Failures and bugs on the master branch. C-test-failure Broken test (automatically or manually discovered). GA-blocker O-robot Originated from a bot. skipped-test
Milestone

Comments

@cockroach-teamcity
Copy link
Member

cockroach-teamcity commented Feb 10, 2023

kv/kvserver.TestReplicaRemovalClosesProposalQuota failed with artifacts on master @ 9ea0ef2f6a8e31e22c7350de5cacd9c5992d07a0:

        goroutine 6 [chan receive]:
        github.com/cockroachdb/cockroach/pkg/util/log.flushDaemon()
        	github.com/cockroachdb/cockroach/pkg/util/log/log_flush.go:75 +0x5a
        created by github.com/cockroachdb/cockroach/pkg/util/log.init.5
        	github.com/cockroachdb/cockroach/pkg/util/log/log_flush.go:41 +0x25
        goroutine 7 [chan receive, 5 minutes]:
        github.com/cockroachdb/cockroach/pkg/util/log.signalFlusher()
        	github.com/cockroachdb/cockroach/pkg/util/log/log_flush.go:98 +0xdc
        created by github.com/cockroachdb/cockroach/pkg/util/log.init.5
        	github.com/cockroachdb/cockroach/pkg/util/log/log_flush.go:42 +0x31
        goroutine 34 [syscall, 5 minutes]:
        os/signal.signal_recv()
        	GOROOT/src/runtime/sigqueue.go:152 +0x2f
        os/signal.loop()
        	GOROOT/src/os/signal/signal_unix.go:23 +0x19
        created by os/signal.Notify.func1.1
        	GOROOT/src/os/signal/signal.go:151 +0x2a
        goroutine 11 [chan receive]:
        github.com/cockroachdb/cockroach/pkg/util/goschedstats.init.0.func1()
        	github.com/cockroachdb/cockroach/pkg/util/goschedstats/runnable.go:165 +0x125
        created by github.com/cockroachdb/cockroach/pkg/util/goschedstats.init.0
        	github.com/cockroachdb/cockroach/pkg/util/goschedstats/runnable.go:157 +0x25
        goroutine 52 [select]:
        go.opencensus.io/stats/view.(*worker).start(0xc000e96300)
        	go.opencensus.io/stats/view/external/io_opencensus_go/stats/view/worker.go:276 +0xad
        created by go.opencensus.io/stats/view.init.0
        	go.opencensus.io/stats/view/external/io_opencensus_go/stats/view/worker.go:34 +0x8d
        goroutine 647956 [select]:
        github.com/cockroachdb/cockroach/pkg/util/log.(*fileSink).gcDaemon(0xc010e7aea0, {0x7227c78, 0xc004902340})
        	github.com/cockroachdb/cockroach/pkg/util/log/file_log_gc.go:25 +0x7f
        created by github.com/cockroachdb/cockroach/pkg/util/log.ApplyConfig
        	github.com/cockroachdb/cockroach/pkg/util/log/flags.go:306 +0x112a
        goroutine 647957 [select]:
        github.com/cockroachdb/cockroach/pkg/util/log.(*fileSink).gcDaemon(0xc010e7af70, {0x7227c78, 0xc004902340})
        	github.com/cockroachdb/cockroach/pkg/util/log/file_log_gc.go:25 +0x7f
        created by github.com/cockroachdb/cockroach/pkg/util/log.ApplyConfig
        	github.com/cockroachdb/cockroach/pkg/util/log/flags.go:306 +0x112a
        goroutine 647954 [select]:
        github.com/cockroachdb/cockroach/pkg/util/log.(*fileSink).gcDaemon(0xc010e7ac30, {0x7227c78, 0xc004902340})
        	github.com/cockroachdb/cockroach/pkg/util/log/file_log_gc.go:25 +0x7f
        created by github.com/cockroachdb/cockroach/pkg/util/log.ApplyConfig
        	github.com/cockroachdb/cockroach/pkg/util/log/flags.go:306 +0x112a
        goroutine 647955 [select]:
        github.com/cockroachdb/cockroach/pkg/util/log.(*fileSink).gcDaemon(0xc010e7add0, {0x7227c78, 0xc004902340})
        	github.com/cockroachdb/cockroach/pkg/util/log/file_log_gc.go:25 +0x7f
        created by github.com/cockroachdb/cockroach/pkg/util/log.ApplyConfig
        	github.com/cockroachdb/cockroach/pkg/util/log/flags.go:306 +0x112a
    panic.go:522: -- test log scope end --
test logs left over in: /artifacts/tmp/_tmp/33e1d369c27b9c01b2b6009c561815a3/logTestReplicaRemovalClosesProposalQuota1378195204
--- FAIL: TestReplicaRemovalClosesProposalQuota (46.01s)

Parameters: TAGS=bazel,gss

Help

See also: How To Investigate a Go Test Failure (internal)

/cc @cockroachdb/replication

This test on roachdash | Improve this report!

Jira issue: CRDB-24415

@cockroach-teamcity cockroach-teamcity added branch-master Failures and bugs on the master branch. C-test-failure Broken test (automatically or manually discovered). O-robot Originated from a bot. labels Feb 10, 2023
@cockroach-teamcity cockroach-teamcity added this to the 23.1 milestone Feb 10, 2023
@cockroach-teamcity
Copy link
Member Author

kv/kvserver.TestReplicaRemovalClosesProposalQuota failed with artifacts on master @ 2a7edbeb0737b1309064c25c641a309c2980d9ba:

        goroutine 6 [chan receive]:
        github.com/cockroachdb/cockroach/pkg/util/log.flushDaemon()
        	github.com/cockroachdb/cockroach/pkg/util/log/log_flush.go:75 +0x5a
        created by github.com/cockroachdb/cockroach/pkg/util/log.init.5
        	github.com/cockroachdb/cockroach/pkg/util/log/log_flush.go:41 +0x25
        goroutine 7 [chan receive, 5 minutes]:
        github.com/cockroachdb/cockroach/pkg/util/log.signalFlusher()
        	github.com/cockroachdb/cockroach/pkg/util/log/log_flush.go:98 +0xdc
        created by github.com/cockroachdb/cockroach/pkg/util/log.init.5
        	github.com/cockroachdb/cockroach/pkg/util/log/log_flush.go:42 +0x31
        goroutine 34 [syscall, 5 minutes]:
        os/signal.signal_recv()
        	GOROOT/src/runtime/sigqueue.go:152 +0x2f
        os/signal.loop()
        	GOROOT/src/os/signal/signal_unix.go:23 +0x19
        created by os/signal.Notify.func1.1
        	GOROOT/src/os/signal/signal.go:151 +0x2a
        goroutine 13 [chan receive]:
        github.com/cockroachdb/cockroach/pkg/util/goschedstats.init.0.func1()
        	github.com/cockroachdb/cockroach/pkg/util/goschedstats/runnable.go:165 +0x125
        created by github.com/cockroachdb/cockroach/pkg/util/goschedstats.init.0
        	github.com/cockroachdb/cockroach/pkg/util/goschedstats/runnable.go:157 +0x25
        goroutine 16 [select]:
        go.opencensus.io/stats/view.(*worker).start(0xc000199280)
        	go.opencensus.io/stats/view/external/io_opencensus_go/stats/view/worker.go:276 +0xad
        created by go.opencensus.io/stats/view.init.0
        	go.opencensus.io/stats/view/external/io_opencensus_go/stats/view/worker.go:34 +0x8d
        goroutine 649344 [select]:
        github.com/cockroachdb/cockroach/pkg/util/log.(*fileSink).gcDaemon(0xc005df2750, {0x722e238, 0xc006b72280})
        	github.com/cockroachdb/cockroach/pkg/util/log/file_log_gc.go:25 +0x7f
        created by github.com/cockroachdb/cockroach/pkg/util/log.ApplyConfig
        	github.com/cockroachdb/cockroach/pkg/util/log/flags.go:306 +0x112a
        goroutine 649378 [select]:
        github.com/cockroachdb/cockroach/pkg/util/log.(*fileSink).gcDaemon(0xc005df28f0, {0x722e238, 0xc006b72280})
        	github.com/cockroachdb/cockroach/pkg/util/log/file_log_gc.go:25 +0x7f
        created by github.com/cockroachdb/cockroach/pkg/util/log.ApplyConfig
        	github.com/cockroachdb/cockroach/pkg/util/log/flags.go:306 +0x112a
        goroutine 649345 [select]:
        github.com/cockroachdb/cockroach/pkg/util/log.(*fileSink).gcDaemon(0xc005df2820, {0x722e238, 0xc006b72280})
        	github.com/cockroachdb/cockroach/pkg/util/log/file_log_gc.go:25 +0x7f
        created by github.com/cockroachdb/cockroach/pkg/util/log.ApplyConfig
        	github.com/cockroachdb/cockroach/pkg/util/log/flags.go:306 +0x112a
        goroutine 649379 [select]:
        github.com/cockroachdb/cockroach/pkg/util/log.(*fileSink).gcDaemon(0xc005df29c0, {0x722e238, 0xc006b72280})
        	github.com/cockroachdb/cockroach/pkg/util/log/file_log_gc.go:25 +0x7f
        created by github.com/cockroachdb/cockroach/pkg/util/log.ApplyConfig
        	github.com/cockroachdb/cockroach/pkg/util/log/flags.go:306 +0x112a
    panic.go:522: -- test log scope end --
test logs left over in: /artifacts/tmp/_tmp/33e1d369c27b9c01b2b6009c561815a3/logTestReplicaRemovalClosesProposalQuota3538707653
--- FAIL: TestReplicaRemovalClosesProposalQuota (45.89s)

Parameters: TAGS=bazel,gss

Help

See also: How To Investigate a Go Test Failure (internal)

This test on roachdash | Improve this report!

@cockroach-teamcity
Copy link
Member Author

kv/kvserver.TestReplicaRemovalClosesProposalQuota failed with artifacts on master @ 2a7edbeb0737b1309064c25c641a309c2980d9ba:

        goroutine 6 [chan receive]:
        github.com/cockroachdb/cockroach/pkg/util/log.flushDaemon()
        	github.com/cockroachdb/cockroach/pkg/util/log/log_flush.go:75 +0x5a
        created by github.com/cockroachdb/cockroach/pkg/util/log.init.5
        	github.com/cockroachdb/cockroach/pkg/util/log/log_flush.go:41 +0x25
        goroutine 7 [chan receive, 5 minutes]:
        github.com/cockroachdb/cockroach/pkg/util/log.signalFlusher()
        	github.com/cockroachdb/cockroach/pkg/util/log/log_flush.go:98 +0xdc
        created by github.com/cockroachdb/cockroach/pkg/util/log.init.5
        	github.com/cockroachdb/cockroach/pkg/util/log/log_flush.go:42 +0x31
        goroutine 34 [syscall, 5 minutes]:
        os/signal.signal_recv()
        	GOROOT/src/runtime/sigqueue.go:152 +0x2f
        os/signal.loop()
        	GOROOT/src/os/signal/signal_unix.go:23 +0x19
        created by os/signal.Notify.func1.1
        	GOROOT/src/os/signal/signal.go:151 +0x2a
        goroutine 10 [chan receive]:
        github.com/cockroachdb/cockroach/pkg/util/goschedstats.init.0.func1()
        	github.com/cockroachdb/cockroach/pkg/util/goschedstats/runnable.go:165 +0x125
        created by github.com/cockroachdb/cockroach/pkg/util/goschedstats.init.0
        	github.com/cockroachdb/cockroach/pkg/util/goschedstats/runnable.go:157 +0x25
        goroutine 53 [select]:
        go.opencensus.io/stats/view.(*worker).start(0xc0010e8000)
        	go.opencensus.io/stats/view/external/io_opencensus_go/stats/view/worker.go:276 +0xad
        created by go.opencensus.io/stats/view.init.0
        	go.opencensus.io/stats/view/external/io_opencensus_go/stats/view/worker.go:34 +0x8d
        goroutine 651997 [select]:
        github.com/cockroachdb/cockroach/pkg/util/log.(*fileSink).gcDaemon(0xc0087bac30, {0x722e238, 0xc012876480})
        	github.com/cockroachdb/cockroach/pkg/util/log/file_log_gc.go:25 +0x7f
        created by github.com/cockroachdb/cockroach/pkg/util/log.ApplyConfig
        	github.com/cockroachdb/cockroach/pkg/util/log/flags.go:306 +0x112a
        goroutine 651995 [select]:
        github.com/cockroachdb/cockroach/pkg/util/log.(*fileSink).gcDaemon(0xc0087ba9c0, {0x722e238, 0xc012876480})
        	github.com/cockroachdb/cockroach/pkg/util/log/file_log_gc.go:25 +0x7f
        created by github.com/cockroachdb/cockroach/pkg/util/log.ApplyConfig
        	github.com/cockroachdb/cockroach/pkg/util/log/flags.go:306 +0x112a
        goroutine 651996 [select]:
        github.com/cockroachdb/cockroach/pkg/util/log.(*fileSink).gcDaemon(0xc0087bab60, {0x722e238, 0xc012876480})
        	github.com/cockroachdb/cockroach/pkg/util/log/file_log_gc.go:25 +0x7f
        created by github.com/cockroachdb/cockroach/pkg/util/log.ApplyConfig
        	github.com/cockroachdb/cockroach/pkg/util/log/flags.go:306 +0x112a
        goroutine 651994 [select]:
        github.com/cockroachdb/cockroach/pkg/util/log.(*fileSink).gcDaemon(0xc0087ba8f0, {0x722e238, 0xc012876480})
        	github.com/cockroachdb/cockroach/pkg/util/log/file_log_gc.go:25 +0x7f
        created by github.com/cockroachdb/cockroach/pkg/util/log.ApplyConfig
        	github.com/cockroachdb/cockroach/pkg/util/log/flags.go:306 +0x112a
    panic.go:522: -- test log scope end --
test logs left over in: /artifacts/tmp/_tmp/33e1d369c27b9c01b2b6009c561815a3/logTestReplicaRemovalClosesProposalQuota2673834497
--- FAIL: TestReplicaRemovalClosesProposalQuota (45.98s)

Parameters: TAGS=bazel,gss

Help

See also: How To Investigate a Go Test Failure (internal)

This test on roachdash | Improve this report!

@cockroach-teamcity
Copy link
Member Author

kv/kvserver.TestReplicaRemovalClosesProposalQuota failed with artifacts on master @ 3e26d85118ef73133c00b04b17449c27c31b8bc4:

        goroutine 6 [chan receive]:
        github.com/cockroachdb/cockroach/pkg/util/log.flushDaemon()
        	github.com/cockroachdb/cockroach/pkg/util/log/log_flush.go:75 +0x5a
        created by github.com/cockroachdb/cockroach/pkg/util/log.init.5
        	github.com/cockroachdb/cockroach/pkg/util/log/log_flush.go:41 +0x25
        goroutine 7 [chan receive, 6 minutes]:
        github.com/cockroachdb/cockroach/pkg/util/log.signalFlusher()
        	github.com/cockroachdb/cockroach/pkg/util/log/log_flush.go:98 +0xdc
        created by github.com/cockroachdb/cockroach/pkg/util/log.init.5
        	github.com/cockroachdb/cockroach/pkg/util/log/log_flush.go:42 +0x31
        goroutine 34 [syscall, 6 minutes]:
        os/signal.signal_recv()
        	GOROOT/src/runtime/sigqueue.go:152 +0x2f
        os/signal.loop()
        	GOROOT/src/os/signal/signal_unix.go:23 +0x19
        created by os/signal.Notify.func1.1
        	GOROOT/src/os/signal/signal.go:151 +0x2a
        goroutine 13 [chan receive]:
        github.com/cockroachdb/cockroach/pkg/util/goschedstats.init.0.func1()
        	github.com/cockroachdb/cockroach/pkg/util/goschedstats/runnable.go:165 +0x125
        created by github.com/cockroachdb/cockroach/pkg/util/goschedstats.init.0
        	github.com/cockroachdb/cockroach/pkg/util/goschedstats/runnable.go:157 +0x25
        goroutine 16 [select]:
        go.opencensus.io/stats/view.(*worker).start(0xc000f91b00)
        	go.opencensus.io/stats/view/external/io_opencensus_go/stats/view/worker.go:276 +0xad
        created by go.opencensus.io/stats/view.init.0
        	go.opencensus.io/stats/view/external/io_opencensus_go/stats/view/worker.go:34 +0x8d
        goroutine 642593 [select]:
        github.com/cockroachdb/cockroach/pkg/util/log.(*fileSink).gcDaemon(0xc006acaa90, {0x722e238, 0xc005ed62c0})
        	github.com/cockroachdb/cockroach/pkg/util/log/file_log_gc.go:25 +0x7f
        created by github.com/cockroachdb/cockroach/pkg/util/log.ApplyConfig
        	github.com/cockroachdb/cockroach/pkg/util/log/flags.go:306 +0x112a
        goroutine 642706 [select]:
        github.com/cockroachdb/cockroach/pkg/util/log.(*fileSink).gcDaemon(0xc006acab60, {0x722e238, 0xc005ed62c0})
        	github.com/cockroachdb/cockroach/pkg/util/log/file_log_gc.go:25 +0x7f
        created by github.com/cockroachdb/cockroach/pkg/util/log.ApplyConfig
        	github.com/cockroachdb/cockroach/pkg/util/log/flags.go:306 +0x112a
        goroutine 642707 [select]:
        github.com/cockroachdb/cockroach/pkg/util/log.(*fileSink).gcDaemon(0xc006acac30, {0x722e238, 0xc005ed62c0})
        	github.com/cockroachdb/cockroach/pkg/util/log/file_log_gc.go:25 +0x7f
        created by github.com/cockroachdb/cockroach/pkg/util/log.ApplyConfig
        	github.com/cockroachdb/cockroach/pkg/util/log/flags.go:306 +0x112a
        goroutine 642592 [select]:
        github.com/cockroachdb/cockroach/pkg/util/log.(*fileSink).gcDaemon(0xc006aca8f0, {0x722e238, 0xc005ed62c0})
        	github.com/cockroachdb/cockroach/pkg/util/log/file_log_gc.go:25 +0x7f
        created by github.com/cockroachdb/cockroach/pkg/util/log.ApplyConfig
        	github.com/cockroachdb/cockroach/pkg/util/log/flags.go:306 +0x112a
    panic.go:522: -- test log scope end --
test logs left over in: /artifacts/tmp/_tmp/33e1d369c27b9c01b2b6009c561815a3/logTestReplicaRemovalClosesProposalQuota2040322853
--- FAIL: TestReplicaRemovalClosesProposalQuota (46.08s)

Parameters: TAGS=bazel,gss

Help

See also: How To Investigate a Go Test Failure (internal)

This test on roachdash | Improve this report!

@erikgrinaker
Copy link
Contributor

Related to the replica refactorings @tbg?

=== RUN   TestReplicaRemovalClosesProposalQuota
    test_log_scope.go:161: test logs captured to: /artifacts/tmp/_tmp/33e1d369c27b9c01b2b6009c561815a3/logTestReplicaRemovalClosesProposalQuota1378195204
    test_log_scope.go:79: use -show-logs to present logs inline
    client_raft_test.go:5628: the replica is not the leaseholder, this happens rarely under stressrace
    testcluster.go:180: condition failed to evaluate within 45s: unexpectedly found 7 active spans:
        {{6931983574264897191 2518691671625896148 1523254745076325513 async consensus [{ [{_unfinished 1} {node 1} {store 1} {range 14/1:/Table/1{2-3}}]}] 2023-02-10 08:39:36.446528522 +0000 UTC m=+313.376553348 44.324441367s [] false OFF 650805 false [] 0 map[]} [] 1 0 false false}
        {{7474850579080116857 7601926132158781569 3001347357871316872 async consensus [{ [{_unfinished 1} {node 1} {store 1} {range 14/1:/Table/1{2-3}}]}] 2023-02-10 08:39:36.287727555 +0000 UTC m=+313.217752378 44.483285557s [] false STRUCTURED 649701 false [] 0 map[]} [] 1 0 false false}
        {{841973946401056274 504339635728273172 249718963347026437 async consensus [{ [{_unfinished 1} {node 1} {store 1} {range 14/1:/Table/1{2-3}}]}] 2023-02-10 08:39:36.155958211 +0000 UTC m=+313.085983054 44.615064998s [] false OFF 649107 false [] 0 map[]} [] 1 0 false false}
        {{4108086845644741576 7476628540943758095 4510450925954060780 async consensus [{ [{_unfinished 1} {node 1} {store 1} {range 14/1:/Table/1{2-3}}]}] 2023-02-10 08:39:36.084541189 +0000 UTC m=+313.014566010 44.686490825s [] false OFF 648848 false [] 0 map[]} [] 1 0 false false}
        {{5894973791824044027 4667450960197158812 188436278572699144 async consensus [{ [{_unfinished 1} {node 1} {store 1} {range 14/1:/Table/1{2-3}}]}] 2023-02-10 08:39:36.153621018 +0000 UTC m=+313.083645842 44.617418893s [] false OFF 649072 false [] 0 map[]} [] 1 0 false false}
        {{8511700058927632986 9148776831353847948 5432563727137435979 async consensus [{ [{_unfinished 1} {node 1} {store 1} {range 14/1:/Table/1{2-3}}]}] 2023-02-10 08:39:36.397226918 +0000 UTC m=+313.327251754 44.373819781s [] false STRUCTURED 650537 false [] 0 map[]} [] 1 0 false false}
        {{7358523023901099846 2358939430147811112 1310076865279093122 async consensus [{ [{_unfinished 1} {node 1} {store 1} {range 14/1:/Table/1{2-3}}]}] 2023-02-10 08:39:36.170263341 +0000 UTC m=+313.100288167 44.600790444s [] false OFF 649159 false [] 0 map[]} [] 1 0 false false}
        goroutines of interest: [650805 649701 649107 648848 649072 650537 649159]
        stacks:
        goroutine 647889 [running]:
        github.com/cockroachdb/cockroach/pkg/testutils/testcluster.(*TestCluster).stopServers.func2()
        	github.com/cockroachdb/cockroach/pkg/testutils/testcluster/testcluster.go:205 +0x193
        github.com/cockroachdb/cockroach/pkg/testutils.SucceedsWithinError.func1()
        	github.com/cockroachdb/cockroach/pkg/testutils/soon.go:71 +0x4a
        github.com/cockroachdb/cockroach/pkg/util/retry.ForDuration(0xc00c242bd8?, 0xc00184cbb0)
        	github.com/cockroachdb/cockroach/pkg/util/retry/retry.go:213 +0x142
        github.com/cockroachdb/cockroach/pkg/testutils.SucceedsWithinError(0xc00c242d40, 0x654574?)
        	github.com/cockroachdb/cockroach/pkg/testutils/soon.go:77 +0x9d
        github.com/cockroachdb/cockroach/pkg/testutils.SucceedsWithin({0x7254c40, 0xc00ce8c000}, 0x559ac60?, 0x5b81de0?)
        	github.com/cockroachdb/cockroach/pkg/testutils/soon.go:59 +0x45
        github.com/cockroachdb/cockroach/pkg/testutils.SucceedsSoon({0x7254c40, 0xc00ce8c000}, 0x0?)
        	github.com/cockroachdb/cockroach/pkg/testutils/soon.go:41 +0x4a
        github.com/cockroachdb/cockroach/pkg/testutils/testcluster.(*TestCluster).stopServers(0xc00ddaa000, {0x7227cb0?, 0xc000082060})
        	github.com/cockroachdb/cockroach/pkg/testutils/testcluster/testcluster.go:180 +0x346
        github.com/cockroachdb/cockroach/pkg/testutils/testcluster.(*TestCluster).Start.func2()
        	github.com/cockroachdb/cockroach/pkg/testutils/testcluster/testcluster.go:434 +0x2b
        github.com/cockroachdb/cockroach/pkg/util/stop.CloserFn.Close(0xc007724e00?)
        	github.com/cockroachdb/cockroach/pkg/util/stop/stopper.go:107 +0x1a
        github.com/cockroachdb/cockroach/pkg/util/stop.(*Stopper).Stop(0xc007724e00, {0x7227cb0, 0xc000082048})
        	github.com/cockroachdb/cockroach/pkg/util/stop/stopper.go:532 +0x1c4
        runtime.Goexit()
        	GOROOT/src/runtime/panic.go:522 +0x185
        testing.(*common).SkipNow(0xc00ce8c000)
        	GOROOT/src/testing/testing.go:986 +0x4a
        testing.(*common).Skip(0xc00ce8c000, {0xc00d4753e0?, 0x521fd40?, 0xc00c242e01?})
        	GOROOT/src/testing/testing.go:962 +0x58
        github.com/cockroachdb/cockroach/pkg/testutils/skip.IgnoreLint({0x7223f30, 0xc00ce8c000}, {0xc00d4753e0, 0x1, 0x1})
        	github.com/cockroachdb/cockroach/pkg/testutils/skip/skip.go:44 +0x58
        github.com/cockroachdb/cockroach/pkg/kv/kvserver_test.TestReplicaRemovalClosesProposalQuota(0xc00ce8c000)
        	github.com/cockroachdb/cockroach/pkg/kv/kvserver_test/pkg/kv/kvserver/client_raft_test.go:5628 +0x9f5
        testing.tRunner(0xc00ce8c000, 0x5ff8f50)
        	GOROOT/src/testing/testing.go:1446 +0x10b
        created by testing.(*T).Run
        	GOROOT/src/testing/testing.go:1493 +0x35f
        goroutine 1 [chan receive]:
        testing.(*T).Run(0xc00168e680, {0x5d279b1?, 0x6558c5?}, 0x5ff8f50)
        	GOROOT/src/testing/testing.go:1494 +0x37a
        testing.runTests.func1(0xc000cd3e60?)
        	GOROOT/src/testing/testing.go:1846 +0x6e
        testing.tRunner(0xc00168e680, 0xc001c3fc30)
        	GOROOT/src/testing/testing.go:1446 +0x10b
        testing.runTests(0xc0020e2140?, {0xa2fd2a0, 0x2bd, 0x2bd}, {0x0?, 0x0?, 0xa67c2c0?})
        	GOROOT/src/testing/testing.go:1844 +0x456
        testing.(*M).Run(0xc0020e2140)
        	GOROOT/src/testing/testing.go:1726 +0x5d9
        github.com/cockroachdb/cockroach/pkg/kv/kvserver_test.TestMain(0x5cfadfe?)
        	github.com/cockroachdb/cockroach/pkg/kv/kvserver_test/pkg/kv/kvserver/main_test.go:35 +0xa5
        main.main()
        	main/bazel-out/k8-fastbuild/bin/pkg/kv/kvserver/kvserver_test_/testmain.go:1527 +0x472
        goroutine 6 [chan receive]:
        github.com/cockroachdb/cockroach/pkg/util/log.flushDaemon()
        	github.com/cockroachdb/cockroach/pkg/util/log/log_flush.go:75 +0x5a
        created by github.com/cockroachdb/cockroach/pkg/util/log.init.5
        	github.com/cockroachdb/cockroach/pkg/util/log/log_flush.go:41 +0x25
        goroutine 7 [chan receive, 5 minutes]:
        github.com/cockroachdb/cockroach/pkg/util/log.signalFlusher()
        	github.com/cockroachdb/cockroach/pkg/util/log/log_flush.go:98 +0xdc
        created by github.com/cockroachdb/cockroach/pkg/util/log.init.5
        	github.com/cockroachdb/cockroach/pkg/util/log/log_flush.go:42 +0x31
        goroutine 34 [syscall, 5 minutes]:
        os/signal.signal_recv()
        	GOROOT/src/runtime/sigqueue.go:152 +0x2f
        os/signal.loop()
        	GOROOT/src/os/signal/signal_unix.go:23 +0x19
        created by os/signal.Notify.func1.1
        	GOROOT/src/os/signal/signal.go:151 +0x2a
        goroutine 11 [chan receive]:
        github.com/cockroachdb/cockroach/pkg/util/goschedstats.init.0.func1()
        	github.com/cockroachdb/cockroach/pkg/util/goschedstats/runnable.go:165 +0x125
        created by github.com/cockroachdb/cockroach/pkg/util/goschedstats.init.0
        	github.com/cockroachdb/cockroach/pkg/util/goschedstats/runnable.go:157 +0x25
        goroutine 52 [select]:
        go.opencensus.io/stats/view.(*worker).start(0xc000e96300)
        	go.opencensus.io/stats/view/external/io_opencensus_go/stats/view/worker.go:276 +0xad
        created by go.opencensus.io/stats/view.init.0
        	go.opencensus.io/stats/view/external/io_opencensus_go/stats/view/worker.go:34 +0x8d
        goroutine 647956 [select]:
        github.com/cockroachdb/cockroach/pkg/util/log.(*fileSink).gcDaemon(0xc010e7aea0, {0x7227c78, 0xc004902340})
        	github.com/cockroachdb/cockroach/pkg/util/log/file_log_gc.go:25 +0x7f
        created by github.com/cockroachdb/cockroach/pkg/util/log.ApplyConfig
        	github.com/cockroachdb/cockroach/pkg/util/log/flags.go:306 +0x112a
        goroutine 647957 [select]:
        github.com/cockroachdb/cockroach/pkg/util/log.(*fileSink).gcDaemon(0xc010e7af70, {0x7227c78, 0xc004902340})
        	github.com/cockroachdb/cockroach/pkg/util/log/file_log_gc.go:25 +0x7f
        created by github.com/cockroachdb/cockroach/pkg/util/log.ApplyConfig
        	github.com/cockroachdb/cockroach/pkg/util/log/flags.go:306 +0x112a
        goroutine 647954 [select]:
        github.com/cockroachdb/cockroach/pkg/util/log.(*fileSink).gcDaemon(0xc010e7ac30, {0x7227c78, 0xc004902340})
        	github.com/cockroachdb/cockroach/pkg/util/log/file_log_gc.go:25 +0x7f
        created by github.com/cockroachdb/cockroach/pkg/util/log.ApplyConfig
        	github.com/cockroachdb/cockroach/pkg/util/log/flags.go:306 +0x112a
        goroutine 647955 [select]:
        github.com/cockroachdb/cockroach/pkg/util/log.(*fileSink).gcDaemon(0xc010e7add0, {0x7227c78, 0xc004902340})
        	github.com/cockroachdb/cockroach/pkg/util/log/file_log_gc.go:25 +0x7f
        created by github.com/cockroachdb/cockroach/pkg/util/log.ApplyConfig
        	github.com/cockroachdb/cockroach/pkg/util/log/flags.go:306 +0x112a
    panic.go:522: -- test log scope end --
test logs left over in: /artifacts/tmp/_tmp/33e1d369c27b9c01b2b6009c561815a3/logTestReplicaRemovalClosesProposalQuota1378195204
--- FAIL: TestReplicaRemovalClosesProposalQuota (46.01s)

@cockroach-teamcity
Copy link
Member Author

kv/kvserver.TestReplicaRemovalClosesProposalQuota failed with artifacts on master @ 5455e9e7e4d533d8ca5dfab496a116888a610c58:

        	main/bazel-out/aarch64-fastbuild/bin/pkg/kv/kvserver/kvserver_test_/testmain.go:1525 +0x400
        goroutine 6 [chan receive]:
        github.com/cockroachdb/cockroach/pkg/util/log.flushDaemon()
        	github.com/cockroachdb/cockroach/pkg/util/log/log_flush.go:75 +0x50
        created by github.com/cockroachdb/cockroach/pkg/util/log.init.5
        	github.com/cockroachdb/cockroach/pkg/util/log/log_flush.go:41 +0x24
        goroutine 7 [chan receive, 1 minutes]:
        github.com/cockroachdb/cockroach/pkg/util/log.signalFlusher()
        	github.com/cockroachdb/cockroach/pkg/util/log/log_flush.go:98 +0xb4
        created by github.com/cockroachdb/cockroach/pkg/util/log.init.5
        	github.com/cockroachdb/cockroach/pkg/util/log/log_flush.go:42 +0x30
        goroutine 59 [syscall, 1 minutes]:
        os/signal.signal_recv()
        	GOROOT/src/runtime/sigqueue.go:152 +0x30
        os/signal.loop()
        	GOROOT/src/os/signal/signal_unix.go:23 +0x1c
        created by os/signal.Notify.func1.1
        	GOROOT/src/os/signal/signal.go:151 +0x2c
        goroutine 11 [select]:
        go.opencensus.io/stats/view.(*worker).start(0x4000c24580)
        	go.opencensus.io/stats/view/external/io_opencensus_go/stats/view/worker.go:276 +0x88
        created by go.opencensus.io/stats/view.init.0
        	go.opencensus.io/stats/view/external/io_opencensus_go/stats/view/worker.go:34 +0xa4
        goroutine 9 [chan receive]:
        github.com/cockroachdb/cockroach/pkg/util/goschedstats.init.0.func1()
        	github.com/cockroachdb/cockroach/pkg/util/goschedstats/runnable.go:165 +0xb0
        created by github.com/cockroachdb/cockroach/pkg/util/goschedstats.init.0
        	github.com/cockroachdb/cockroach/pkg/util/goschedstats/runnable.go:157 +0x24
        goroutine 61234 [select]:
        github.com/cockroachdb/cockroach/pkg/util/log.(*fileSink).gcDaemon(0x400b675860, {0x69b9718, 0x4009c38440})
        	github.com/cockroachdb/cockroach/pkg/util/log/file_log_gc.go:25 +0x70
        created by github.com/cockroachdb/cockroach/pkg/util/log.ApplyConfig
        	github.com/cockroachdb/cockroach/pkg/util/log/flags.go:306 +0xe04
        goroutine 61236 [select]:
        github.com/cockroachdb/cockroach/pkg/util/log.(*fileSink).gcDaemon(0x400b675a00, {0x69b9718, 0x4009c38440})
        	github.com/cockroachdb/cockroach/pkg/util/log/file_log_gc.go:25 +0x70
        created by github.com/cockroachdb/cockroach/pkg/util/log.ApplyConfig
        	github.com/cockroachdb/cockroach/pkg/util/log/flags.go:306 +0xe04
        goroutine 61237 [select]:
        github.com/cockroachdb/cockroach/pkg/util/log.(*fileSink).gcDaemon(0x400b675ba0, {0x69b9718, 0x4009c38440})
        	github.com/cockroachdb/cockroach/pkg/util/log/file_log_gc.go:25 +0x70
        created by github.com/cockroachdb/cockroach/pkg/util/log.ApplyConfig
        	github.com/cockroachdb/cockroach/pkg/util/log/flags.go:306 +0xe04
        goroutine 61235 [select]:
        github.com/cockroachdb/cockroach/pkg/util/log.(*fileSink).gcDaemon(0x400b675930, {0x69b9718, 0x4009c38440})
        	github.com/cockroachdb/cockroach/pkg/util/log/file_log_gc.go:25 +0x70
        created by github.com/cockroachdb/cockroach/pkg/util/log.ApplyConfig
        	github.com/cockroachdb/cockroach/pkg/util/log/flags.go:306 +0xe04
    panic.go:522: -- test log scope end --
--- FAIL: TestReplicaRemovalClosesProposalQuota (46.42s)
Help

See also: How To Investigate a Go Test Failure (internal)

This test on roachdash | Improve this report!

@cockroach-teamcity
Copy link
Member Author

kv/kvserver.TestReplicaRemovalClosesProposalQuota failed with artifacts on master @ 7e2df35a2f6bf7a859bb0539c8ca43c4e72ed260:

        goroutine 6 [chan receive]:
        github.com/cockroachdb/cockroach/pkg/util/log.flushDaemon()
        	github.com/cockroachdb/cockroach/pkg/util/log/log_flush.go:75 +0x5a
        created by github.com/cockroachdb/cockroach/pkg/util/log.init.5
        	github.com/cockroachdb/cockroach/pkg/util/log/log_flush.go:41 +0x25
        goroutine 7 [chan receive, 5 minutes]:
        github.com/cockroachdb/cockroach/pkg/util/log.signalFlusher()
        	github.com/cockroachdb/cockroach/pkg/util/log/log_flush.go:98 +0xdc
        created by github.com/cockroachdb/cockroach/pkg/util/log.init.5
        	github.com/cockroachdb/cockroach/pkg/util/log/log_flush.go:42 +0x31
        goroutine 34 [syscall, 5 minutes]:
        os/signal.signal_recv()
        	GOROOT/src/runtime/sigqueue.go:152 +0x2f
        os/signal.loop()
        	GOROOT/src/os/signal/signal_unix.go:23 +0x19
        created by os/signal.Notify.func1.1
        	GOROOT/src/os/signal/signal.go:151 +0x2a
        goroutine 14 [chan receive]:
        github.com/cockroachdb/cockroach/pkg/util/goschedstats.init.0.func1()
        	github.com/cockroachdb/cockroach/pkg/util/goschedstats/runnable.go:165 +0x125
        created by github.com/cockroachdb/cockroach/pkg/util/goschedstats.init.0
        	github.com/cockroachdb/cockroach/pkg/util/goschedstats/runnable.go:157 +0x25
        goroutine 20 [select]:
        go.opencensus.io/stats/view.(*worker).start(0xc000530200)
        	go.opencensus.io/stats/view/external/io_opencensus_go/stats/view/worker.go:276 +0xad
        created by go.opencensus.io/stats/view.init.0
        	go.opencensus.io/stats/view/external/io_opencensus_go/stats/view/worker.go:34 +0x8d
        goroutine 649879 [select]:
        github.com/cockroachdb/cockroach/pkg/util/log.(*fileSink).gcDaemon(0xc0076db380, {0x7287f78, 0xc0057d6500})
        	github.com/cockroachdb/cockroach/pkg/util/log/file_log_gc.go:25 +0x7f
        created by github.com/cockroachdb/cockroach/pkg/util/log.ApplyConfig
        	github.com/cockroachdb/cockroach/pkg/util/log/flags.go:306 +0x112a
        goroutine 649877 [select]:
        github.com/cockroachdb/cockroach/pkg/util/log.(*fileSink).gcDaemon(0xc0076db110, {0x7287f78, 0xc0057d6500})
        	github.com/cockroachdb/cockroach/pkg/util/log/file_log_gc.go:25 +0x7f
        created by github.com/cockroachdb/cockroach/pkg/util/log.ApplyConfig
        	github.com/cockroachdb/cockroach/pkg/util/log/flags.go:306 +0x112a
        goroutine 649880 [select]:
        github.com/cockroachdb/cockroach/pkg/util/log.(*fileSink).gcDaemon(0xc0076db450, {0x7287f78, 0xc0057d6500})
        	github.com/cockroachdb/cockroach/pkg/util/log/file_log_gc.go:25 +0x7f
        created by github.com/cockroachdb/cockroach/pkg/util/log.ApplyConfig
        	github.com/cockroachdb/cockroach/pkg/util/log/flags.go:306 +0x112a
        goroutine 649878 [select]:
        github.com/cockroachdb/cockroach/pkg/util/log.(*fileSink).gcDaemon(0xc0076db2b0, {0x7287f78, 0xc0057d6500})
        	github.com/cockroachdb/cockroach/pkg/util/log/file_log_gc.go:25 +0x7f
        created by github.com/cockroachdb/cockroach/pkg/util/log.ApplyConfig
        	github.com/cockroachdb/cockroach/pkg/util/log/flags.go:306 +0x112a
    panic.go:522: -- test log scope end --
test logs left over in: /artifacts/tmp/_tmp/33e1d369c27b9c01b2b6009c561815a3/logTestReplicaRemovalClosesProposalQuota1365010040
--- FAIL: TestReplicaRemovalClosesProposalQuota (45.90s)

Parameters: TAGS=bazel,gss

Help

See also: How To Investigate a Go Test Failure (internal)

This test on roachdash | Improve this report!

@cockroach-teamcity
Copy link
Member Author

kv/kvserver.TestReplicaRemovalClosesProposalQuota failed with artifacts on master @ c95bef097bd4c213c6b5c0c125a9a846c4479d73:

        goroutine 6 [chan receive]:
        github.com/cockroachdb/cockroach/pkg/util/log.flushDaemon()
        	github.com/cockroachdb/cockroach/pkg/util/log/log_flush.go:75 +0x5a
        created by github.com/cockroachdb/cockroach/pkg/util/log.init.5
        	github.com/cockroachdb/cockroach/pkg/util/log/log_flush.go:41 +0x25
        goroutine 7 [chan receive, 6 minutes]:
        github.com/cockroachdb/cockroach/pkg/util/log.signalFlusher()
        	github.com/cockroachdb/cockroach/pkg/util/log/log_flush.go:98 +0xdc
        created by github.com/cockroachdb/cockroach/pkg/util/log.init.5
        	github.com/cockroachdb/cockroach/pkg/util/log/log_flush.go:42 +0x31
        goroutine 34 [syscall, 6 minutes]:
        os/signal.signal_recv()
        	GOROOT/src/runtime/sigqueue.go:152 +0x2f
        os/signal.loop()
        	GOROOT/src/os/signal/signal_unix.go:23 +0x19
        created by os/signal.Notify.func1.1
        	GOROOT/src/os/signal/signal.go:151 +0x2a
        goroutine 50 [chan receive]:
        github.com/cockroachdb/cockroach/pkg/util/goschedstats.init.0.func1()
        	github.com/cockroachdb/cockroach/pkg/util/goschedstats/runnable.go:165 +0x125
        created by github.com/cockroachdb/cockroach/pkg/util/goschedstats.init.0
        	github.com/cockroachdb/cockroach/pkg/util/goschedstats/runnable.go:157 +0x25
        goroutine 52 [select]:
        go.opencensus.io/stats/view.(*worker).start(0xc000f80b00)
        	go.opencensus.io/stats/view/external/io_opencensus_go/stats/view/worker.go:276 +0xad
        created by go.opencensus.io/stats/view.init.0
        	go.opencensus.io/stats/view/external/io_opencensus_go/stats/view/worker.go:34 +0x8d
        goroutine 656526 [select]:
        github.com/cockroachdb/cockroach/pkg/util/log.(*fileSink).gcDaemon(0xc019c56ea0, {0x728a818, 0xc0112942c0})
        	github.com/cockroachdb/cockroach/pkg/util/log/file_log_gc.go:25 +0x7f
        created by github.com/cockroachdb/cockroach/pkg/util/log.ApplyConfig
        	github.com/cockroachdb/cockroach/pkg/util/log/flags.go:306 +0x112a
        goroutine 656529 [select]:
        github.com/cockroachdb/cockroach/pkg/util/log.(*fileSink).gcDaemon(0xc019c571e0, {0x728a818, 0xc0112942c0})
        	github.com/cockroachdb/cockroach/pkg/util/log/file_log_gc.go:25 +0x7f
        created by github.com/cockroachdb/cockroach/pkg/util/log.ApplyConfig
        	github.com/cockroachdb/cockroach/pkg/util/log/flags.go:306 +0x112a
        goroutine 656528 [select]:
        github.com/cockroachdb/cockroach/pkg/util/log.(*fileSink).gcDaemon(0xc019c57110, {0x728a818, 0xc0112942c0})
        	github.com/cockroachdb/cockroach/pkg/util/log/file_log_gc.go:25 +0x7f
        created by github.com/cockroachdb/cockroach/pkg/util/log.ApplyConfig
        	github.com/cockroachdb/cockroach/pkg/util/log/flags.go:306 +0x112a
        goroutine 656527 [select]:
        github.com/cockroachdb/cockroach/pkg/util/log.(*fileSink).gcDaemon(0xc019c57040, {0x728a818, 0xc0112942c0})
        	github.com/cockroachdb/cockroach/pkg/util/log/file_log_gc.go:25 +0x7f
        created by github.com/cockroachdb/cockroach/pkg/util/log.ApplyConfig
        	github.com/cockroachdb/cockroach/pkg/util/log/flags.go:306 +0x112a
    panic.go:522: -- test log scope end --
test logs left over in: /artifacts/tmp/_tmp/33e1d369c27b9c01b2b6009c561815a3/logTestReplicaRemovalClosesProposalQuota1199606460
--- FAIL: TestReplicaRemovalClosesProposalQuota (46.20s)

Parameters: TAGS=bazel,gss

Help

See also: How To Investigate a Go Test Failure (internal)

This test on roachdash | Improve this report!

@tbg
Copy link
Member

tbg commented Feb 20, 2023

Related to the replica refactorings @tbg?

Unclear but possible, I'll need to bisect.

@cockroach-teamcity
Copy link
Member Author

kv/kvserver.TestReplicaRemovalClosesProposalQuota failed with artifacts on master @ fb740d4b50b5d77b6fa2a10771058dc6cf1bb1b2:

        	main/bazel-out/aarch64-fastbuild/bin/pkg/kv/kvserver/kvserver_test_/testmain.go:1521 +0x400
        goroutine 6 [chan receive]:
        github.com/cockroachdb/cockroach/pkg/util/log.flushDaemon()
        	github.com/cockroachdb/cockroach/pkg/util/log/log_flush.go:75 +0x50
        created by github.com/cockroachdb/cockroach/pkg/util/log.init.5
        	github.com/cockroachdb/cockroach/pkg/util/log/log_flush.go:41 +0x24
        goroutine 7 [chan receive, 1 minutes]:
        github.com/cockroachdb/cockroach/pkg/util/log.signalFlusher()
        	github.com/cockroachdb/cockroach/pkg/util/log/log_flush.go:98 +0xb4
        created by github.com/cockroachdb/cockroach/pkg/util/log.init.5
        	github.com/cockroachdb/cockroach/pkg/util/log/log_flush.go:42 +0x30
        goroutine 34 [syscall, 1 minutes]:
        os/signal.signal_recv()
        	GOROOT/src/runtime/sigqueue.go:152 +0x30
        os/signal.loop()
        	GOROOT/src/os/signal/signal_unix.go:23 +0x1c
        created by os/signal.Notify.func1.1
        	GOROOT/src/os/signal/signal.go:151 +0x2c
        goroutine 10 [chan receive]:
        github.com/cockroachdb/cockroach/pkg/util/goschedstats.init.0.func1()
        	github.com/cockroachdb/cockroach/pkg/util/goschedstats/runnable.go:165 +0xb0
        created by github.com/cockroachdb/cockroach/pkg/util/goschedstats.init.0
        	github.com/cockroachdb/cockroach/pkg/util/goschedstats/runnable.go:157 +0x24
        goroutine 82 [select]:
        go.opencensus.io/stats/view.(*worker).start(0x4000761d80)
        	go.opencensus.io/stats/view/external/io_opencensus_go/stats/view/worker.go:276 +0x88
        created by go.opencensus.io/stats/view.init.0
        	go.opencensus.io/stats/view/external/io_opencensus_go/stats/view/worker.go:34 +0xa4
        goroutine 62466 [select]:
        github.com/cockroachdb/cockroach/pkg/util/log.(*fileSink).gcDaemon(0x400cee4b60, {0x69fbeb8, 0x40071ba2c0})
        	github.com/cockroachdb/cockroach/pkg/util/log/file_log_gc.go:25 +0x70
        created by github.com/cockroachdb/cockroach/pkg/util/log.ApplyConfig
        	github.com/cockroachdb/cockroach/pkg/util/log/flags.go:306 +0xe04
        goroutine 62321 [select]:
        github.com/cockroachdb/cockroach/pkg/util/log.(*fileSink).gcDaemon(0x400cee49c0, {0x69fbeb8, 0x40071ba2c0})
        	github.com/cockroachdb/cockroach/pkg/util/log/file_log_gc.go:25 +0x70
        created by github.com/cockroachdb/cockroach/pkg/util/log.ApplyConfig
        	github.com/cockroachdb/cockroach/pkg/util/log/flags.go:306 +0xe04
        goroutine 62467 [select]:
        github.com/cockroachdb/cockroach/pkg/util/log.(*fileSink).gcDaemon(0x400cee4d00, {0x69fbeb8, 0x40071ba2c0})
        	github.com/cockroachdb/cockroach/pkg/util/log/file_log_gc.go:25 +0x70
        created by github.com/cockroachdb/cockroach/pkg/util/log.ApplyConfig
        	github.com/cockroachdb/cockroach/pkg/util/log/flags.go:306 +0xe04
        goroutine 62320 [select]:
        github.com/cockroachdb/cockroach/pkg/util/log.(*fileSink).gcDaemon(0x400cee4750, {0x69fbeb8, 0x40071ba2c0})
        	github.com/cockroachdb/cockroach/pkg/util/log/file_log_gc.go:25 +0x70
        created by github.com/cockroachdb/cockroach/pkg/util/log.ApplyConfig
        	github.com/cockroachdb/cockroach/pkg/util/log/flags.go:306 +0xe04
    panic.go:522: -- test log scope end --
--- FAIL: TestReplicaRemovalClosesProposalQuota (46.72s)
Help

See also: How To Investigate a Go Test Failure (internal)

This test on roachdash | Improve this report!

@tbg
Copy link
Member

tbg commented Feb 21, 2023

	// NB: We need to be sure that our Replica is the leaseholder for this
	// test to make sense. It usually is.
	lease, pendingLease := repl.GetLease()
	if pendingLease != (roachpb.Lease{}) || lease.OwnedBy(store.StoreID()) {
		skip.IgnoreLint(t, "the replica is not the leaseholder, this happens rarely under stressrace")
	}

👀

That's wrong, it ought to be !lease.OwnedBy.

So to start, the test has essentially been skipped for the last three years 😅 It hangs when fixed, so the test is basically broken right now.

When the test skips itself that way, we shut down the server and seem to be leaking async proposal spans some of the time. This isn't supposed to happen, we clean them up here:

// We'll want to cancel all in-flight proposals. Proposals embed tracing
// spans in them, and we don't want to be leaking any.
s.stopper.AddCloser(stop.CloserFn(func() {
s.VisitReplicas(func(r *Replica) (more bool) {
r.mu.Lock()
r.mu.proposalBuf.FlushLockedWithoutProposing(ctx)
for k, prop := range r.mu.proposals {
delete(r.mu.proposals, k)
prop.finishApplication(
context.Background(),
proposalResult{
Err: kvpb.NewError(kvpb.NewAmbiguousResultErrorf("store is stopping")),
},
)
}
r.mu.Unlock()
return true
})
}))
}

@tbg
Copy link
Member

tbg commented Feb 21, 2023

I printf'ed both the above clean-up and the place where the spans are created and it doesn't look like there's an interleaving. We create some spans, and only ~100ms later do we attempt to clear out the spans, and still we leak some.

The test doesn't actually get to remove the replica (the skip comes too early), so not sure what is special about this test. It could be that it is setting a very small proposal quota. Maybe there are some ways in which proposals can exit the system with their trace span unfinished.

@tbg
Copy link
Member

tbg commented Feb 21, 2023

With a larger proposal quota the failure goes away. So likely we are at a risk of leaking proposal spans if the server shuts down while blocking on proposal quota acquisition. I verified with some printf-logging that we are indeed seeing some proposals return in

proposal.quotaAlloc, err = r.maybeAcquireProposalQuota(ctx, quotaSize)
if err != nil {
return nil, nil, "", nil, kvpb.NewError(err)
}

in the failing runs. There wouldn't be anyone finishing the spans there.

That can be fixed!

@cockroach-teamcity
Copy link
Member Author

kv/kvserver.TestReplicaRemovalClosesProposalQuota failed with artifacts on master @ 8c54290f5f1ad68976e59a5f623126ae9d734bf0:

        goroutine 6 [chan receive]:
        github.com/cockroachdb/cockroach/pkg/util/log.flushDaemon()
        	github.com/cockroachdb/cockroach/pkg/util/log/log_flush.go:75 +0x5a
        created by github.com/cockroachdb/cockroach/pkg/util/log.init.5
        	github.com/cockroachdb/cockroach/pkg/util/log/log_flush.go:41 +0x25
        goroutine 7 [chan receive, 5 minutes]:
        github.com/cockroachdb/cockroach/pkg/util/log.signalFlusher()
        	github.com/cockroachdb/cockroach/pkg/util/log/log_flush.go:98 +0xdc
        created by github.com/cockroachdb/cockroach/pkg/util/log.init.5
        	github.com/cockroachdb/cockroach/pkg/util/log/log_flush.go:42 +0x31
        goroutine 34 [syscall, 5 minutes]:
        os/signal.signal_recv()
        	GOROOT/src/runtime/sigqueue.go:152 +0x2f
        os/signal.loop()
        	GOROOT/src/os/signal/signal_unix.go:23 +0x19
        created by os/signal.Notify.func1.1
        	GOROOT/src/os/signal/signal.go:151 +0x2a
        goroutine 38 [chan receive]:
        github.com/cockroachdb/cockroach/pkg/util/goschedstats.init.0.func1()
        	github.com/cockroachdb/cockroach/pkg/util/goschedstats/runnable.go:165 +0x125
        created by github.com/cockroachdb/cockroach/pkg/util/goschedstats.init.0
        	github.com/cockroachdb/cockroach/pkg/util/goschedstats/runnable.go:157 +0x25
        goroutine 20 [select]:
        go.opencensus.io/stats/view.(*worker).start(0xc000e84000)
        	go.opencensus.io/stats/view/external/io_opencensus_go/stats/view/worker.go:276 +0xad
        created by go.opencensus.io/stats/view.init.0
        	go.opencensus.io/stats/view/external/io_opencensus_go/stats/view/worker.go:34 +0x8d
        goroutine 635760 [select]:
        github.com/cockroachdb/cockroach/pkg/util/log.(*fileSink).gcDaemon(0xc004b44d00, {0x733a9f8, 0xc016a56340})
        	github.com/cockroachdb/cockroach/pkg/util/log/file_log_gc.go:25 +0x7f
        created by github.com/cockroachdb/cockroach/pkg/util/log.ApplyConfig
        	github.com/cockroachdb/cockroach/pkg/util/log/flags.go:306 +0x112a
        goroutine 635758 [select]:
        github.com/cockroachdb/cockroach/pkg/util/log.(*fileSink).gcDaemon(0xc004b44b60, {0x733a9f8, 0xc016a56340})
        	github.com/cockroachdb/cockroach/pkg/util/log/file_log_gc.go:25 +0x7f
        created by github.com/cockroachdb/cockroach/pkg/util/log.ApplyConfig
        	github.com/cockroachdb/cockroach/pkg/util/log/flags.go:306 +0x112a
        goroutine 635759 [select]:
        github.com/cockroachdb/cockroach/pkg/util/log.(*fileSink).gcDaemon(0xc004b44c30, {0x733a9f8, 0xc016a56340})
        	github.com/cockroachdb/cockroach/pkg/util/log/file_log_gc.go:25 +0x7f
        created by github.com/cockroachdb/cockroach/pkg/util/log.ApplyConfig
        	github.com/cockroachdb/cockroach/pkg/util/log/flags.go:306 +0x112a
        goroutine 635757 [select]:
        github.com/cockroachdb/cockroach/pkg/util/log.(*fileSink).gcDaemon(0xc004b44a90, {0x733a9f8, 0xc016a56340})
        	github.com/cockroachdb/cockroach/pkg/util/log/file_log_gc.go:25 +0x7f
        created by github.com/cockroachdb/cockroach/pkg/util/log.ApplyConfig
        	github.com/cockroachdb/cockroach/pkg/util/log/flags.go:306 +0x112a
    panic.go:522: -- test log scope end --
test logs left over in: /artifacts/tmp/_tmp/33e1d369c27b9c01b2b6009c561815a3/logTestReplicaRemovalClosesProposalQuota1029857892
--- FAIL: TestReplicaRemovalClosesProposalQuota (46.05s)

Parameters: TAGS=bazel,gss

Help

See also: How To Investigate a Go Test Failure (internal)

This test on roachdash | Improve this report!

@cockroach-teamcity
Copy link
Member Author

kv/kvserver.TestReplicaRemovalClosesProposalQuota failed with artifacts on master @ cf14ad694ee562676f53e36fa8495206c3aed61f:

        goroutine 6 [chan receive]:
        github.com/cockroachdb/cockroach/pkg/util/log.flushDaemon()
        	github.com/cockroachdb/cockroach/pkg/util/log/log_flush.go:75 +0x5a
        created by github.com/cockroachdb/cockroach/pkg/util/log.init.5
        	github.com/cockroachdb/cockroach/pkg/util/log/log_flush.go:41 +0x25
        goroutine 7 [chan receive, 5 minutes]:
        github.com/cockroachdb/cockroach/pkg/util/log.signalFlusher()
        	github.com/cockroachdb/cockroach/pkg/util/log/log_flush.go:98 +0xdc
        created by github.com/cockroachdb/cockroach/pkg/util/log.init.5
        	github.com/cockroachdb/cockroach/pkg/util/log/log_flush.go:42 +0x31
        goroutine 34 [syscall, 5 minutes]:
        os/signal.signal_recv()
        	GOROOT/src/runtime/sigqueue.go:152 +0x2f
        os/signal.loop()
        	GOROOT/src/os/signal/signal_unix.go:23 +0x19
        created by os/signal.Notify.func1.1
        	GOROOT/src/os/signal/signal.go:151 +0x2a
        goroutine 19 [chan receive]:
        github.com/cockroachdb/cockroach/pkg/util/goschedstats.init.0.func1()
        	github.com/cockroachdb/cockroach/pkg/util/goschedstats/runnable.go:165 +0x125
        created by github.com/cockroachdb/cockroach/pkg/util/goschedstats.init.0
        	github.com/cockroachdb/cockroach/pkg/util/goschedstats/runnable.go:157 +0x25
        goroutine 14 [select]:
        go.opencensus.io/stats/view.(*worker).start(0xc000cfa080)
        	go.opencensus.io/stats/view/external/io_opencensus_go/stats/view/worker.go:276 +0xad
        created by go.opencensus.io/stats/view.init.0
        	go.opencensus.io/stats/view/external/io_opencensus_go/stats/view/worker.go:34 +0x8d
        goroutine 626701 [select]:
        github.com/cockroachdb/cockroach/pkg/util/log.(*fileSink).gcDaemon(0xc00287eb60, {0x7349158, 0xc009ff2300})
        	github.com/cockroachdb/cockroach/pkg/util/log/file_log_gc.go:25 +0x7f
        created by github.com/cockroachdb/cockroach/pkg/util/log.ApplyConfig
        	github.com/cockroachdb/cockroach/pkg/util/log/flags.go:306 +0x112a
        goroutine 626698 [select]:
        github.com/cockroachdb/cockroach/pkg/util/log.(*fileSink).gcDaemon(0xc00287e8f0, {0x7349158, 0xc009ff2300})
        	github.com/cockroachdb/cockroach/pkg/util/log/file_log_gc.go:25 +0x7f
        created by github.com/cockroachdb/cockroach/pkg/util/log.ApplyConfig
        	github.com/cockroachdb/cockroach/pkg/util/log/flags.go:306 +0x112a
        goroutine 626699 [select]:
        github.com/cockroachdb/cockroach/pkg/util/log.(*fileSink).gcDaemon(0xc00287e9c0, {0x7349158, 0xc009ff2300})
        	github.com/cockroachdb/cockroach/pkg/util/log/file_log_gc.go:25 +0x7f
        created by github.com/cockroachdb/cockroach/pkg/util/log.ApplyConfig
        	github.com/cockroachdb/cockroach/pkg/util/log/flags.go:306 +0x112a
        goroutine 626700 [select]:
        github.com/cockroachdb/cockroach/pkg/util/log.(*fileSink).gcDaemon(0xc00287ea90, {0x7349158, 0xc009ff2300})
        	github.com/cockroachdb/cockroach/pkg/util/log/file_log_gc.go:25 +0x7f
        created by github.com/cockroachdb/cockroach/pkg/util/log.ApplyConfig
        	github.com/cockroachdb/cockroach/pkg/util/log/flags.go:306 +0x112a
    panic.go:522: -- test log scope end --
test logs left over in: /artifacts/tmp/_tmp/33e1d369c27b9c01b2b6009c561815a3/logTestReplicaRemovalClosesProposalQuota2738864205
--- FAIL: TestReplicaRemovalClosesProposalQuota (45.90s)

Parameters: TAGS=bazel,gss

Help

See also: How To Investigate a Go Test Failure (internal)

This test on roachdash | Improve this report!

tbg added a commit to tbg/cockroach that referenced this issue Mar 15, 2023
Previously, if `evalAndPropose` returned with an error while trying to
propose a pipelined write, it would leak the trace span.

Make sure this doesn't happen. The test that exercised this got deleted
in the previous commit, but this is still a bug that could cause a
larger leak if a condition were ever added to `evalAndPropose` which
could cause a large amount of errors (perhaps spread out over a longer
time period) in production clusters.

Unfortunately, writing a test for this is likely to be a net negative;
if the reviewer feels strongly I can add a testing knob to inject an
error in the right place in this method and exercise it that way.

Touches cockroachdb#96932.

Epic: none
Release note: None
tbg added a commit to tbg/cockroach that referenced this issue Mar 16, 2023
Previously, if `evalAndPropose` returned with an error while trying to
propose a pipelined write, it would leak the trace span.

Make sure this doesn't happen. The test that exercised this got deleted
in the previous commit, but this is still a bug that could cause a
larger leak if a condition were ever added to `evalAndPropose` which
could cause a large amount of errors (perhaps spread out over a longer
time period) in production clusters.

Unfortunately, writing a test for this is likely to be a net negative;
if the reviewer feels strongly I can add a testing knob to inject an
error in the right place in this method and exercise it that way.

Touches cockroachdb#96932.

Epic: none
Release note: None
craig bot pushed a commit that referenced this issue Mar 16, 2023
98685: kvserver: remove TestReplicaRemovalClosesProposalQuota r=pavelkalinnikov a=tbg

As this test explained in its comment, the circumstances it was
seeking to test were very rarely met and even if the behavior
were missing, this wouldn't cause any problems.

The test has been skipped (accidentally) for a long time, was flaky even
then (leaking trace spans, see below), and it's not easy to
enact the situation the test wishes to construct in an idiomatic way.

It's pretty clear that the lines the test wants are present:

https://github.com/cockroachdb/cockroach/blob/736a67e0d36cc545bf74d65db069ee895ff9bea0/pkg/kv/kvserver/replica_destroy.go#L174-L176

It's better to remove the test at this point.

Closes #96932.

Also, fix a buglet that the test "accidentally" uncovered:

Previously, if `evalAndPropose` returned with an error while trying to
propose a pipelined write, it would leak the trace span.

Make sure this doesn't happen. The test that exercised this got deleted
in the previous commit, but this is still a bug that could cause a
larger leak if a condition were ever added to `evalAndPropose` which
could cause a large amount of errors (perhaps spread out over a longer
time period) in production clusters.

Unfortunately, writing a test for this is likely to be a net negative;
if the reviewer feels strongly I can add a testing knob to inject an
error in the right place in this method and exercise it that way.

Touches #96932.

Epic: none
Release note: None

Co-authored-by: Tobias Grieger <[email protected]>
@craig craig bot closed this as completed in 972af47 Mar 16, 2023
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
branch-master Failures and bugs on the master branch. C-test-failure Broken test (automatically or manually discovered). GA-blocker O-robot Originated from a bot. skipped-test
Projects
None yet
Development

Successfully merging a pull request may close this issue.

3 participants