Skip to content

issue #7338 : Pipeline fails to open error-handling hop#7360

Merged
hansva merged 1 commit into
apache:mainfrom
mattcasters:issue-7338
Jun 29, 2026
Merged

issue #7338 : Pipeline fails to open error-handling hop#7360
hansva merged 1 commit into
apache:mainfrom
mattcasters:issue-7338

Conversation

@mattcasters

Copy link
Copy Markdown
Contributor

Walkthrough - XML Deserialization Lookup Graceful Failure (Issue 7338)

We fixed an issue where loading a pipeline XML file failed with a fatal exception if an error-handling configuration referenced a target transform name that no longer exists in the pipeline (or was deleted). We changed the deserialization process to handle missing references gracefully.

Changes Made

Core Metadata Serialization

  • Modified XmlMetadataUtil.java:
    • In deSerializeXmlUsingNamedList(...), removed the throwing of HopXmlException when a referenced object name (e.g., in a named list such as transforms or workflowActions) cannot be found.
    • Instead, the method now returns null, allowing the deserialization of the parent object to finish successfully, setting the missing reference field to null.

Core Engine Tests

  • Added a new unit test testIssue7338() to PipelineMetaTest.java:
    • Defines an XML pipeline with an error handling block that points to a non-existent transform NonExistentTransform.
    • Asserts that parsing this XML completes successfully, the pipeline is loaded, and the target transform field resolves to null without throwing a fatal deserialization error.

Verification & Testing

Compilation & Tests

  • Successfully ran Spotless formatting check:
    ./mvnw spotless:check -pl core,engine
  • Executed unit tests for core and engine modules, with all 584 tests passing successfully:
    ./mvnw test -pl core,engine
  • Executed transform integration tests successfully (exit code 0):
    integration-tests/scripts/run-tests.sh transforms

… references a non-existent transform (misleading TransformErrorMeta error)
@hansva hansva merged commit d4343a7 into apache:main Jun 29, 2026
3 checks passed
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