Ревлизовать логику "проверки"
Executor, когда берется за проверку того или иного решения должен создавать сущность "проверка", "run", или как-то еще её надо назвать.
И результаты проверки привязывать уже именно к этой проверке.
Таким образом пропадет проблема параллельной проверки одного решения двумя воркерами, они портатят больше времени, займут место в бд, но сам алгоритм отработает корректно, и при необходимости можно будет удалить ненужные или дублирующие результаты
У "проверки" должны быть следующие поля:
- Время начала/конца проверки
- Версия программы проверятора (необходимо задавать её при сборке)
- SolutionId
- ExecutorId
ExecutorId - идентификатор конкретного executor-а, может быть id контейнера, в котором запущен сервис
Ревлизовать логику "проверки"
Executor, когда берется за проверку того или иного решения должен создавать сущность "проверка", "run", или как-то еще её надо назвать.
И результаты проверки привязывать уже именно к этой проверке.
Таким образом пропадет проблема параллельной проверки одного решения двумя воркерами, они портатят больше времени, займут место в бд, но сам алгоритм отработает корректно, и при необходимости можно будет удалить ненужные или дублирующие результаты
У "проверки" должны быть следующие поля:
ExecutorId - идентификатор конкретного executor-а, может быть id контейнера, в котором запущен сервис