When attempting to import a package that contains a WebAPI or saving a WebAPI, the following error is produced intermittently:
org.hibernate.exception.ConstraintViolationException: Could not execute JDBC batch update; ERROR org.hibernate.util.JDBCExceptionReporter - ORA-00001: unique constraint (APPIANJ_PRIMARY.TEST_DATA_UC) violated
The error is generally associated with using Oracle Real Application Clusters (RAC) as the database for the Appian primary datasource.
Oracle RAC has a sequence cache on each node, which is used to determine the next sequence value. In some scenarios this caused the uniqueness constraint to be violated due to a mismatch between RAC node sequence caches.
This issue has been addressed via AN-105127 in the following Appian hotfixes/versions:
The fix guarantees to return the correct value of the sequence in order across all nodes in the RAC cluster.
Apply the latest hotfix to your Appian installation or upgrade to the latest version of Appian.
This article applies to Appian 18.1 and earlier using Oracle Real Application Clusters (RAC) as the Appian primary datasource.
Last Reviewed: October 2018