xyueji opened a new pull request, #10679:
URL: https://github.com/apache/seatunnel/pull/10679
### Purpose of this pull request
When StarRocks `stream_load` fails and returns `Status=Fail` with the
message `"Label [xxx] has already been used"`, the current code throws a
`StarRocksConnectorException` without setting `reCreateLabel=true`. This causes
`StarRocksSinkManager.flush()` to keep retrying with the same already-occupied
label, resulting in an infinite loop of the same error.
This fix detects "has already been used" in the failure message and passes
`reCreateLabel=true` to the exception constructor, so that the retry logic in
`StarRocksSinkManager` generates a new UUID label on the next attempt.
### Does this PR introduce _any_ user-facing change?
No. This is a bug fix for an internal retry mechanism. Users will see that
`stream_load` retries now succeed instead of failing infinitely with the same
label.
### How was this patch tested?
Manually tested by reproducing the scenario where StarRocks retains a failed
label. After the fix, the retry uses a new label and completes successfully.
### Check list
* [x] If any new Jar binary package adding in your PR, please add License
Notice according
[New License
Guide](https://github.com/apache/seatunnel/blob/dev/docs/en/contribution/new-license.md)
* [x] If necessary, please update the documentation to describe the new
feature. https://github.com/apache/seatunnel/tree/dev/docs
* [ ] If you are contributing the connector code, please check that the
following files are updated:
1. Update
[plugin-mapping.properties](https://github.com/apache/seatunnel/blob/dev/plugin-mapping.properties)
and add new connector information in it
2. Update the pom file of
[seatunnel-dist](https://github.com/apache/seatunnel/blob/dev/seatunnel-dist/pom.xml)
3. Add ci label in
[label-scope-conf](https://github.com/apache/seatunnel/blob/dev/.github/workflows/labeler/label-scope-conf.yml)
4. Add e2e testcase in
[seatunnel-e2e](https://github.com/apache/seatunnel/tree/dev/seatunnel-e2e/seatunnel-connector-v2-e2e/)
5. Update connector
[plugin_config](https://github.com/apache/seatunnel/blob/dev/config/plugin_config)
* [ ] Update the
[`release-note`](https://github.com/apache/seatunnel/blob/dev/release-note.md).
--
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.
To unsubscribe, e-mail: [email protected]
For queries about this service, please contact Infrastructure at:
[email protected]