Упомянутое вами обновление происходит по нескольким причинам:
- Повторное использование идентификатора (что действительно важно только для REV_TYPE = 0 или
RevisionType.ADD
строк). - REV_TYPE! = 0(aka
RevisionType.MOD
и RevisionType.DEL
строки).
В настоящее время нет реального обходного пути, чтобы эти операторы могли быть объединены в пакеты, в первую очередь из-за характера того, как эти обновления все равно работают.Стратегия в том виде, в котором она существует, предполагает, что эти предикаты будут влиять на одну строку в таблице, и поэтому также проверяет, что в рамках проверки работоспособности, иначе мы заставим транзакцию завершиться неудачей.
Я думаю, что было бы здоровочтобы найти способ сделать это так, чтобы пакетная вставка / обновления работала, но сначала нам нужно найти способ внедрить эти обновления и поддерживать ту же проверку исправности, где это изменение будет влиять только на одну строку, а не на несколько.что было бы, если бы они были отложены.
Все, что сказал;вся эта логика обрабатывается в ValidityAuditStrategy
, который является подключаемым параметром для пользователей, и поэтому вы потенциально можете найти работоспособное решение, которым вы могли бы поделиться с нами.
В любом случае я бы предложил открыть с нами проблему расширения JIRA, и мы можем более подробно обсудить, как (если возможно) наилучшим образом эффективно и более эффективно обрабатывать потенциально поддерживающие пакетные вставки / обновления.