You can not select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
3.8.3-patch
main
dependabot/go_modules/golang.org/x/image-0.41.0
dependabot/go_modules/github.com/aws/aws-sdk-go-v2/aws/protocol/eventstream-1.7.8
dependabot/go_modules/github.com/aws/aws-sdk-go-v2/service/s3-1.97.3
dependabot/go_modules/go.opentelemetry.io/otel-1.41.0
dependabot/go_modules/go.mongodb.org/mongo-driver-1.17.7
pre-release-v3.8.4
3.8.3-patch-bak
release-v3.8.3
changelog-v3.8.3
changelog-v3.8.2
release-v3.8.2
v3.8-js-sdk-only
js-server
release-v3.8
release-v3.8.1
coderwander-main
release-v3.7
release-v3.3
release-v3.2
release-v3.1
release-v3.6
release-v3.5
release-v3.4
release-v3.0
test/release-v3.3
test-v2.3.0release
test-develop
test-v3dev1
test-errcode
v3.8.3-patch.16
v3.8.3-patch.15
v3.8.3-patch.14
v3.8.3-patch.13
v3.8.3-patch.12
v3.8.3-patch.11
v3.8.3-patch.10
v3.8.3-patch.9
v3.8.3-patch.8
v3.8.3-patch.7
v3.8.3-patch.6
v3.6.1-beta.0
v3.6.0
v3.5.1-rc.1
v3.5.0
v3.5.1
v3.5.1-bate.1
v3.5.1-rc.0
v3.5.0-rc.8
v3.5.0-rc.7
v3.5.0-rc.6
v3.5.0-rc.5
v3.5.0-rc.4
v3.4.2
v3.5.0-rc.3
v3.5.0-rc.2
v3.5.0-rc.1
v3.5.0-rc.0
v3.5.0-beta.1
v3.4.0
v3.4.0-rc.1
v3.4.0-rc.0
v3.3.3-rc.5
v3.3.3-rc.4
v3.3.3-rc.3
v3.3.3-rc.2
v3.3.3-rc.1
v3.3.3-rc.0
v3.3.3-bate.4
v3.3.3-beta.1
v3.3.3-beta.0
v3.3.2
v3.3.1
v3.3.1-beta.0
v3.3.0-rc.1
v3.3.0
v3.3.0-rc.0
v3.2.2
v3.3.0-beta.4
v3.3.0-beta.3
v3.3.0-beta.2
v3.3.0-beta.1
v3.3.0-beta.0
v1.3.0-alpha.4
v3.3.0-alpha.3
v3.3.0-alpha.2
v3.3.0-alpha.1
v3.2.2-beta.4
v3.2.2-beta.3
v3.2.2-beta.2
v3.2.1
v3.2.0
v3.2.2-beta.1
v3.2.2-beta.0
v3.2.1-beta.5
v3.2.1-beta.4
v3.1.2-beta.3
v3.1.2-beta.2
v3.1.2-beta.1
v3.1.2-beta.0
v3.1.1-beta.4
v3.1.1-beta.3
v3.1.1-beta.2
v3.1.1-beta.1
v3.1.1-alpha.3
v3.1.1-alpha.2
v3.1.1-alpha.1
v3.1.0
v3.0.1-beta.6
v3.0.1-beta.5
v3.0.1-beta.4
v3.0.1-beta.3
v3.0.1-beta.2
v3.0.1-beta.1
v3.0.0
v3.0.0-rc.2
v3.0.0-alpha.1
v3.0.0-alpha.0
v1.0.0
v1.0.1
v1.0.3
v1.0.4
v1.0.5
v1.0.6
v1.0.7
v2.0.0
v2.0.1
v2.0.10
v2.0.2
v2.0.3
v2.0.5
v2.0.6
v2.0.7
v2.0.8
v2.0.9
v2.04
v2.1.0
v2.2.0
v2.3.0-rc0
v2.3.0-rc1
v2.3.0-rc2
v2.3.2
v2.3.3
v3.2.0-alpha.0
v3.2.0-rc.0
v3.2.2-alpha.0
v3.3.3-beta.2
v3.5.1-alpha.1
v3.5.1-alpha.2
v3.7.0
v3.7.1
v3.8.0
v3.8.0-rc.0
v3.8.0-rc.1
v3.8.1
v3.8.1-rc.1
v3.8.1-rc.2
v3.8.1-rc.3
v3.8.1-rc.4
v3.8.2
v3.8.2-alpha.1
v3.8.2-alpha.2
v3.8.3
v3.8.3-alpha.1
v3.8.3-alpha.2
v3.8.3-alpha.3
v3.8.3-patch.1
v3.8.3-patch.2
v3.8.3-patch.3
v3.8.3-patch.4
v3.8.3-patch.5
v3.8.4-alpha.1
${ noResults }
* pkg/tools/batcher: stop scheduler panicking when b.data is closed externally
scheduler()'s defer unconditionally calls close(b.data). If the channel
was closed by the caller (or an upstream producer) instead of via the
normal Close()-sends-nil path, the receive on b.data returns ok == false,
scheduler returns, and the deferred close(b.data) then fires on an
already-closed channel:
panic: close of closed channel
reliably reproducible under the #3653 steps (manually closing b.data
while Start() is running).
Track whether we observed the external-close via a local
`externallyClosed` flag set in the `ok == false` branch. The defer
only closes b.data when that flag is false, i.e. when the scheduler
exited through the nil-message or ticker paths and still owns the
channel. No behaviour change on the graceful Close() path.
Fixes #3653
* ci: retrigger after transient gha outage
Signed-off-by: SAY-5 <say.apm35@gmail.com>
---------
Signed-off-by: SAY-5 <say.apm35@gmail.com>
(cherry picked from commit
|
3 weeks ago | |
|---|---|---|
| .. | ||
| batcher.go | pkg/tools/batcher: stop scheduler panicking when b.data is closed externally (#3714) | 3 weeks ago |
| batcher_test.go | refactor: db cache batch refactor and batch consume message. (#2325) | 2 years ago |