Skip to content

Throttle async pipe sink on receiver reject#17928

Open
Caideyipi wants to merge 1 commit into
masterfrom
fix-pipe-receiver-backpressure
Open

Throttle async pipe sink on receiver reject#17928
Caideyipi wants to merge 1 commit into
masterfrom
fix-pipe-receiver-backpressure

Conversation

@Caideyipi

Copy link
Copy Markdown
Collaborator

Summary

  • add per-receiver endpoint backoff in the async data region pipe sink when the receiver reports temporary unavailable/write reject
  • record receiver status in the common async transfer handler and wait before subsequent sends to the same endpoint
  • cover the common handler behavior with a focused unit test

Tests

  • mvn "-Ddevelocity.off=true" spotless:apply -pl iotdb-core/datanode
  • git diff --check
  • mvn "-Ddevelocity.off=true" -pl iotdb-core/datanode "-Dtest=PipeTransferTrackableHandlerTest" test (fails during existing datanode compile errors unrelated to this change, e.g. missing PipePeriodicalLogReducer, parser identifier(), CalcMessages fields)

@sonarqubecloud

Copy link
Copy Markdown

@codecov

codecov Bot commented Jun 12, 2026

Copy link
Copy Markdown

Codecov Report

❌ Patch coverage is 14.77273% with 75 lines in your changes missing coverage. Please review.
✅ Project coverage is 41.03%. Comparing base (aec7dfb) to head (b20b487).
⚠️ Report is 1 commits behind head on master.

Files with missing lines Patch % Lines
...rotocol/thrift/async/IoTDBDataRegionAsyncSink.java 3.12% 62 Missing ⚠️
...ft/async/handler/PipeTransferTrackableHandler.java 45.83% 13 Missing ⚠️
Additional details and impacted files
@@             Coverage Diff              @@
##             master   #17928      +/-   ##
============================================
- Coverage     41.04%   41.03%   -0.01%     
  Complexity      318      318              
============================================
  Files          5252     5252              
  Lines        364388   364465      +77     
  Branches      47096    47116      +20     
============================================
- Hits         149551   149548       -3     
- Misses       214837   214917      +80     

☔ View full report in Codecov by Harness.
📢 Have feedback on the report? Share it here.

🚀 New features to boost your workflow:
  • ❄️ Test Analytics: Detect flaky tests, report on failures, and find test suite problems.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant