xiangfu0 opened a new pull request, #18784:
URL: https://github.com/apache/pinot/pull/18784

   ## Summary
   - Add server ingestion OOM protection under 
`ingestionConfig.streamIngestionConfig.serverIngestionOomProtectionConfig`.
   - Apply server-local backpressure to realtime consume loops when heap usage 
exceeds the configured threshold; default server policy is enabled for upsert 
realtime tables.
   - Add server metrics, table config validation, serialization coverage, and 
an upsert quickstart sample/manual note.
   
   ## User manual / sample config
   Server-level defaults are documented in 
`pinot-tools/src/main/resources/examples/stream/upsertMeetupRsvp/README.md`, 
including:
   
   ```properties
   pinot.server.instance.ingestion.oom.protection.enabled=true
   
pinot.server.instance.ingestion.oom.protection.table.selection.mode=UPSERT_ONLY
   pinot.server.instance.ingestion.oom.protection.heap.usage.threshold=0.85
   pinot.server.instance.ingestion.oom.protection.heap.recovery.threshold=0.75
   pinot.server.instance.ingestion.oom.protection.check.interval.ms=1000
   ```
   
   The upsert meetup realtime table config now includes this table override 
sample:
   
   ```json
   "serverIngestionOomProtectionConfig": {
     "mode": "DEFAULT",
     "heapUsageThreshold": 0.9,
     "heapRecoveryThreshold": 0.8
   }
   ```
   
   ## Testing
   - `./mvnw -pl pinot-core -am -Dtest=ServerIngestionOomProtectionManagerTest 
-Dsurefire.failIfNoSpecifiedTests=false test`
   - `./mvnw spotless:apply -pl 
pinot-spi,pinot-common,pinot-segment-local,pinot-core,pinot-tools`
   - `./mvnw license:format license:check checkstyle:check -pl 
pinot-spi,pinot-common,pinot-segment-local,pinot-core,pinot-tools`
   - `git diff --check`
   - `git diff --cached --check`


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


---------------------------------------------------------------------
To unsubscribe, e-mail: [email protected]
For additional commands, e-mail: [email protected]

Reply via email to