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

runtime: goroutine stack exceeds 1000000000-byte limit #14603

Closed
Tracked by #14750
stonever opened this issue Oct 20, 2022 · 2 comments · Fixed by #14604
Closed
Tracked by #14750

runtime: goroutine stack exceeds 1000000000-byte limit #14603

stonever opened this issue Oct 20, 2022 · 2 comments · Fixed by #14604
Labels

Comments

@stonever
Copy link

What happened?

call function: func (b *DoubleBarrier) Leave() error, got fatal error

What did you expect to happen?

no fatal error

How can we reproduce it (as minimally and precisely as possible)?

not leave barrier for a long time

Anything else we need to know?

No response

Etcd version (please run commands below)

$ etcd --version
etcd Version: 3.5.4
Git SHA: 08407ff76
Go Version: go1.16.15
Go OS/Arch: linux/amd64

$ etcdctl version
# paste output here

etcdctl version: 3.5.4
API version: 3.5

Etcd configuration (command line flags or environment variables)

paste your configuration here

Etcd debug information (please run commands blow, feel free to obfuscate the IP address or FQDN in the output)

$ etcdctl member list -w table
# paste output here
+------------------+---------+--------+----------------------------------------------------------+---------------------------------------------------------------------------------------------------+------------+
|        ID        | STATUS  |  NAME  |                        PEER ADDRS                        |                                           CLIENT ADDRS                                            | IS LEARNER |
+------------------+---------+--------+----------------------------------------------------------+---------------------------------------------------------------------------------------------------+------------+
| 2f15c3c81b1a3934 | started | etcd-1 | http://etcd-1.etcd-headless.kline.svc.cluster.local:2380 | http://etcd-1.etcd-headless.kline.svc.cluster.local:2379,http://etcd.kline.svc.cluster.local:2379 |      false |
| 6883d19530f1b73d | started | etcd-0 | http://etcd-0.etcd-headless.kline.svc.cluster.local:2380 | http://etcd-0.etcd-headless.kline.svc.cluster.local:2379,http://etcd.kline.svc.cluster.local:2379 |      false |
| 7a0e402caf21665c | started | etcd-2 | http://etcd-2.etcd-headless.kline.svc.cluster.local:2380 | http://etcd-2.etcd-headless.kline.svc.cluster.local:2379,http://etcd.kline.svc.cluster.local:2379 |      false |
+------------------+---------+--------+----------------------------------------------------------+---------------------------------------------------------------------------------------------------+------------+

$ etcdctl --endpoints=<member list> endpoint status -w table
# paste output here

Relevant log output

runtime: goroutine stack exceeds 1000000000-byte limit
runtime: sp=0xc03cec8418 stack=[0xc03cec8000, 0xc05cec8000]
fatal error: stack overflow

runtime stack:
runtime.throw({0x16d3849?, 0x2378660?})
	/usr/local/go/src/runtime/panic.go:992 +0x71
runtime.newstack()
	/usr/local/go/src/runtime/stack.go:1101 +0x5cc
runtime.morestack()
	/usr/local/go/src/runtime/asm_amd64.s:547 +0x8b

goroutine 274 [running]:
runtime.heapBitsSetType(0xc034b93b30?, 0x30?, 0x30?, 0x16346a0?)
	/usr/local/go/src/runtime/mbitmap.go:832 +0xbcc fp=0xc03cec8428 sp=0xc03cec8420 pc=0x41abcc
runtime.mallocgc(0x30, 0x16346a0, 0x1)
	/usr/local/go/src/runtime/malloc.go:1117 +0x673 fp=0xc03cec84a0 sp=0xc03cec8428 pc=0x411e93
runtime.newobject(0x10?)
	/usr/local/go/src/runtime/malloc.go:1259 +0x27 fp=0xc03cec84c8 sp=0xc03cec84a0 pc=0x412247
runtime.makemap_small()
	/usr/local/go/src/runtime/map.go:294 +0x25 fp=0xc03cec84e8 sp=0xc03cec84c8 pc=0x412d85
google.golang.org/grpc/internal/transport.(*http2Client).getTrAuthData(0xc0000001e0, {0x198d6c0, 0xc034b93b00}, {0xc034b83560, 0x21})
	/code/vendor/google.golang.org/grpc/internal/transport/http2_client.go:586 +0x75 fp=0xc03cec85e8 sp=0xc03cec84e8 pc=0x1005315
google.golang.org/grpc/internal/transport.(*http2Client).createHeaderFields(0xc0000001e0, {0x198d6c0, 0xc034b93ad0}, 0xc034ba55c0)
	/code/vendor/google.golang.org/grpc/internal/transport/http2_client.go:483 +0x118 fp=0xc03cec8c00 sp=0xc03cec85e8 pc=0x1002a98
google.golang.org/grpc/internal/transport.(*http2Client).NewStream(0xc0000001e0, {0x198d6c0, 0xc034b93aa0}, 0xc034ba55c0)
	/code/vendor/google.golang.org/grpc/internal/transport/http2_client.go:656 +0x105 fp=0xc03cec8de8 sp=0xc03cec8c00 pc=0x1005b25
google.golang.org/grpc.(*csAttempt).newStream(0xc034b843c0)
	/code/vendor/google.golang.org/grpc/stream.go:441 +0x4a fp=0xc03cec8e20 sp=0xc03cec8de8 pc=0x10567ea
google.golang.org/grpc.newClientStreamWithParams.func2(0xc034b843c0)
	/code/vendor/google.golang.org/grpc/stream.go:312 +0x3a fp=0xc03cec8e40 sp=0xc03cec8e20 pc=0x1055cda
google.golang.org/grpc.(*clientStream).withRetry(0xc034ba8900, 0xc034ba3160, 0xc03cec8fc8)
	/code/vendor/google.golang.org/grpc/stream.go:715 +0x144 fp=0xc03cec8eb0 sp=0xc03cec8e40 pc=0x10577c4
google.golang.org/grpc.newClientStreamWithParams({0x198d6c0, 0xc034b939e0}, 0x23d57c0, 0xc000521c00, {0x16ddad5, 0x16}, {0x0, 0x0, 0x0, 0x0, ...}, ...)
	/code/vendor/google.golang.org/grpc/stream.go:321 +0x98c fp=0xc03cec8ff8 sp=0xc03cec8eb0 pc=0x10556ec
google.golang.org/grpc.newClientStream.func2({0x198d6c0?, 0xc034b939e0?}, 0xc034b939e0?)
	/code/vendor/google.golang.org/grpc/stream.go:192 +0x9f fp=0xc03cec9088 sp=0xc03cec8ff8 pc=0x1054cdf
google.golang.org/grpc.newClientStream({0x198d6c0, 0xc034b939e0}, 0x23d57c0, 0xc000521c00, {0x16ddad5, 0x16}, {0xc034bab680, 0x3, 0x4})
	/code/vendor/google.golang.org/grpc/stream.go:220 +0x4c2 fp=0xc03cec9160 sp=0xc03cec9088 pc=0x10548c2
google.golang.org/grpc.invoke({0x198d6c0?, 0xc034b939e0?}, {0x16ddad5?, 0xc03cec9260?}, {0x16647a0, 0xc034aef7a0}, {0x16442e0, 0xc034bb25f0}, 0xc000521c00?, {0xc034bab680, ...})
	/code/vendor/google.golang.org/grpc/call.go:66 +0x7d fp=0xc03cec91c8 sp=0xc03cec9160 pc=0x1038a3d
go.etcd.io/etcd/client/v3.(*Client).unaryClientInterceptor.func1({0x198d650?, 0xc000122008?}, {0x16ddad5, 0x16}, {0x16647a0, 0xc034aef7a0}, {0x16442e0, 0xc034bb25f0}, 0xc000521c00, 0x1749d50, ...)
	/code/vendor/go.etcd.io/etcd/client/v3/retry_interceptor.go:58 +0x445 fp=0xc03cec9548 sp=0xc03cec91c8 pc=0x112a4a5
google.golang.org/grpc.(*ClientConn).Invoke(0x60?, {0x198d650?, 0xc000122008?}, {0x16ddad5?, 0x6?}, {0x16647a0?, 0xc034aef7a0?}, {0x16442e0?, 0xc034bb25f0?}, {0xc034ba5500, ...})
	/code/vendor/google.golang.org/grpc/call.go:35 +0x223 fp=0xc03cec95e8 sp=0xc03cec9548 pc=0x10388e3
go.etcd.io/etcd/api/v3/etcdserverpb.(*kVClient).Range(0xc000010468, {0x198d650, 0xc000122008}, 0xc034aef7a0?, {0xc034ba5500, 0x4, 0x6})
	/code/vendor/go.etcd.io/etcd/api/v3/etcdserverpb/rpc.pb.go:6460 +0xc9 fp=0xc03cec9668 sp=0xc03cec95e8 pc=0x108b8e9
go.etcd.io/etcd/client/v3.(*retryKVClient).Range(0xc000623260, {0x198d650, 0xc000122008}, 0x12?, {0x23d6720, 0x3, 0x3})
	/code/vendor/go.etcd.io/etcd/client/v3/retry.go:105 +0x127 fp=0xc03cec96d0 sp=0xc03cec9668 pc=0x11274a7
go.etcd.io/etcd/client/v3.(*kv).Do(_, {_, _}, {0x1, {0xc034b83500, 0x2d, 0x30}, {0xc034b83530, 0x2d, 0x2d}, ...})
	/code/vendor/go.etcd.io/etcd/client/v3/kv.go:149 +0x1e8 fp=0xc03cec98c0 sp=0xc03cec96d0 pc=0x111f9c8
go.etcd.io/etcd/client/v3.(*kv).Get(0x0?, {0x198d650, 0xc000122008}, {0xc034b834d0?, 0x0?}, {0xc034afe230?, 0x0?, 0x0?})
	/code/vendor/go.etcd.io/etcd/client/v3/kv.go:119 +0xd0 fp=0xc03cec9ae8 sp=0xc03cec98c0 pc=0x111f330
go.etcd.io/etcd/client/v3/experimental/recipes.(*DoubleBarrier).Leave(0xc05cec7d68)
	/code/vendor/go.etcd.io/etcd/client/v3/experimental/recipes/double_barrier.go:80 +0x114 fp=0xc03cec9b90 sp=0xc03cec9ae8 pc=0x1152894
go.etcd.io/etcd/client/v3/experimental/recipes.(*DoubleBarrier).Leave(0xc05cec7d68)
	/code/vendor/go.etcd.io/etcd/client/v3/experimental/recipes/double_barrier.go:120 +0x268 fp=0xc03cec9c38 sp=0xc03cec9b90 pc=0x11529e8
go.etcd.io/etcd/client/v3/experimental/recipes.(*DoubleBarrier).Leave(0xc05cec7d68)
	/code/vendor/go.etcd.io/etcd/client/v3/experimental/recipes/double_barrier.go:120 +0x268 fp=0xc03cec9ce0 sp=0xc03cec9c38 pc=0x11529e8
go.etcd.io/etcd/client/v3/experimental/recipes.(*DoubleBarrier).Leave(0xc05cec7d68)
	/code/vendor/go.etcd.io/etcd/client/v3/experimental/recipes/double_barrier.go:120 +0x268 fp=0xc03cec9d88 sp=0xc03cec9ce0 pc=0x11529e8
go.etcd.io/etcd/client/v3/experimental/recipes.(*DoubleBarrier).Leave(0xc05cec7d68)
	/code/vendor/go.etcd.io/etcd/client/v3/experimental/recipes/double_barrier.go:120 +0x268 fp=0xc03cec9e30 sp=0xc03cec9d88 pc=0x11529e8
go.etcd.io/etcd/client/v3/experimental/recipes.(*DoubleBarrier).Leave(0xc05cec7d68)
	/code/vendor/go.etcd.io/etcd/client/v3/experimental/recipes/double_barrier.go:120 +0x268 fp=0xc03cec9ed8 sp=0xc03cec9e30 pc=0x11529e8
go.etcd.io/etcd/client/v3/experimental/recipes.(*DoubleBarrier).Leave(0xc05cec7d68)
	/code/vendor/go.etcd.io/etcd/client/v3/experimental/recipes/double_barrier.go:120 +0x268 fp=0xc03cec9f80 sp=0xc03cec9ed8 pc=0x11529e8
go.etcd.io/etcd/client/v3/experimental/recipes.(*DoubleBarrier).Leave(0xc05cec7d68)
	/code/vendor/go.etcd.io/etcd/client/v3/experimental/recipes/double_barrier.go:120 +0x268 fp=0xc03ceca028 sp=0xc03cec9f80 pc=0x11529e8
go.etcd.io/etcd/client/v3/experimental/recipes.(*DoubleBarrier).Leave(0xc05cec7d68)
	/code/vendor/go.etcd.io/etcd/client/v3/experimental/recipes/double_barrier.go:120 +0x268 fp=0xc03ceca0d0 sp=0xc03ceca028 pc=0x11529e8
go.etcd.io/etcd/client/v3/experimental/recipes.(*DoubleBarrier).Leave(0xc05cec7d68)
	/code/vendor/go.etcd.io/etcd/client/v3/experimental/recipes/double_barrier.go:120 +0x268 fp=0xc03ceca178 sp=0xc03ceca0d0 pc=0x11529e8
go.etcd.io/etcd/client/v3/experimental/recipes.(*DoubleBarrier).Leave(0xc05cec7d68)
	/code/vendor/go.etcd.io/etcd/client/v3/experimental/recipes/double_barrier.go:120 +0x268 fp=0xc03ceca220 sp=0xc03ceca178 pc=0x11529e8
go.etcd.io/etcd/client/v3/experimental/recipes.(*DoubleBarrier).Leave(0xc05cec7d68)
	/code/vendor/go.etcd.io/etcd/client/v3/experimental/recipes/double_barrier.go:120 +0x268 fp=0xc03ceca2c8 sp=0xc03ceca220 pc=0x11529e8
go.etcd.io/etcd/client/v3/experimental/recipes.(*DoubleBarrier).Leave(0xc05cec7d68)
	/code/vendor/go.etcd.io/etcd/client/v3/experimental/recipes/double_barrier.go:120 +0x268 fp=0xc03ceca370 sp=0xc03ceca2c8 pc=0x11529e8
go.etcd.io/etcd/client/v3/experimental/recipes.(*DoubleBarrier).Leave(0xc05cec7d68)
	/code/vendor/go.etcd.io/etcd/client/v3/experimental/recipes/double_barrier.go:120 +0x268 fp=0xc03ceca418 sp=0xc03ceca370 pc=0x11529e8
go.etcd.io/etcd/client/v3/experimental/recipes.(*DoubleBarrier).Leave(0xc05cec7d68)
	/code/vendor/go.etcd.io/etcd/client/v3/experimental/recipes/double_barrier.go:120 +0x268 fp=0xc03ceca4c0 sp=0xc03ceca418 pc=0x11529e8
go.etcd.io/etcd/client/v3/experimental/recipes.(*DoubleBarrier).Leave(0xc05cec7d68)
	/code/vendor/go.etcd.io/etcd/client/v3/experimental/recipes/double_barrier.go:120 +0x268 fp=0xc03ceca568 sp=0xc03ceca4c0 pc=0x11529e8
go.etcd.io/etcd/client/v3/experimental/recipes.(*DoubleBarrier).Leave(0xc05cec7d68)
	/code/vendor/go.etcd.io/etcd/client/v3/experimental/recipes/double_barrier.go:120 +0x268 fp=0xc03ceca610 sp=0xc03ceca568 pc=0x11529e8
go.etcd.io/etcd/client/v3/experimental/recipes.(*DoubleBarrier).Leave(0xc05cec7d68)
	/code/vendor/go.etcd.io/etcd/client/v3/experimental/recipes/double_barrier.go:120 +0x268 fp=0xc03ceca6b8 sp=0xc03ceca610 pc=0x11529e8
go.etcd.io/etcd/client/v3/experimental/recipes.(*DoubleBarrier).Leave(0xc05cec7d68)
	/code/vendor/go.etcd.io/etcd/client/v3/experimental/recipes/double_barrier.go:120 +0x268 fp=0xc03ceca760 sp=0xc03ceca6b8 pc=0x11529e8
go.etcd.io/etcd/client/v3/experimental/recipes.(*DoubleBarrier).Leave(0xc05cec7d68)
	/code/vendor/go.etcd.io/etcd/client/v3/experimental/recipes/double_barrier.go:120 +0x268 fp=0xc03ceca808 sp=0xc03ceca760 pc=0x11529e8
go.etcd.io/etcd/client/v3/experimental/recipes.(*DoubleBarrier).Leave(0xc05cec7d68)
	/code/vendor/go.etcd.io/etcd/client/v3/experimental/recipes/double_barrier.go:120 +0x268 fp=0xc03ceca8b0 sp=0xc03ceca808 pc=0x11529e8
go.etcd.io/etcd/client/v3/experimental/recipes.(*DoubleBarrier).Leave(0xc05cec7d68)
	/code/vendor/go.etcd.io/etcd/client/v3/experimental/recipes/double_barrier.go:120 +0x268 fp=0xc03ceca958 sp=0xc03ceca8b0 pc=0x11529e8
go.etcd.io/etcd/client/v3/experimental/recipes.(*DoubleBarrier).Leave(0xc05cec7d68)
	/code/vendor/go.etcd.io/etcd/client/v3/experimental/recipes/double_barrier.go:120 +0x268 fp=0xc03cecaa00 sp=0xc03ceca958 pc=0x11529e8
go.etcd.io/etcd/client/v3/experimental/recipes.(*DoubleBarrier).Leave(0xc05cec7d68)
	/code/vendor/go.etcd.io/etcd/client/v3/experimental/recipes/double_barrier.go:120 +0x268 fp=0xc03cecaaa8 sp=0xc03cecaa00 pc=0x11529e8
go.etcd.io/etcd/client/v3/experimental/recipes.(*DoubleBarrier).Leave(0xc05cec7d68)
	/code/vendor/go.etcd.io/etcd/client/v3/experimental/recipes/double_barrier.go:120 +0x268 fp=0xc03cecab50 sp=0xc03cecaaa8 pc=0x11529e8
go.etcd.io/etcd/client/v3/experimental/recipes.(*DoubleBarrier).Leave(0xc05cec7d68)
	/code/vendor/go.etcd.io/etcd/client/v3/experimental/recipes/double_barrier.go:120 +0x268 fp=0xc03cecabf8 sp=0xc03cecab50 pc=0x11529e8
go.etcd.io/etcd/client/v3/experimental/recipes.(*DoubleBarrier).Leave(0xc05cec7d68)
	/code/vendor/go.etcd.io/etcd/client/v3/experimental/recipes/double_barrier.go:120 +0x268 fp=0xc03cecaca0 sp=0xc03cecabf8 pc=0x11529e8
go.etcd.io/etcd/client/v3/experimental/recipes.(*DoubleBarrier).Leave(0xc05cec7d68)
	/code/vendor/go.etcd.io/etcd/client/v3/experimental/recipes/double_barrier.go:120 +0x268 fp=0xc03cecad48 sp=0xc03cecaca0 pc=0x11529e8
go.etcd.io/etcd/client/v3/experimental/recipes.(*DoubleBarrier).Leave(0xc05cec7d68)
	/code/vendor/go.etcd.io/etcd/client/v3/experimental/recipes/double_barrier.go:120 +0x268 fp=0xc03cecadf0 sp=0xc03cecad48 pc=0x11529e8
go.etcd.io/etcd/client/v3/experimental/recipes.(*DoubleBarrier).Leave(0xc05cec7d68)
	/code/vendor/go.etcd.io/etcd/client/v3/experimental/recipes/double_barrier.go:120 +0x268 fp=0xc03cecae98 sp=0xc03cecadf0 pc=0x11529e8
go.etcd.io/etcd/client/v3/experimental/recipes.(*DoubleBarrier).Leave(0xc05cec7d68)
	/code/vendor/go.etcd.io/etcd/client/v3/experimental/recipes/double_barrier.go:120 +0x268 fp=0xc03cecaf40 sp=0xc03cecae98 pc=0x11529e8
go.etcd.io/etcd/client/v3/experimental/recipes.(*DoubleBarrier).Leave(0xc05cec7d68)
	/code/vendor/go.etcd.io/etcd/client/v3/experimental/recipes/double_barrier.go:120 +0x268 fp=0xc03cecafe8 sp=0xc03cecaf40 pc=0x11529e8
go.etcd.io/etcd/client/v3/experimental/recipes.(*DoubleBarrier).Leave(0xc05cec7d68)
	/code/vendor/go.etcd.io/etcd/client/v3/experimental/recipes/double_barrier.go:120 +0x268 fp=0xc03cecb090 sp=0xc03cecafe8 pc=0x11529e8
go.etcd.io/etcd/client/v3/experimental/recipes.(*DoubleBarrier).Leave(0xc05cec7d68)
	/code/vendor/go.etcd.io/etcd/client/v3/experimental/recipes/double_barrier.go:120 +0x268 fp=0xc03cecb138 sp=0xc03cecb090 pc=0x11529e8
go.etcd.io/etcd/client/v3/experimental/recipes.(*DoubleBarrier).Leave(0xc05cec7d68)
	/code/vendor/go.etcd.io/etcd/client/v3/experimental/recipes/double_barrier.go:120 +0x268 fp=0xc03cecb1e0 sp=0xc03cecb138 pc=0x11529e8
go.etcd.io/etcd/client/v3/experimental/recipes.(*DoubleBarrier).Leave(0xc05cec7d68)
	/code/vendor/go.etcd.io/etcd/client/v3/experimental/recipes/double_barrier.go:120 +0x268 fp=0xc03cecb288 sp=0xc03cecb1e0 pc=0x11529e8
go.etcd.io/etcd/client/v3/experimental/recipes.(*DoubleBarrier).Leave(0xc05cec7d68)
	/code/vendor/go.etcd.io/etcd/client/v3/experimental/recipes/double_barrier.go:120 +0x268 fp=0xc03cecb330 sp=0xc03cecb288 pc=0x11529e8
go.etcd.io/etcd/client/v3/experimental/recipes.(*DoubleBarrier).Leave(0xc05cec7d68)
	/code/vendor/go.etcd.io/etcd/client/v3/experimental/recipes/double_barrier.go:120 +0x268 fp=0xc03cecb3d8 sp=0xc03cecb330 pc=0x11529e8
go.etcd.io/etcd/client/v3/experimental/recipes.(*DoubleBarrier).Leave(0xc05cec7d68)
	/code/vendor/go.etcd.io/etcd/client/v3/experimental/recipes/double_barrier.go:120 +0x268 fp=0xc03cecb480 sp=0xc03cecb3d8 pc=0x11529e8
go.etcd.io/etcd/client/v3/experimental/recipes.(*DoubleBarrier).Leave(0xc05cec7d68)
	/code/vendor/go.etcd.io/etcd/client/v3/experimental/recipes/double_barrier.go:120 +0x268 fp=0xc03cecb528 sp=0xc03cecb480 pc=0x11529e8
go.etcd.io/etcd/client/v3/experimental/recipes.(*DoubleBarrier).Leave(0xc05cec7d68)
	/code/vendor/go.etcd.io/etcd/client/v3/experimental/recipes/double_barrier.go:120 +0x268 fp=0xc03cecb5d0 sp=0xc03cecb528 pc=0x11529e8
go.etcd.io/etcd/client/v3/experimental/recipes.(*DoubleBarrier).Leave(0xc05cec7d68)
	/code/vendor/go.etcd.io/etcd/client/v3/experimental/recipes/double_barrier.go:120 +0x268 fp=0xc03cecb678 sp=0xc03cecb5d0 pc=0x11529e8
go.etcd.io/etcd/client/v3/experimental/recipes.(*DoubleBarrier).Leave(0xc05cec7d68)
	/code/vendor/go.etcd.io/etcd/client/v3/experimental/recipes/double_barrier.go:120 +0x268 fp=0xc03cecb720 sp=0xc03cecb678 pc=0x11529e8
go.etcd.io/etcd/client/v3/experimental/recipes.(*DoubleBarrier).Leave(0xc05cec7d68)
	/code/vendor/go.etcd.io/etcd/client/v3/experimental/recipes/double_barrier.go:120 +0x268 fp=0xc03cecb7c8 sp=0xc03cecb720 pc=0x11529e8
go.etcd.io/etcd/client/v3/experimental/recipes.(*DoubleBarrier).Leave(0xc05cec7d68)
	/code/vendor/go.etcd.io/etcd/client/v3/experimental/recipes/double_barrier.go:120 +0x268 fp=0xc03cecb870 sp=0xc03cecb7c8 pc=0x11529e8
go.etcd.io/etcd/client/v3/experimental/recipes.(*DoubleBarrier).Leave(0xc05cec7d68)
	/code/vendor/go.etcd.io/etcd/client/v3/experimental/recipes/double_barrier.go:120 +0x268 fp=0xc03cecb918 sp=0xc03cecb870 pc=0x11529e8
go.etcd.io/etcd/client/v3/experimental/recipes.(*DoubleBarrier).Leave(0xc05cec7d68)
	/code/vendor/go.etcd.io/etcd/client/v3/experimental/recipes/double_barrier.go:120 +0x268 fp=0xc03cecb9c0 sp=0xc03cecb918 pc=0x11529e8
go.etcd.io/etcd/client/v3/experimental/recipes.(*DoubleBarrier).Leave(0xc05cec7d68)
	/code/vendor/go.etcd.io/etcd/client/v3/experimental/recipes/double_barrier.go:120 +0x268 fp=0xc03cecba68 sp=0xc03cecb9c0 pc=0x11529e8
go.etcd.io/etcd/client/v3/experimental/recipes.(*DoubleBarrier).Leave(0xc05cec7d68)
	/code/vendor/go.etcd.io/etcd/client/v3/experimental/recipes/double_barrier.go:120 +0x268 fp=0xc03cecbb10 sp=0xc03cecba68 pc=0x11529e8
go.etcd.io/etcd/client/v3/experimental/recipes.(*DoubleBarrier).Leave(0xc05cec7d68)
	/code/vendor/go.etcd.io/etcd/client/v3/experimental/recipes/double_barrier.go:120 +0x268 fp=0xc03cecbbb8 sp=0xc03cecbb10 pc=0x11529e8
go.etcd.io/etcd/client/v3/experimental/recipes.(*DoubleBarrier).Leave(0xc05cec7d68)
	/code/vendor/go.etcd.io/etcd/client/v3/experimental/recipes/double_barrier.go:120 +0x268 fp=0xc03cecbc60 sp=0xc03cecbbb8 pc=0x11529e8
go.etcd.io/etcd/client/v3/experimental/recipes.(*DoubleBarrier).Leave(0xc05cec7d68)
	/code/vendor/go.etcd.io/etcd/client/v3/experimental/recipes/double_barrier.go:120 +0x268 fp=0xc03cecbd08 sp=0xc03cecbc60 pc=0x11529e8
go.etcd.io/etcd/client/v3/experimental/recipes.(*DoubleBarrier).Leave(0xc05cec7d68)
	/code/vendor/go.etcd.io/etcd/client/v3/experimental/recipes/double_barrier.go:120 +0x268 fp=0xc03cecbdb0 sp=0xc03cecbd08 pc=0x11529e8
go.etcd.io/etcd/client/v3/experimental/recipes.(*DoubleBarrier).Leave(0xc05cec7d68)
	/code/vendor/go.etcd.io/etcd/client/v3/experimental/recipes/double_barrier.go:120 +0x268 fp=0xc03cecbe58 sp=0xc03cecbdb0 pc=0x11529e8
go.etcd.io/etcd/client/v3/experimental/recipes.(*DoubleBarrier).Leave(0xc05cec7d68)
	/code/vendor/go.etcd.io/etcd/client/v3/experimental/recipes/double_barrier.go:120 +0x268 fp=0xc03cecbf00 sp=0xc03cecbe58 pc=0x11529e8
go.etcd.io/etcd/client/v3/experimental/recipes.(*DoubleBarrier).Leave(0xc05cec7d68)
	/code/vendor/go.etcd.io/etcd/client/v3/experimental/recipes/double_barrier.go:120 +0x268 fp=0xc03cecbfa8 sp=0xc03cecbf00 pc=0x11529e8
go.etcd.io/etcd/client/v3/experimental/recipes.(*DoubleBarrier).Leave(0xc05cec7d68)
	/code/vendor/go.etcd.io/etcd/client/v3/experimental/recipes/double_barrier.go:120 +0x268 fp=0xc03cecc050 sp=0xc03cecbfa8 pc=0x11529e8
go.etcd.io/etcd/client/v3/experimental/recipes.(*DoubleBarrier).Leave(0xc05cec7d68)
	/code/vendor/go.etcd.io/etcd/client/v3/experimental/recipes/double_barrier.go:120 +0x268 fp=0xc03cecc0f8 sp=0xc03cecc050 pc=0x11529e8
go.etcd.io/etcd/client/v3/experimental/recipes.(*DoubleBarrier).Leave(0xc05cec7d68)
	/code/vendor/go.etcd.io/etcd/client/v3/experimental/recipes/double_barrier.go:120 +0x268 fp=0xc03cecc1a0 sp=0xc03cecc0f8 pc=0x11529e8
go.etcd.io/etcd/client/v3/experimental/recipes.(*DoubleBarrier).Leave(0xc05cec7d68)
	/code/vendor/go.etcd.io/etcd/client/v3/experimental/recipes/double_barrier.go:120 +0x268 fp=0xc03cecc248 sp=0xc03cecc1a0 pc=0x11529e8
go.etcd.io/etcd/client/v3/experimental/recipes.(*DoubleBarrier).Leave(0xc05cec7d68)
	/code/vendor/go.etcd.io/etcd/client/v3/experimental/recipes/double_barrier.go:120 +0x268 fp=0xc03cecc2f0 sp=0xc03cecc248 pc=0x11529e8
go.etcd.io/etcd/client/v3/experimental/recipes.(*DoubleBarrier).Leave(0xc05cec7d68)
	/code/vendor/go.etcd.io/etcd/client/v3/experimental/recipes/double_barrier.go:120 +0x268 fp=0xc03cecc398 sp=0xc03cecc2f0 pc=0x11529e8
go.etcd.io/etcd/client/v3/experimental/recipes.(*DoubleBarrier).Leave(0xc05cec7d68)
	/code/vendor/go.etcd.io/etcd/client/v3/experimental/recipes/double_barrier.go:120 +0x268 fp=0xc03cecc440 sp=0xc03cecc398 pc=0x11529e8
go.etcd.io/etcd/client/v3/experimental/recipes.(*DoubleBarrier).Leave(0xc05cec7d68)
	/code/vendor/go.etcd.io/etcd/client/v3/experimental/recipes/double_barrier.go:120 +0x268 fp=0xc03cecc4e8 sp=0xc03cecc440 pc=0x11529e8
go.etcd.io/etcd/client/v3/experimental/recipes.(*DoubleBarrier).Leave(0xc05cec7d68)
	/code/vendor/go.etcd.io/etcd/client/v3/experimental/recipes/double_barrier.go:120 +0x268 fp=0xc03cecc590 sp=0xc03cecc4e8 pc=0x11529e8
go.etcd.io/etcd/client/v3/experimental/recipes.(*DoubleBarrier).Leave(0xc05cec7d68)
	/code/vendor/go.etcd.io/etcd/client/v3/experimental/recipes/double_barrier.go:120 +0x268 fp=0xc03cecc638 sp=0xc03cecc590 pc=0x11529e8
go.etcd.io/etcd/client/v3/experimental/recipes.(*DoubleBarrier).Leave(0xc05cec7d68)
	/code/vendor/go.etcd.io/etcd/client/v3/experimental/recipes/double_barrier.go:120 +0x268 fp=0xc03cecc6e0 sp=0xc03cecc638 pc=0x11529e8
go.etcd.io/etcd/client/v3/experimental/recipes.(*DoubleBarrier).Leave(0xc05cec7d68)
	/code/vendor/go.etcd.io/etcd/client/v3/experimental/recipes/double_barrier.go:120 +0x268 fp=0xc03cecc788 sp=0xc03cecc6e0 pc=0x11529e8
go.etcd.io/etcd/client/v3/experimental/recipes.(*DoubleBarrier).Leave(0xc05cec7d68)
	/code/vendor/go.etcd.io/etcd/client/v3/experimental/recipes/double_barrier.go:120 +0x268 fp=0xc03cecc830 sp=0xc03cecc788 pc=0x11529e8
go.etcd.io/etcd/client/v3/experimental/recipes.(*DoubleBarrier).Leave(0xc05cec7d68)
	/code/vendor/go.etcd.io/etcd/client/v3/experimental/recipes/double_barrier.go:120 +0x268 fp=0xc03cecc8d8 sp=0xc03cecc830 pc=0x11529e8
go.etcd.io/etcd/client/v3/experimental/recipes.(*DoubleBarrier).Leave(0xc05cec7d68)
	/code/vendor/go.etcd.io/etcd/client/v3/experimental/recipes/double_barrier.go:120 +0x268 fp=0xc03cecc980 sp=0xc03cecc8d8 pc=0x11529e8
go.etcd.io/etcd/client/v3/experimental/recipes.(*DoubleBarrier).Leave(0xc05cec7d68)
	/code/vendor/go.etcd.io/etcd/client/v3/experimental/recipes/double_barrier.go:120 +0x268 fp=0xc03cecca28 sp=0xc03cecc980 pc=0x11529e8
go.etcd.io/etcd/client/v3/experimental/recipes.(*DoubleBarrier).Leave(0xc05cec7d68)
	/code/vendor/go.etcd.io/etcd/client/v3/experimental/recipes/double_barrier.go:120 +0x268 fp=0xc03ceccad0 sp=0xc03cecca28 pc=0x11529e8
go.etcd.io/etcd/client/v3/experimental/recipes.(*DoubleBarrier).Leave(0xc05cec7d68)
	/code/vendor/go.etcd.io/etcd/client/v3/experimental/recipes/double_barrier.go:120 +0x268 fp=0xc03ceccb78 sp=0xc03ceccad0 pc=0x11529e8
go.etcd.io/etcd/client/v3/experimental/recipes.(*DoubleBarrier).Leave(0xc05cec7d68)
	/code/vendor/go.etcd.io/etcd/client/v3/experimental/recipes/double_barrier.go:120 +0x268 fp=0xc03ceccc20 sp=0xc03ceccb78 pc=0x11529e8
go.etcd.io/etcd/client/v3/experimental/recipes.(*DoubleBarrier).Leave(0xc05cec7d68)
	/code/vendor/go.etcd.io/etcd/client/v3/experimental/recipes/double_barrier.go:120 +0x268 fp=0xc03cecccc8 sp=0xc03ceccc20 pc=0x11529e8
go.etcd.io/etcd/client/v3/experimental/recipes.(*DoubleBarrier).Leave(0xc05cec7d68)
	/code/vendor/go.etcd.io/etcd/client/v3/experimental/recipes/double_barrier.go:120 +0x268 fp=0xc03ceccd70 sp=0xc03cecccc8 pc=0x11529e8
go.etcd.io/etcd/client/v3/experimental/recipes.(*DoubleBarrier).Leave(0xc05cec7d68)
	/code/vendor/go.etcd.io/etcd/client/v3/experimental/recipes/double_barrier.go:120 +0x268 fp=0xc03cecce18 sp=0xc03ceccd70 pc=0x11529e8
go.etcd.io/etcd/client/v3/experimental/recipes.(*DoubleBarrier).Leave(0xc05cec7d68)
	/code/vendor/go.etcd.io/etcd/client/v3/experimental/recipes/double_barrier.go:120 +0x268 fp=0xc03ceccec0 sp=0xc03cecce18 pc=0x11529e8
go.etcd.io/etcd/client/v3/experimental/recipes.(*DoubleBarrier).Leave(0xc05cec7d68)
	/code/vendor/go.etcd.io/etcd/client/v3/experimental/recipes/double_barrier.go:120 +0x268 fp=0xc03ceccf68 sp=0xc03ceccec0 pc=0x11529e8
...additional frames elided...
@ahrtr
Copy link
Member

ahrtr commented Oct 20, 2022

@stonever could you share your program to reproduce this issue?

@stonever
Copy link
Author

@stonever could you share your program to reproduce this issue?

what did thehe program do is:

  1. new a double barrier
  2. let 10 clients enter together
  3. let 10 clients leave in turn, the fatal error produced before all clients left

It is occasional, I'm not sure can reproduce this issue.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
Development

Successfully merging a pull request may close this issue.

2 participants