Problem:
An upgrade of Spotfire Server with Oracle system database from pre-12.5 version to version 14.x and above may fail with error:
ERROR 2026-10-20T07:36:42,946 upgrade.swing.DatabaseConnectionStepView: Internal error during database connection.
com.spotfire.server.tools.upgrade.DatabaseUpgradeException: Database user does not have create trigger permission.
You need to manually give that permission to the database user.
First login as system and give the database user the necessary privileges by running "GRANT CREATE TRIGGER TO <DATABASE USER>".
Following this failure, the database upgrade might fail to rollback completely, indicating that Oracle DDL changes may have been partially applied despite rollback attempts:
INFO 2026-10-20T08:28:12,831 tools.upgrade.UpgradeManager: The database upgrade failed to rollback completely
Unfortunately, after a failed rollback, all subsequent upgrade attempts will fail database consistency verification with:
ERROR 2026-10-20T08:50:37,482 upgrade.swing.DatabaseConnectionStepView: Internal error during database connection.
com.spotfire.server.tools.upgrade.UpgradeException: Database consistency verification failed: Missing constraint for table LICENSE_ORIGIN: OracleDatabaseConstraint[
name: null
type: C
searchCondition: ASSEMBLY_QUALIFIED_NAME IS NOT NULL
]
Solution:
In most situations where these errors are reported, the upgrade initially fails due to insufficient Oracle privileges during view creation, which subsequently leaves the database in inconsistent state, causing data integrity consistency verification failures on later upgrade attempts.
The minimum Oracle permissions required for Spotfire Server installation and upgrades are:
CREATE SESSION
CREATE TABLE
CREATE PROCEDURE
CREATE VIEW
QUERY REWRITE
CREATE TRIGGERFor detailed information regarding the CREATE TRIGGER privilege for Spotfire databases on Oracle, please refer to the recent documentation:
Upgrading to 12.5 and later: Granting the privilege to use triggers for Spotfire databases on Oracle
Assuming that the Spotfire Server was backed up before the upgrade attempt, it will need to be restored to the pre-upgrade state. This is the only reliable recovery option since it is not safe to manually reconstruct any tables with their original data after failed upgrade attempt.
Before rerunning the upgrade, please ensure that all the required privileges are granted. To check if a Spotfire database user has the required privilege, log in to the database as the Spotfire database user and run:
SELECT * FROM USER_SYS_PRIVS;
If you can see CREATE TRIGGER in the output, the spotfire database user has the privilege already.
If you are unsure what the Spotfire database user name is in your system, you can find it in <previous installation root>/tomcat/webapps/spotfire/WEB-INF/bootstrap.xml, in the XML-node <username>.
Comments
0 comments
Article is closed for comments.