goutamadwant opened a new pull request, #11738:
URL: https://github.com/apache/seatunnel/pull/11738
### Purpose of this pull request
Part of #11007.
This PR migrates the existing Prometheus sink `batch_size` validation to the
declarative `OptionRule` path.
- Require `batch_size` to be greater than zero in `PrometheusSinkFactory`.
- Remove the redundant imperative check from `PrometheusSinkConfig`.
- Add focused tests covering positive, zero, and negative values.
### Does this PR introduce _any_ user-facing change?
Yes.
Invalid Prometheus sink `batch_size` values are now rejected during option
validation with a structured validation error. The accepted range remains
unchanged and valid configurations are not affected.
### How was this patch tested?
Added factory validation tests covering:
- A positive `batch_size` is accepted.
- A zero `batch_size` is rejected.
- A negative `batch_size` is rejected.
- Validation errors identify the `batch_size` option.
Verified the complete Prometheus connector module with Java 11:
```shell
./mvnw -pl seatunnel-connectors-v2/connector-prometheus package
```
Result: 4 tests passed. Spotless, compilation, tests, and packaging
completed successfully.
### Check list
No checklist item below applies because this change does not add a new
binary or connector, require documentation or distribution changes, or
introduce an incompatibility.
* [ ] 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/developer/new-license.md)
* [ ] If necessary, please update the documentation to describe the new
feature. https://github.com/apache/seatunnel/tree/dev/docs
* [ ] If necessary, please update `incompatible-changes.md` to describe the
incompatibility caused by this PR.
* [ ] 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/)
5. Update connector
[plugin_config](https://github.com/apache/seatunnel/blob/dev/config/plugin_config)
--
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]