TIBCO Spotfire Server does not start with "Unexpected constraint for table GROUP_MEMBERS" error

TIBCO Spotfire Server does not start with "Unexpected constraint for table GROUP_MEMBERS" error

book

Article ID: KB0082921

calendar_today

Updated On:

Products Versions
Spotfire Server 7.5 and higher

Description

When using an Oracle database as the TIBCO Spotfire Server application database, if the server will not successfully start, you may see the following in the TIBCO Spotfire Server server.log:
FATAL 2017-08-20T19:41:25,781-0500 [*Initialization*] spotfire.server.LifecycleManager: TIBCO Spotfire Server will not be started. Database consistency verification failed. Errors found:
Unexpected constraint for table GROUP_MEMBERS: OracleDatabaseConstraint[
  name: GROUP_MEMBERS_XOR
  type: C
  searchCondition: (MEMBER_USER_ID is null and MEMBER_GROUP_ID is not null) or (MEMBER_USER_ID is not null and MEMBER_GROUP_ID is null)
]

Issue/Introduction

TIBCO Spotfire Server does not start and the "Unexpected constraint for table GROUP_MEMBERS" error is seen in the server.log.

Resolution

This database constraints issue will be seen if the Spotfire database user (as specified in the bootstrap.xml) has access to multiple schemas in the Oracle database. To verify, run the following query as the Spotfire database user:
select * from all_constraints where constraint_name = 'GROUP_MEMBERS_XOR'
If you get multiple results back, then you need to remove the access to the old database for the Spotfire database user or create a new user with only access to the currently needed schema. Once that is done, restart the TIBCO Spotfire Server.