instedd / surveda

InSTEDD Surveda
https://instedd.org/technologies/surveda-mobile-surveys/
GNU General Public License v3.0
16 stars 6 forks source link

Refactor: SurveyCanceller per survey #2337

Closed matiasgarciaisaia closed 1 month ago

matiasgarciaisaia commented 2 months ago

The old model of a Supervisor + a Canceller that only started Producers and Consumers was not only overly complex, but also buggy (it failed upon app startup - see #2147).

This refactor makes the Supervisor start a single Canceller process per survey that has to be cancelled.

This model should pave the way to turn the Canceller into a SurveyBroker that manages the survey's complete lifecycle in #2331.

Fixes #2147

matiasgarciaisaia commented 1 month ago

The logic for retrying cancelling failing respondents could be improved, but maybe YAGNI so let's start like this first.