Skip to content

[INLONG-12199][SDK] Fix the issue where sending on an already-closed channel during shutdown causes a panic in Dataproxy Go SDK - #12206

Open
yfsn666 wants to merge 1 commit into
apache:masterfrom
yfsn666:INLONG-12199
Open

[INLONG-12199][SDK] Fix the issue where sending on an already-closed channel during shutdown causes a panic in Dataproxy Go SDK#12206
yfsn666 wants to merge 1 commit into
apache:masterfrom
yfsn666:INLONG-12199

Conversation

@yfsn666

@yfsn666 yfsn666 commented Aug 28, 2026

Copy link
Copy Markdown
Contributor

Fixes #12199

Motivation

In the Dataproxy Go SDK, sending on the already-closed sendFailedBatches, retryBatches, or responseBatches channels during shutdown can raise a "send on closed channel" panic and crash the process.

Modifications

Introduced a safeSend helper that recovers from the closed-channel panic when sending on these channels, and marks the batch as done to release its resources when the send fails.

Verifying this change

(Please pick either of the following options)

  • This change is a trivial rework/code cleanup without any test coverage.

  • This change is already covered by existing tests, such as:
    (please describe tests)

  • This change added tests and can be verified as follows:

    (example:)

    • Added integration tests for end-to-end deployment with large payloads (10MB)
    • Extended integration test for recovery after broker failure

Documentation

  • Does this pull request introduce a new feature? no

…channel during shutdown causes a panic in Dataproxy Go SDK
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Projects

None yet

Development

Successfully merging this pull request may close these issues.

[Improve][SDK] Fix panic on sending to a closed channel during shutdown in the DataProxy Go SDK

1 participant