0
Fixed

Connectors sporadically go missing

Matthew Clark 7 years ago • updated by anonymous 3 years ago 11

After configuring the Identity Broker console and performing normal use, configured connectors will sometimes go missing. This happens to individual connectors, and sometimes more than one at the same time.

This was thought to have been caused by IDB-454 as the logs appeared around the same time, but will need to be confirmed. See https://unifysolutions.jira.com/browse/IDB-454?focusedCommentId=29123&page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel#comment-29123


Log Excerpt.txt
Affected Versions:
Fixed by Version:

Logs show that the error occurs around the time of connectors being removed:

Configuration Engine:
System.NullReferenceException: Object reference not set to an instance of an object.
at System.Collections.Generic.HashSet`1.AddIfNotPresent(T value)
at Unify.Framework.Configuration.AssemblyDirectoryConfigurationEngine.SaveConfiguration(XDocument configuration, DateTime time, IUnifyEnginePlugInKey engineKey) in c:\workspaces\DEV\FrameworkCore\Source\Configuration\Unify.Framework.Configuration.Engine\AssemblyDirectoryConfigurationEngine.cs:line 144
at Unify.Framework.Configuration.ConfigurationEngineBase.<>c_DisplayClass7.<StoreConfiguration>b_6(ReaderWriterLock readerWriterLock) in c:\workspaces\DEV\FrameworkCore\Source\Configuration\Unify.Framework.Configuration.Engine\ConfigurationEngineBase.cs:line 240
at Unify.Framework.Configuration.KeyedReaderWriterLock`1.RunWorkWithLock(TKey key, Action`1 work, Action`1 acquireAction, Action`1 releaseAction) in c:\workspaces\DEV\FrameworkCore\Source\Configuration\Unify.Framework.Configuration.Engine\KeyedReaderWriterLock.cs:line 81
at Unify.Framework.Configuration.KeyedReaderWriterLock`1.RunWithWriterLock(TKey key, TimeSpan timeout, Action`1 work) in c:\workspaces\DEV\FrameworkCore\Source\Configuration\Unify.Framework.Configuration.Engine\KeyedReaderWriterLock.cs:line 52
at Unify.Framework.Configuration.ConfigurationEngineBase.StoreConfiguration(IUnifyEnginePlugInKey engine, XDocument newConfiguration) in c:\workspaces\DEV\FrameworkCore\Source\Configuration\Unify.Framework.Configuration.Engine\ConfigurationEngineBase.cs:line 240
at Unify.Framework.Configuration.ConfigurationEngineBase.Notify(IConfigurationChanged message) in c:\workspaces\DEV\FrameworkCore\Source\Configuration\Unify.Framework.Configuration.Engine\ConfigurationEngineBase.cs:line 386

I have no seen this behaviour before, so I don't believe it's normal use - what were you doing specifically when this happened last?

The above error appeared on Friday 2 seconds after service startup. An additional error is logged a few seconds later, with one of the connectors now missing this morning:

13/Jul/2012 16:31:11
Error
Void AcquireWriterLockInternal(Int32) Configuration Engine:
System.ApplicationException: This operation returned because the timeout period expired. (Exception from HRESULT: 0x800705B4)
at System.Threading.ReaderWriterLock.AcquireWriterLockInternal(Int32 millisecondsTimeout)
at System.Threading.ReaderWriterLock.AcquireWriterLock(TimeSpan timeout)
at Unify.Framework.Configuration.KeyedReaderWriterLock`1.<>c_DisplayClass5.<RunWithWriterLock>b_2(ReaderWriterLock readerWriterLock) in c:\workspaces\DEV\FrameworkCore\Source\Configuration\Unify.Framework.Configuration.Engine\KeyedReaderWriterLock.cs:line 51
at Unify.Framework.Configuration.KeyedReaderWriterLock`1.RunWorkWithLock(TKey key, Action`1 work, Action`1 acquireAction, Action`1 releaseAction) in c:\workspaces\DEV\FrameworkCore\Source\Configuration\Unify.Framework.Configuration.Engine\KeyedReaderWriterLock.cs:line 78
at Unify.Framework.Configuration.KeyedReaderWriterLock`1.RunWithWriterLock(TKey key, TimeSpan timeout, Action`1 work) in c:\workspaces\DEV\FrameworkCore\Source\Configuration\Unify.Framework.Configuration.Engine\KeyedReaderWriterLock.cs:line 52
at Unify.Framework.Configuration.ConfigurationEngineBase.StoreConfiguration(IUnifyEnginePlugInKey engine, XDocument newConfiguration) in c:\workspaces\DEV\FrameworkCore\Source\Configuration\Unify.Framework.Configuration.Engine\ConfigurationEngineBase.cs:line 241
at Unify.Framework.Configuration.ConfigurationEngineBase.Notify(IConfigurationChanged message) in c:\workspaces\DEV\FrameworkCore\Source\Configuration\Unify.Framework.Configuration.Engine\ConfigurationEngineBase.cs:line 387

Resolved as duplicate of IDB-454 - confirmed to be the same issue. To be closed with confirmation of IDB-454

Matthew, were you running the newer version of Framework with the fixes to the configuration engine?

Some additional information would be nice. Did the connector ever make it to config and then get removed? Or did the save just never occur? Which connector is missing, a random one, the first one, the last one in the config, the last one to be added?

No, I wasn't running the changes as I was looking at this issue instead of the other one. The other issue had already been marked as resolved. I have assigned both of these to me as I will confirm with the updated Framework.

Did the connector ever make it to config and then get removed? Or did the save just never occur? Which connector is missing, a random one, the first one, the last one in the config, the last one to be added?

How did you read the conclusion that the issues were duplicates?

The error message appears with every occurrence I've observed of a connector being removed. The above case is from use of the service on Friday afternoon, and now this morning the last connector in the engine was no longer present.

I have not seen this issue since pulling the Framework changes in. Through multiple restarts and updates, all connectors stay in tact. Issue closed.

reopened for time.

closed following time.