[ https://issues.apache.org/jira/browse/BEAM-1763?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]
Aviem Zur updated BEAM-1763: ---------------------------- Description: This doesn't need to be part of each {{PipelineRunner}} implementation if it goes through the {{PipelineResult}} APIs. The assertion can be of the form that if the Pipeline is finished, then the number of successful assertions is equal to the total number of assertions. Suggested solution: For runners which support metrics, use the counters for successful/failed assertions and compare them to expected number of assertions. For runners which do not support metrics consider implementing a fallback solution: {{PAssert}} will write to temp files, which will be placed in the test's {{tempLocation}} ({{file}} in local mode, {{gs/hdfs}} in cluster mode). These temp files' names will include a UUID generated for each test, this UUID will be accessible to {{PAssert}} or the text sink. Successful assertion count and failed assertion count + exceptions will be written to text files which will then be accessible to {{TestPipeline}} to assert on. was: This doesn't need to be part of each {{PipelineRunner}} implementation if it goes through the {{PipelineResult}} APIs. The assertion can be of the form that if the Pipeline is finished, then the number of successful assertions is equal to the total number of assertions. Suggested solution: For runners which support metrics, use the counters for successful/failed assertions and compare them to expected number of assertions. For runners which do not support metrics consider this solution: {{PAssert}} will write to temp files, which will be placed in the test's {{tempLocation}} ({{file}} in local mode, {{gs/hdfs}} in cluster mode). These temp files' names will include a UUID generated for each test, this UUID will be accessible to {{PAssert}} or the text sink. Successful assertion count and failed assertion count + exceptions will be written to text files which will then be accessible to {{TestPipeline}} to assert on. > TestPipeline should ensure that all assertions succeeded > -------------------------------------------------------- > > Key: BEAM-1763 > URL: https://issues.apache.org/jira/browse/BEAM-1763 > Project: Beam > Issue Type: Improvement > Components: sdk-java-core > Reporter: Thomas Groh > Priority: Blocker > Fix For: First stable release > > > This doesn't need to be part of each {{PipelineRunner}} implementation if it > goes through the {{PipelineResult}} APIs. The assertion can be of the form > that if the Pipeline is finished, then the number of successful assertions is > equal to the total number of assertions. > Suggested solution: > For runners which support metrics, use the counters for successful/failed > assertions and compare them to expected number of assertions. > For runners which do not support metrics consider implementing a fallback > solution: > {{PAssert}} will write to temp files, which will be placed in the test's > {{tempLocation}} ({{file}} in local mode, {{gs/hdfs}} in cluster mode). These > temp files' names will include a UUID generated for each test, this UUID will > be accessible to {{PAssert}} or the text sink. > Successful assertion count and failed assertion count + exceptions will be > written to text files which will then be accessible to {{TestPipeline}} to > assert on. -- This message was sent by Atlassian JIRA (v6.3.15#6346)