inception
inception copied to clipboard
INCEpTION 39.0 fails with PostgreSQL
After an in-place upgrade (switching jars, etc) from 38.6 to 39.0 INCEpTION fails to start, with the following error message in the application logs:
WARN [SYSTEM] SqlExceptionHelper - SQL Error: 0, SQLState: 25006
ERROR [SYSTEM] SqlExceptionHelper - ERROR: cannot execute UPDATE in a read-only transaction
ERROR [SYSTEM] boot - Error while processing event [LoggedEvent [created=2025-09-12 14:32:44.752, event=ProjectStateChangedEvent, user=<SYSTEM>, project=2, details={"state":"NEW"}]]
org.hibernate.exception.GenericJDBCException: JDBC exception executing SQL [update "project" p1_0 set "state_updated"=? where p1_0."id"=?] [ERROR: cannot execute UPDATE in a read-only transaction] [n/a]
at org.hibernate.exception.internal.StandardSQLExceptionConverter.convert(StandardSQLExceptionConverter.java:63)
(...)
Caused by: org.postgresql.util.PSQLException: ERROR: cannot execute UPDATE in a read-only transaction
at org.postgresql.core.v3.QueryExecutorImpl.receiveErrorResponse(QueryExecutorImpl.java:2736)
at org.postgresql.core.v3.QueryExecutorImpl.processResults(QueryExecutorImpl.java:2421)
at org.postgresql.core.v3.QueryExecutorImpl.execute(QueryExecutorImpl.java:372)
at org.postgresql.jdbc.PgStatement.executeInternal(PgStatement.java:525)
at org.postgresql.jdbc.PgStatement.execute(PgStatement.java:435)
at org.postgresql.jdbc.PgPreparedStatement.executeWithFlags(PgPreparedStatement.java:196)
at org.postgresql.jdbc.PgPreparedStatement.executeUpdate(PgPreparedStatement.java:157)
at com.zaxxer.hikari.pool.ProxyPreparedStatement.executeUpdate(ProxyPreparedStatement.java:61)
at com.zaxxer.hikari.pool.HikariProxyPreparedStatement.executeUpdate(HikariProxyPreparedStatement.java)
at org.hibernate.sql.exec.internal.StandardJdbcMutationExecutor.execute(StandardJdbcMutationExecutor.java:90)
... 85 more
WARN [SYSTEM] AnnotationConfigServletWebServerApplicationContext - Exception encountered during context initialization - cancelling refresh attempt: org.springframework.beans.factory.BeanCreationException: Error creating bean with name 'StateUpdatedFieldsMigration' defined in class path resource [de/tudarmstadt/ukp/inception/documents/config/DocumentServiceAutoConfiguration.class]: Failed to instantiate [de.tudarmstadt.ukp.inception.documents.cli.StateUpdatedFieldsMigration]: Factory method 'StateUpdatedFieldsMigration' threw exception with message: Transaction silently rolled back because it has been marked as rollback-only
Server is running on RHEL9.7 with openjdk 17 while the database server is running PostgreSQL 17.
A rollback by switching back to the 38.6 jar seems to have worked (not extensively tested).
Good to know that you are actually using PostgreSQL.
Good to know that you are actually using PostgreSQL.
We are; settings.properties contains the following DB settings:
# POSTGRESQL
database.url=jdbc:postgresql://psql-server.domain.com:5432/db-name
database.username=db_user
database.password=my_secret_password
We have been running PostgreSQL since it was added as an option, in October last year I believe.