[ https://issues.apache.org/jira/browse/BEAM-1777?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=15952626#comment-15952626 ]
ASF GitHub Bot commented on BEAM-1777: -------------------------------------- GitHub user staslev opened a pull request: https://github.com/apache/beam/pull/2403 [BEAM-1777] In certain circumstances PipelineEnforcement shades exceptions. …ine's exceptions. Be sure to do all of the following to help us incorporate your contribution quickly and easily: - [ ] Make sure the PR title is formatted like: `[BEAM-<Jira issue #>] Description of pull request` - [ ] Make sure tests pass via `mvn clean verify`. (Even better, enable Travis-CI on your fork and ensure the whole test matrix passes). - [ ] Replace `<Jira issue #>` in the title with the actual Jira issue number, if there is one. - [ ] If this contribution is large, please file an Apache [Individual Contributor License Agreement](https://www.apache.org/licenses/icla.txt). --- You can merge this pull request into a Git repository by running: $ git pull https://github.com/staslev/beam BEAM-1777-PipelineEnforcement-shades-run-exceptions Alternatively you can review and apply these changes as the patch at: https://github.com/apache/beam/pull/2403.patch To close this pull request, make a commit to your master/trunk branch with (at least) the following in the commit message: This closes #2403 ---- commit 5ecf911f2f826594d829d4820c5e26e6705b8afe Author: Stas Levin <stasle...@apache.org> Date: 2017-04-02T11:09:43Z [BEAM-1777] In certain circumstances PipelineEnforcement shades pipeline's exceptions. ---- > If PipelineEnforcement throws an exception after Pipeline.run() fails, it > overwrites the original failure > --------------------------------------------------------------------------------------------------------- > > Key: BEAM-1777 > URL: https://issues.apache.org/jira/browse/BEAM-1777 > Project: Beam > Issue Type: Bug > Components: sdk-java-core > Reporter: Thomas Groh > Assignee: Stas Levin > > The exception is thrown out of the finally block after the original exception > was already thrown, and is not properly suppressed. > If the Pipeline throws an exception in construction (including validation > failures), this can cause {{AbandonedNodeEnforcement}} to attempt to traverse > a {{Pipeline}} which is invalid, which throws another exception. That > exception is improperly propagated instead of the original failure, which > complicates debugging. > An example is using an unkeyed input PCollection to a Stateful ParDo. The > validation will fail, but the error message will suggest that a node has > incompletely specified outputs (which is a consequence rather than a cause of > having an invalid transform). -- This message was sent by Atlassian JIRA (v6.3.15#6346)