Skip to content

Commit 69b25f5

Browse files
committed
fix(#1315): retry observation_flat row-count to avoid timing flake
1 parent d479dd0 commit 69b25f5

File tree

1 file changed

+23
-2
lines changed

1 file changed

+23
-2
lines changed

e2e-tests/controller-spark/controller_spark_sql_validation.sh

Lines changed: 23 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -251,8 +251,29 @@ function check_parquet() {
251251
"${output}/*/VIEWS_TIMESTAMP_*/patient_flat/" | awk '{print $3}')
252252
local total_encounter_flat=$(java -Xms16g -Xmx16g -jar ./parquet-tools-1.11.1.jar rowcount \
253253
"${output}/*/VIEWS_TIMESTAMP_*/encounter_flat/" | awk '{print $3}')
254-
local total_obs_flat=$(java -Xms16g -Xmx16g -jar ./parquet-tools-1.11.1.jar rowcount \
255-
"${output}/*/VIEWS_TIMESTAMP_*/observation_flat/" | awk '{print $3}')
254+
255+
# --- BEGIN: retry loop for observation_flat flake (#1315) -----------------
256+
local retries=0
257+
local max_retries=5
258+
local sleep_secs=5
259+
local total_obs_flat
260+
while true; do
261+
total_obs_flat=$(java -Xms16g -Xmx16g -jar ./parquet-tools-1.11.1.jar rowcount \
262+
"${output}/*/VIEWS_TIMESTAMP_*/observation_flat/" | awk '{print $3}')
263+
264+
if [[ "$total_obs_flat" -eq "$TOTAL_TEST_OBS" ]]; then
265+
break
266+
fi
267+
268+
if [[ $retries -ge $max_retries ]]; then
269+
break
270+
fi
271+
272+
retries=$((retries + 1))
273+
print_message "Observation_flat count ($total_obs_flat) != expected ($TOTAL_TEST_OBS) – retry ${retries}/${max_retries} in ${sleep_secs}s"
274+
sleep "$sleep_secs"
275+
done
276+
# --- END: retry loop -------------------------------------------------------
256277

257278
print_message "Total patients: $total_patients"
258279
print_message "Total encounters: $total_encounters"

0 commit comments

Comments
 (0)