Skip to content

Add SHOW RECEIVERS support#17869

Open
Caideyipi wants to merge 44 commits into
masterfrom
feat/show-receivers
Open

Add SHOW RECEIVERS support#17869
Caideyipi wants to merge 44 commits into
masterfrom
feat/show-receivers

Conversation

@Caideyipi

Copy link
Copy Markdown
Collaborator

Summary

  • add tree-model SHOW RECEIVERS and table-model information_schema.receivers support
  • track active pipe receiver sessions, sender endpoints, pipe IDs, handshake/transfer timestamps, and request counts
  • wire DataNode/ConfigNode thrift and air-gap receiver runtime recording

Tests

  • mvn "-Ddevelocity.off=true" -pl iotdb-core/node-commons -Dtest=PipeReceiverRuntimeRegistryTest test
  • mvn "-Ddevelocity.off=true" -DskipTests compile -pl iotdb-core/antlr,iotdb-core/relational-grammar,iotdb-core/node-commons,iotdb-core/confignode
  • mvn "-Ddevelocity.off=true" -DskipTests spotless:check -pl iotdb-core/node-commons,iotdb-core/datanode,iotdb-core/confignode,iotdb-core/relational-grammar,iotdb-core/antlr
  • git diff --check

Notes

  • DataNode focused compile is still blocked by unrelated generated Freemarker/calc symbols such as IFill, LinearFill, Accumulator, ComparatorChain, and IoTDBConfig.getModeMapSizeThreshold().
  • ConfigNode receiver records proxied through DataNode use receiver_node_id = -1 because the current proxy path does not expose the exact target ConfigNode id.

@Caideyipi Caideyipi marked this pull request as ready for review June 11, 2026 10:46
@codecov

codecov Bot commented Jun 11, 2026

Copy link
Copy Markdown

Codecov Report

❌ Patch coverage is 58.65031% with 337 lines in your changes missing coverage. Please review.
✅ Project coverage is 41.86%. Comparing base (611b66a) to head (9fa79cc).
⚠️ Report is 7 commits behind head on master.

Files with missing lines Patch % Lines
...eceiver/protocol/thrift/IoTDBDataNodeReceiver.java 10.92% 106 Missing ⚠️
...mmons/pipe/sink/client/IoTDBSyncClientManager.java 0.00% 42 Missing ⚠️
...b/queryengine/plan/planner/LogicalPlanBuilder.java 0.00% 24 Missing ⚠️
...ipe/receiver/protocol/IoTDBConfigNodeReceiver.java 0.00% 22 Missing ⚠️
...db/pipe/sink/protocol/writeback/WriteBackSink.java 62.00% 19 Missing ⚠️
...db/db/queryengine/plan/analyze/AnalyzeVisitor.java 0.00% 18 Missing ⚠️
...ueryengine/plan/planner/OperatorTreeGenerator.java 0.00% 13 Missing ⚠️
...ecution/operator/source/ShowReceiversOperator.java 83.60% 10 Missing ⚠️
...an/planner/plan/node/source/ShowReceiversNode.java 54.54% 10 Missing ⚠️
...ion/config/executor/ClusterConfigTaskExecutor.java 18.18% 9 Missing ⚠️
... and 21 more
Additional details and impacted files
@@             Coverage Diff              @@
##             master   #17869      +/-   ##
============================================
- Coverage     41.88%   41.86%   -0.02%     
  Complexity      318      318              
============================================
  Files          5297     5305       +8     
  Lines        374168   375281    +1113     
  Branches      48302    48441     +139     
============================================
+ Hits         156726   157130     +404     
- Misses       217442   218151     +709     

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

Caideyipi added 16 commits June 16, 2026 18:54
# Conflicts:
#	iotdb-core/datanode/src/test/java/org/apache/iotdb/db/pipe/receiver/protocol/thrift/IoTDBDataNodeReceiverTest.java
# Conflicts:
#	iotdb-core/relational-grammar/src/main/antlr4/org/apache/iotdb/db/relational/grammar/sql/RelationalSql.g4
…ow-receivers

# Conflicts:
#	iotdb-core/datanode/src/main/java/org/apache/iotdb/db/pipe/sink/protocol/writeback/WriteBackSink.java
#	iotdb-core/datanode/src/main/java/org/apache/iotdb/db/queryengine/plan/parser/ASTVisitor.java
#	iotdb-core/datanode/src/main/java/org/apache/iotdb/db/queryengine/plan/relational/security/TreeAccessCheckVisitor.java
#	iotdb-core/datanode/src/main/java/org/apache/iotdb/db/queryengine/plan/statement/StatementVisitor.java
#	iotdb-core/datanode/src/test/java/org/apache/iotdb/db/pipe/sink/PipeSinkTest.java
# Conflicts:
#	iotdb-core/confignode/src/main/java/org/apache/iotdb/confignode/manager/pipe/receiver/protocol/IoTDBConfigNodeReceiver.java
#	iotdb-core/datanode/src/main/java/org/apache/iotdb/db/pipe/receiver/protocol/thrift/IoTDBDataNodeReceiver.java
#	iotdb-core/node-commons/src/main/java/org/apache/iotdb/commons/pipe/receiver/IoTDBFileReceiver.java
@sonarqubecloud

sonarqubecloud Bot commented Jul 9, 2026

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