youngoli commented on code in PR #21979:
URL: https://github.com/apache/beam/pull/21979#discussion_r911540966


##########
sdks/go/test/integration/io/fhirio/fhirio_test.go:
##########
@@ -177,6 +178,22 @@ func extractResourcePathFrom(resourceLocationUrl string) 
(string, error) {
        return resourceLocationUrl[startIdx:endIdx], nil
 }
 
+// Useful to prevent flaky results.
+func runWithBackoffRetries(t *testing.T, p *beam.Pipeline) error {

Review Comment:
   I'm still hesitating with this one only because rerunning a pipeline on 
Dataflow is _slow_. This isn't a problem on the Direct runner, but on Dataflow 
rerunning a pipeline is around a 5 minute affair even for a really simple 
pipeline.
   
   So this function will work. In the sense that 5 minutes is definitely going 
to be long enough to fix the flakiness.  But waiting a guaranteed 30 seconds 
before running the pipeline is probably still better overall.
   
   By the way, I should probably mention that tests within a package in Go run 
in sequence by default. So the reason I'm being very conscious of every 
additional integration test in this file is because each one will make the 
entire test suite take ~5 minutes longer to finish (on Dataflow at least).
   
   Anyway, I'm still gonna merge this because this isn't bad enough to block 
anything. But if you can think of any way to fix the flakiness without 
rerunning the whole pipeline it would probably be much better for performance 
on Dataflow.



-- 
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.

To unsubscribe, e-mail: [email protected]

For queries about this service, please contact Infrastructure at:
[email protected]

Reply via email to