Skip to content

Commit 87d5288

Browse files
authored
Merge pull request #1800 from cmu-delphi/fix_runner
FlaSH Timeout Code in Runner not running FlaSH
2 parents 0792e19 + dd94d35 commit 87d5288

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

69 files changed

+203
-103211
lines changed

_delphi_utils_python/delphi_utils/flash_eval/eval_day.py

+181-105
Large diffs are not rendered by default.

_delphi_utils_python/delphi_utils/runner.py

+12-8
Original file line numberDiff line numberDiff line change
@@ -3,7 +3,8 @@
33
import importlib
44
import os
55
from typing import Any, Callable, Dict, Optional
6-
import threading
6+
import multiprocessing
7+
import time
78
from .archive import ArchiveDiffer, archiver_from_params
89
from .logger import get_structured_logger
910
from .utils import read_params, transfer_files, delete_move_files
@@ -66,13 +67,16 @@ def run_indicator_pipeline(indicator_fn: Callable[[Params], None],
6667
validator = validator_fn(params)
6768
archiver = archiver_fn(params)
6869

69-
t = threading.Timer(timer, flash_fn, args=[params])
70-
t.start()
71-
t.join(timer)
72-
if t.is_alive():
73-
t.cancel()
74-
t.join()
75-
70+
t1 = multiprocessing.Process(target=flash_fn, args=[params])
71+
t1.start()
72+
start = time.time()
73+
while time.time()-start < timer:
74+
if not t1.is_alive():
75+
break
76+
time.sleep(10)
77+
else:
78+
t1.terminate()
79+
t1.join()
7680
if validator:
7781
validation_report = validator.validate()
7882
validation_report.log(logger)

_delphi_utils_python/tests/flash/test_eval_day.py

+2-2
Original file line numberDiff line numberDiff line change
@@ -12,9 +12,9 @@ def test_flash_input():
1212

1313
lag = 1
1414
day = pd.to_datetime("1/1/2023", format="%m/%d/%Y")
15-
signal = 'confirmed_incidence_num'
15+
signal = './confirmed_incidence_num'
1616
params = {'flash': {'support':[0,1]}}
1717
initial_7_day_file = pd.read_csv(f'flash_ref/{signal}/last_7_1.csv',
1818
index_col=0, parse_dates=[0], header=0)
19-
flash_eval(lag, day, input_df, signal, params, logger=mock_logger)
19+
last_7, type_of_outlier = flash_eval(lag, day, input_df, signal, params, logger=mock_logger, local=True)
2020
initial_7_day_file.to_csv(f'flash_ref/{signal}/last_7_1.csv')

_delphi_utils_python/tests/flash_ref/confirmed_incidence_num/fips.csv

-58
This file was deleted.

0 commit comments

Comments
 (0)