shreemaan-abhishek opened a new pull request, #13492:
URL: https://github.com/apache/apisix/pull/13492

   ### Description
   
   The `batch-requests` plugin bounded the total request body size but placed 
no limit on the number of entries in a single `pipeline`, did not bound the 
per-batch `timeout`, and accepted arbitrary undocumented fields on pipeline 
entries. This PR adds those bounds and tightens the request schema:
   
   - Add a `max_pipeline_items` plugin-metadata option (default `1000`) and 
reject a batch whose pipeline exceeds it, so a single request can no longer fan 
out into an unbounded number of internal requests.
   - Add a `minimum` of `1` to the per-batch `timeout` so a non-positive value 
can no longer be configured.
   - Set `additionalProperties: false` on pipeline entries and add the 
already-documented `body` field to the schema, so only documented fields are 
accepted while existing request-body usage keeps working.
   - Fix the swapped `query`/`headers` field descriptions in the schema.
   
   `max_pipeline_items` mirrors the existing `max_body_size` metadata option 
(configurable, with a default applied for both configured and unconfigured 
metadata).
   
   #### Which issue(s) this PR fixes:
   Fixes #
   
   ### Checklist
   
   - [x] I have explained the need for this PR and the problem it solves
   - [x] I have explained the changes or the new features added to this PR
   - [x] I have added tests corresponding to this change
   - [x] I have updated the documentation to reflect this change
   - [ ] I have verified that this change is backward compatible (If not, 
please discuss on the [APISIX mailing 
list](https://github.com/apache/apisix/tree/master#community) first)
   
   #### Backward compatibility note
   
   Deployments that submit more than `1000` pipeline entries in one request 
will now receive a `400`. The limit is configurable via the 
`max_pipeline_items` metadata field. Pipeline entries that previously relied on 
undocumented fields (other than `body`, which is now part of the schema) will 
be rejected.
   


-- 
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