kafka-tutorials icon indicating copy to clipboard operation
kafka-tutorials copied to clipboard

add a wait before validating ksqlDB recipe tests relying on table output

Open davetroiano opened this issue 2 years ago • 3 comments

The handful of tests that query table output tend to be flaky due to the async nature of ksqlDB. There's no guarantee that table result are available after corresponding INSERTS. Other recipes that validate via a stream query like "SELECT ... EMIT CHANGES LIMIT n;" aren't susceptible to the same test flakiness since they will block on n rows being emitted..

Description

https://github.com/confluentinc/kafka-tutorials/issues/1328

Staging Docs

N/A

New tutorial checklist

N/A

davetroiano avatar Jul 27 '22 20:07 davetroiano

one data point in favor of sleep mitigation: I am able to repro #1328 locally (on 2 of 6 runs) and with this change I haven't hit it in 6 runs

davetroiano avatar Jul 27 '22 21:07 davetroiano

It would be nice to see these tests pass before committing. If it's blocked by #1327 , perhaps merge and rebase, then rerun this?

ybyzek avatar Jul 28 '22 14:07 ybyzek

It would be nice to see these tests pass before committing. If it's blocked by #1327 , perhaps merge and rebase, then rerun this?

good plan... FWIW I believe that this would eventually pass if I rerun a few times, because we have had recent builds succeed. But my hope is that once we get these two in, we'll see a downtick in flakes.

davetroiano avatar Jul 28 '22 15:07 davetroiano

I stopped build after recipe tests passed

davetroiano avatar Sep 23 '22 15:09 davetroiano