0

UNIFYBroker service failing to start

Hayden Gray 2 weeks ago in UNIFYBroker Service updated 2 weeks ago 2

Version v5.3.2 Revision #0

After performing the following sequence of events, the UNIFYBroker service failed to start.

1. Clearing the entities from a decent sized Connector and associated Adapter (~10,000 entities)

2. Deleting the Connector and Adapter

3. Restarting the the UNIFYBroker service

When failing to start the event log would show 2 errors (I know the second stack track looks like I've truncated it, but that is the full error I receive in the log):

Error - The following occurred in module: Identity Broker

The following occurred in the Error module during the Identity Broker cycle of the server: start

Service cannot be started. Unify.Framework.UnifyServiceStartException: The DELETE statement conflicted with the REFERENCE constraint "FK_Entity_ObjectClass". The conflict occurred in database "Unify.IdentityBroker", table "dbo.Entity", column 'ObjectClassId'.

The statement has been terminated. ---> System.Data.SqlClient.SqlException: The DELETE statement conflicted with the REFERENCE constraint "FK_Entity_ObjectClass". The conflict occurred in database "Unify.IdentityBroker", table "dbo.Entity", column 'ObjectClassId'.

The statement has been terminated.

at System.Data.SqlClient.SqlConnection.OnError(SqlException exception, Boolean breakConnection, Action`1 wrapCloseInAction)

at System.Data.SqlClient.TdsParser.ThrowExceptionAndWarning(TdsParserStateObject stateObj, Boolean callerHasConnectionLock, Boolean asyncClose)

at System.Data.SqlClient.TdsParser.TryRun(RunBehavior runBehavior, SqlCommand cmdHandler, SqlDataReader dataStream, BulkCopySimpleResultSet bulkCopyHandler, TdsParserStateObject stateObj, Bo...

FYI this issue has been fixed. But still raised as a bug.

We did a DB restore, thinking it was just a corrupt DB, but the service still failed to start. So I restored the local extensibility config too to a state prior to the deletion, and the service then started as expected.

Its like the config was deleted from the xml config but there were still objects referencing the particular partitions/object classes in the Broker DB. 

I have also taken a look in the UNIFYBroker log, and it logs 2 instances of the following error ~20 seconds before the event log errors occurred.

Image 7206


Unify.IdentityBroker.Adapter.Engine:
System.NullReferenceException: Object reference not set to an instance of an object.
at Unify.Product.IdentityBroker.AdapterStatisticsEngine.GetEntityCount(Guid adapterId)