Загрузить изображение для проекта: 'Citeck Community'
  1. Citeck Community
  2. ECOSCOM-4613

CaseManagment: non-parallel tasks are created parallel

    XMLWordДля печати

Детали задачи

    • Icon: Ошибка Ошибка
    • Решение: Resolved
    • Icon: Medium Medium
    • Community Core 3.40.0
    • Community Core 3.38.0
    • Не заполнено
    • Не заполнено
    • Major

    Описание

      Обнаружена ошибка при запуске новых задач в caseManagment, после завершения других задач/таймеров: в процессе запускаются 2 задачи, которые не должны запускаться одновременно (параллельно).

      Причины ошибки: после завершения, какого-нибудь шага - формируется список 'Stage' (HashSet), которые связанны с завершением рассматриваемого шага ('stage-children-stopped'). Соответственно порядок получения записей из HashSet может не соответствовать порядку, в котором записывались эти записи (зависимость от hashCode).

      Пример:

      Stage1

      Child11

      Child111

      Child112

      Child12

      Stage2

      Child21

      При завершении Child112:

      1. добавляем Child11 в Set, для последующей проверки, что все дочернии активности завершены
      2. добавляем Stage1 в Set, для последующей проверки, что все дочернии активности завершены
      3. Цикл по Set:
        3.1. первый элемент Stage1, проверяем, что все дочернии активности завершены
        3.1.1. для этапа Stage1 отправляется событие - stage-children-stopped
        3.1.2. запускается Stage2
        3.2. второй элемент Child11, проверяем, что все дочернии активности завершены
        3.2.1. Child11, отправляется событие - stage-children-stopped
        3.2.2. запускается Child12

      В результате получаем запущенную задачу Child12 и Child21.

      PS: CaseActivityEventTrigger.TransactionData.stagesToTryComplete

      Вложенные файлы

        Активность

          Люди

            rk:87aade25-43d3-4a99-8b84-5f32beb5ec62 Former user (Неактивный)
            rk:87aade25-43d3-4a99-8b84-5f32beb5ec62 Former user (Неактивный)
            Голоса:
            0 Голосовать за эту задачу
            Наблюдатели:
            1 Начать наблюдение за этой задачей

            Даты

              Создано:
              Обновленo:
              Дата решения:

              Учет времени

                Оценка:
                Первоначальная оценка - 2 дни
                2d
                Осталось:
                Оставшееся время - 0 минуты
                0m
                Затрачено:
                Затраченное время - 1 день, 2 часы Незатраченное время
                1d 2h