Add join operator implementation, fix the problem in join logical planner and distributed planner
Description
As the title, see the key changed classes for more details.
- iotdb-core/datanode/src/main/java/org/apache/iotdb/db/queryengine/execution/operator/source/relational/InnerJoinOperator.java
- iotdb-core/datanode/src/main/java/org/apache/iotdb/db/queryengine/plan/relational/planner/optimizations/PushPredicateIntoTableScan.java
Integration test is shown in: integration-test/src/test/java/org/apache/iotdb/relational/it/db/it/IoTDBMultiIDsWithAttributesTableIT.java
This PR has:
- [x] been self-reviewed.
- [ ] concurrent read
- [ ] concurrent write
- [ ] concurrent read and write
- [ ] added documentation for new or modified features or behaviors.
- [x] added Javadocs for most classes and all non-trivial methods.
- [x] added or updated version, license, or notice information
- [x] added comments explaining the "why" and the intent of the code wherever would not be obvious for an unfamiliar reader.
- [x] added unit tests or modified existing tests to cover new code paths, ensuring the threshold for code coverage.
- [x] added integration tests.
- [X] been tested in a test IoTDB cluster.
Key changed/added classes (or packages if there are too many classes) in this PR
- JoinOperator
Codecov Report
Attention: Patch coverage is 30.34826% with 280 lines in your changes missing coverage. Please review.
Project coverage is 41.69%. Comparing base (
3f922e7) to head (68e6d8f). Report is 16 commits behind head on master.
Additional details and impacted files
@@ Coverage Diff @@
## master #13529 +/- ##
============================================
- Coverage 41.77% 41.69% -0.09%
Complexity 71 71
============================================
Files 3978 3983 +5
Lines 247469 247847 +378
Branches 29962 30033 +71
============================================
- Hits 103377 103331 -46
- Misses 144092 144516 +424
:umbrella: View full report in Codecov by Sentry.
:loudspeaker: Have feedback on the report? Share it here.
Quality Gate failed
Failed conditions
C Reliability Rating on New Code (required ≥ A)
See analysis details on SonarCloud
Catch issues before they fail your Quality Gate with our IDE extension
SonarLint