Skip to content

Fix partial insert handling for null measurements#17879

Merged
jt2594838 merged 6 commits into
masterfrom
fix-partial-insert-null-columns
Jun 11, 2026
Merged

Fix partial insert handling for null measurements#17879
jt2594838 merged 6 commits into
masterfrom
fix-partial-insert-null-columns

Conversation

@Caideyipi

Copy link
Copy Markdown
Collaborator

Summary:

  • Skip failed/null measurements and null tablet columns consistently in insert serialization, split, WAL, memtable, memory estimation, and pipe tablet parsing/conversion paths.
  • Keep null row values during pipe row type transfer and avoid composing last-cache values for null retained row/tablet values.
  • Add regression coverage for partial insert, null column/value, table non-FIELD columns, pipe parser/converter, and memory estimation paths.

Tests:

  • mvn -pl iotdb-core/datanode spotless:apply
  • git diff --check
  • Narrow datanode test lifecycle could not complete locally after recreating the branch on master: single-module compile first hit missing generated upstream classes, then -am compile rebuilt upstream modules but failed on Windows pagefile/native memory while compiling thrift-datanode. Before recreating the branch, the same narrow Surefire regression suite passed with 99 tests.

@jt2594838 jt2594838 left a comment

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Use a unified entry point to make null-related judgments instead of scattering them around.

@sonarqubecloud

Copy link
Copy Markdown

@codecov

codecov Bot commented Jun 11, 2026

Copy link
Copy Markdown

Codecov Report

❌ Patch coverage is 80.00000% with 182 lines in your changes missing coverage. Please review.
✅ Project coverage is 40.92%. Comparing base (3d98ea5) to head (86cf3aa).
⚠️ Report is 14 commits behind head on master.

Files with missing lines Patch % Lines
...ine/plan/statement/crud/InsertTabletStatement.java 55.84% 34 Missing ⚠️
...engine/plan/statement/crud/InsertRowStatement.java 54.28% 32 Missing ⚠️
...ngine/plan/statement/crud/InsertBaseStatement.java 81.57% 21 Missing ⚠️
...plan/planner/plan/node/write/InsertTabletNode.java 86.04% 18 Missing ⚠️
...er/plan/node/write/RelationalInsertTabletNode.java 71.42% 12 Missing ⚠️
...ne/plan/planner/plan/node/write/InsertRowNode.java 88.63% 10 Missing ⚠️
...ngine/plan/planner/plan/node/write/InsertNode.java 68.00% 8 Missing ⚠️
.../iotdb/db/trigger/executor/TriggerFireVisitor.java 74.07% 7 Missing ⚠️
...ueryengine/plan/relational/sql/ast/InsertRows.java 0.00% 6 Missing ⚠️
...roker/consensus/ConsensusLogToTabletConverter.java 76.00% 6 Missing ⚠️
... and 12 more
Additional details and impacted files
@@             Coverage Diff              @@
##             master   #17879      +/-   ##
============================================
+ Coverage     40.85%   40.92%   +0.07%     
+ Complexity     2611      318    -2293     
============================================
  Files          5201     5245      +44     
  Lines        354010   363664    +9654     
  Branches      45313    46964    +1651     
============================================
+ Hits         144626   148841    +4215     
- Misses       209384   214823    +5439     

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

@jt2594838 jt2594838 merged commit feaeaa6 into master Jun 11, 2026
43 of 44 checks passed
@jt2594838 jt2594838 deleted the fix-partial-insert-null-columns branch June 11, 2026 06:31
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.

2 participants