0
Answered

Could not load type 'Unify.Product.IdentityBroker.IEntitySchemaConfigurationUtility'

Carol Wapshere 6 years ago in UNIFYBroker/Aurion updated by Beau Harrison (Senior Product Software Engineer) 6 years ago 16

I'm suddenly getting the error below in a Dev environment trying to update the schema of any Aurion connector. 

It's not happening in Test and the versions are slightly different:

DEV: v5.3.1 Revision #1

TEST: v5.3.1 Revision #0

20181213,02:32:40,UNIFYBroker,Connector Engine,Error,"The schema for 'Aurion Employee Connector' connector was not updated for the following reason: System.TypeLoadException: Could not load type 'Unify.Product.IdentityBroker.IEntitySchemaConfigurationUtility' from assembly 'Unify.IdentityBroker.Connector.Interfaces, Version=5.3.0.0, Culture=neutral, PublicKeyToken=84b9288cb2633de4'.
   at Unify.Connectors.AurionPersonSchemaProvider.GetSchema(ISchemaProviderFactoryInformation factoryInformation)
   at Unify.Product.IdentityBroker.ConnectorEngine.SchemaProviderResult(IOperationalConnector`1 operationalConnector, Func`2 selector, IEnumerable`1 appliedFields)",Normal
20181213,03:09:21,UNIFYBroker,Logging Engine,Information,Log file started.,Minimal
20181213,03:09:21,UNIFYBroker,Connector Engine,Error,"The schema for 'Aurion Locations Connector' connector was not updated for the following reason: System.TypeLoadException: Could not load type 'Unify.Product.IdentityBroker.IEntitySchemaConfigurationUtility' from assembly 'Unify.IdentityBroker.Connector.Interfaces, Version=5.3.0.0, Culture=neutral, PublicKeyToken=84b9288cb2633de4'.
   at Unify.Connectors.AurionCustomSchemaProvider.GetSchema(ISchemaProviderFactoryInformation factoryInformation)
   at Unify.Product.IdentityBroker.ConnectorEngine.SchemaProviderResult(IOperationalConnector`1 operationalConnector, Func`2 selector, IEnumerable`1 appliedFields)",Normal

Answer

Answer

Hi Carol 

Using your install directory I was able to reproduce this issue. This cause is you using an out of date version of the connector. I was able to successfully load the schema providers by updating to the latest release of the connector.

Under review

Hi Carol,

Do you have different patches deployed to Dev?

Thanks.

Not that I can see. I did a DLL version comparison and they all look the same. The Unify.*.exe files have different datestamps.

That'll be the different candidate releases. We'll take a look. Thanks.

Hi Carol

Testing locally I was unable to reproduce this issue with a clean install. Can you confirm the versions I used are what you have on your dev server? 


Regarding patches installed, are there any and if so could you list them?

Does this happen with any other non-default connector?

Are you able to try this in a clean install of Broker and just the connector on your dev server? And if you do have any patches installed, does the error start happening once you install them?

I can't try a clean install, no time, people shouting.

Yes that's the version of the Aurion connector.

There are no additional files in the Services or Web/bin folders when compared to Test, so I think that means no patches?

I tried the get schema on a CSV connector, which worked, ther than that I've just got Trim connectors which have hard-coded schema I think?

Imports from Aurion are still working

I've run repair installs on both the Broker service and the Aurion connector - no change.

Patch dlls will be those in the services directory which have the Unify.* naming convention that are not related to a connector that's installed. If its easier, take a screenshot and I'll have a look. Also just because a patch is applied in the test environment doesn't mean it should be in dev. They are different releases and patches applied to 5.3.1.0 would be included in 5.3.1.1 and may be out of date to what ended up in the later revision.

You can use the following console command to extract the MSI files to a custom location without having to uninstall your existing installation. Run this for both MSIs with the same targetdir, copy extensibility, make sure the installed version is stopped and run using the debug executable. Just make sure the paths you provide are full paths and out targetdir directory exists.

msiexec /a "<MSI file path>" /qn TARGETDIR="<output file path>"


Via email:

Hi Beau, I’m just attempting to email out contents of the Services and Web/bin folders for comparison. I’m not too sure about what you’re asking me to do with the MSIEXEC thing – is that just to extract the DLLs so I can re-copy them in to the folder? Thanks, Carol


The msiexe command will let you extract the installing files as I'd the msi was zip file. It will result in a fully working installation just without any registry/database/service changes. Looks you have three patch files in you Dev that shouldn't be there. Look for the Unify.*.dlls that have a created date older than the exe. 

Sounded promising, but I moved the following 3 files out of the Serviecs folder and restarted the service, and it’s still happening ☹ Unify.IdentityBroker.Entity.Api.dll Unify.IdentityBroker.Entity.Api.Shared.dll Unify.IdentityBroker.Entity.dll Carol
Answer

Hi Carol 

Using your install directory I was able to reproduce this issue. This cause is you using an out of date version of the connector. I was able to successfully load the schema providers by updating to the latest release of the connector.

Thanks for that Beau, I'll get the connector updated.

Correct. Not sure why the RTM version did not get a revision increment, they usually do. Sorry for the confusion.

No I have a new issue - it looks like it's getting the schema (which I know involves running the report) but then fails after a minute or so with "A task was cancelled". The full Import runs however, and does not time out.

Since this issue is resolved I'm going to mark it as such. Can you create a new issue with the details regarding this new problem?