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]

Reply via email to