Type: New Feature
Priority: Major - P3
Affects Version/s: None
Fix Version/s: None
As a DAG engineer,
I'd like to have a backstop route in Cedar to reprovision its entire database with change points.
Such that, we can have an initial dataset to use, can use the functionality in other areas, and can reprovision the database if needed.
- Expose a route "/perf/signal_processing/recalculate" that raises a change point reprovisioning event and then returns '200/OK'
- Add change point reprovisioning event handler to handle the raised event:
Block any further events in the analysis/change_points channel (however that is implemented in Cedar) Cancel any jobs related to analysis/change_points that may already be running (they should exit gracefully on their own)
- Sequentially load time series metric by metric; use change point detector interface to generate change points for them; once new change points are acquired, evict the old ones for the metric and persist the new ones --> continue to next metric in new transaction
- Log progress and milestones appropriately
- Close out the job gracefully regardless of outcome --> log success or metric by metric exceptions as need be and finish successfully