Skip to content

Implement UDP transport for air-gap sink - #17954

Open
Caideyipi wants to merge 9 commits into
masterfrom
air-gap-udp-transport
Open

Implement UDP transport for air-gap sink#17954
Caideyipi wants to merge 9 commits into
masterfrom
air-gap-udp-transport

Conversation

@Caideyipi

Copy link
Copy Markdown
Collaborator

Summary

  • Add tcp/udp transport option and UDP packet size validation for air-gap connector/sink.
  • Send UDP air-gap datagrams with the existing envelope/ACK flow and slice oversized requests.
  • Make the receiver listen on UDP on the air-gap port and keep per UDP client receiver/session state.

Tests

  • mvn -DskipTests spotless:apply -pl iotdb-core/node-commons,iotdb-core/datanode
  • mvn -pl iotdb-core/node-commons -DskipTests compile
  • git diff --check
  • mvn -pl iotdb-core/datanode -Dtest=IoTDBDataRegionAirGapSinkTest,IoTDBAirGapReceiverTest test (fails during existing datanode compilation: missing parser/generated/calc/consensus symbols such as AlterTopicContext, ComparatorChain, PERCENTILE, and IStateMachine.loadSnapshot return mismatch)

@codecov

codecov Bot commented Jun 16, 2026

Copy link
Copy Markdown

Codecov Report

❌ Patch coverage is 55.41126% with 103 lines in your changes missing coverage. Please review.
✅ Project coverage is 44.10%. Comparing base (89d4fbb) to head (0edcf5f).
⚠️ Report is 1 commits behind head on master.

Files with missing lines Patch % Lines
...iver/protocol/airgap/IoTDBAirGapReceiverAgent.java 5.76% 49 Missing ⚠️
.../receiver/protocol/airgap/IoTDBAirGapReceiver.java 35.29% 33 Missing ⚠️
...db/commons/pipe/sink/protocol/IoTDBAirGapSink.java 84.61% 18 Missing ⚠️
...er/protocol/thrift/IoTDBDataNodeReceiverAgent.java 62.50% 3 Missing ⚠️
Additional details and impacted files
@@             Coverage Diff              @@
##             master   #17954      +/-   ##
============================================
+ Coverage     43.91%   44.10%   +0.19%     
  Complexity      377      377              
============================================
  Files          5406     5406              
  Lines        389355   389557     +202     
  Branches      50871    50896      +25     
============================================
+ Hits         170974   171809     +835     
+ Misses       218381   217748     -633     

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

# Conflicts:
#	iotdb-core/node-commons/src/main/java/org/apache/iotdb/commons/pipe/sink/protocol/IoTDBAirGapSink.java
…-udp-transport

# Conflicts:
#	iotdb-core/datanode/src/main/java/org/apache/iotdb/db/pipe/receiver/protocol/airgap/IoTDBAirGapReceiver.java
#	iotdb-core/datanode/src/test/java/org/apache/iotdb/db/pipe/receiver/protocol/airgap/IoTDBAirGapReceiverTest.java
@sonarqubecloud

Copy link
Copy Markdown

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