Skip to content

[To dev/1.3] [Pipe] Preserve sink exception root causes (#18335) - #18342

Open
Caideyipi wants to merge 2 commits into
apache:dev/1.3from
Caideyipi:cp-8d5da83-dev-1.3
Open

[To dev/1.3] [Pipe] Preserve sink exception root causes (#18335)#18342
Caideyipi wants to merge 2 commits into
apache:dev/1.3from
Caideyipi:cp-8d5da83-dev-1.3

Conversation

@Caideyipi

Copy link
Copy Markdown
Collaborator

Description

Backport #18335 (8d5da83) to dev/1.3.

  • Use Throwable.toString() for root-cause reporting so exceptions with a null message still include their exception type.
  • Preserve the original throwable as the cause of PipeRuntimeSinkCriticalException instances.
  • Add cause-aware constructors to the Pipe runtime exception hierarchy.
  • Add unit coverage for null root-cause messages and preserved cause chains.

The dev/1.3 branch predates the newer master-side Pipe message layer and PipeSinkSubtask constructor shape, so the conflict resolution retains the existing 1.3 log templates and API shape while applying the diagnostic and cause-preservation changes.

Verification

  • PASS: mvn -o -nsu spotless:apply -pl iotdb-core/node-commons,iotdb-core/datanode
  • NOT COMPLETED: mvn -o -nsu -pl iotdb-core/node-commons,iotdb-core/datanode -Dtest=PipeSinkSubtaskTest -Dsurefire.failIfNoSpecifiedTests=false test
    • The local JVM failed native memory allocation in node-commons before the test executed because system virtual memory was exhausted. CI will validate the tests.

This PR has:

  • been self-reviewed.
  • added or modified unit tests to cover the new code paths.

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