Тайм-ауты согласованности в Comaged после развертывания - PullRequest
0 голосов
/ 17 сентября 2018

В приложении с источником событий, созданным с использованием Comaged и Phoenix, мы получаем consistency_timeout при обработке команд после развертывания в нашей производственной среде (Heroku).

Вот вывод журнала:

[debug] Processing with Web.CountryController.select_country_for_mission/2
[info] Invoicing.Commands.SelectCountryForMission dispatch start
[debug] Locating aggregate process for `Invoicing.Mission` with UUID "mission-23"
[debug] Invoicing.Mission<mission-23@4> executing command: %Invoicing.Commands.SelectCountryForMission{mission_id: "23", country_id: "42"}
[debug] Appended 1 event(s) to stream "mission-23"
[info] Invoicing.Commands.SelectCountryForMission succeeded in 180ms
[warn] Consistency timeout waiting for aggregate "mission-23" at version 5

Если я отправляю форму дважды, одна из команд успешно обрабатывается, но модель чтения по-прежнему не обновляется.Через несколько минут проблема исчезает на производстве.На моей машине проблема, кажется, не исчезает.

Приложение использует хранилище событий команд с проекциями Экто.

Версии:

  • Командовано 0,17.0
  • comaged_ecto_projection 0.7.1
  • comaged_eventstore_adapter 0.4.0
  • eventstore 0.14.0
  • Erlang 20.3.2
  • Elixir 1.6.5
  • Феникс 1.3.4

1 Ответ

0 голосов
/ 17 сентября 2018

Я не знаком с развертыванием Heroku, но вы используете несколько узлов, и если да, то как вы настроили библиотеки Comaged и Event Store?

Возможно, будет проще отладить проблему с помощью Командный чат Gitter .

...