Совместимость изменения версии рабочего процесса Uber Cadence

Я понимаю, что не могу вносить обратно несовместимые изменения в рабочие процессы за: Как внести изменения или исправления в рабочий процесс Uber Cadence, не нарушая детерминизма?

Однако я не уверен, что здесь означает «обратная несовместимость». Могу ли я просто не развернуть новый код без использования getVersion, точка? Или до тех пор, пока отслеживание истории, которое используется для восстановления, совместимо между двумя версиями, я могу обновлять без getVersion? Или я могу обновиться без getVersion при каких-то условиях?


person user3124669    schedule 02.05.2020    source источник


Ответы (1)


Обычно все, что может изменить способ создания истории, считается обратно несовместимым. Следующие изменения обратно совместимы:

  • Осуществление любой деятельности.
  • Продолжительность перехода в спящий режим и функция создания таймера.
  • Преобразование аргументов в действия.
  • Изменение параметров активности и политик повтора.
  • Изменение значений переменных, не влияющих на путь выполнения рабочего процесса. Например, если какая-то переменная накапливает данные, и эти данные используются только в запросе.

Мы рекомендуем сохранить несколько историй, а затем воспроизвести их как часть модульных тестов, чтобы раньше узнать о несовместимых изменениях.

person Maxim Fateev    schedule 04.05.2020