Не работает стандартная обработка исключений, нарушающих уникальные ограничения

При ошибках индекса в базе при удалении в UniqueConstraintViolationHandler никогда не приходят ошибки типа UniqueConstraintViolationException.

В результате не работает стандартный механизм описанный тут - Обработка исключений, нарушающих уникальные ограничения :: Документация Jmix

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

нужен совет как это исправить.

jmix 1.4.4, plugin 1.5.0-233, postgress 15

Уникальность проверяется при добавлении или изменении записей, но не при удалении.

1 симпатия

нет, увы. на создание тоже самое -

PSQLException: ОШИБКА: повторяющееся значение ключа нарушает ограничение уникальности "idx_gpt_model_unq"
  Подробности: Ключ "(name)=(1)" уже существует.

вероятно вот эта ошибка должна была бы быть UniqueConstraintViolationException -

javax.persistence.PersistenceException: Exception [EclipseLink-4002] (Eclipse Persistence Services - 2.7.9.6-jmix): org.eclipse.persistence.exceptions.DatabaseException
Internal Exception: org.postgresql.util.PSQLException: ОШИБКА: повторяющееся значение ключа нарушает ограничение уникальности “idx_gpt_model_unq”
Подробности: Ключ “(name)=(1)” уже существует.
Error Code: 0
Call: INSERT INTO ams_core.MODEL (ID, NAME, MODEL_CATEGORY_ID, VENDOR_ID) VALUES (?, ?, ?, ?)
bind => [101, 1, 1, 1]
Query: InsertObjectQuery(ru.argustelecom.ams.core.domain.entity.model.Model-101 [new,managed])