Identity Broker Forum

Welcome to the community forum for Identity Broker.

Browse the knowledge base, ask questions directly to the product group, or leverage the community to get answers. Leave ideas for new features and vote for the features or bug fixes you want most.

0
Fixed

Service fails to start due to Null reference exception.

Tony Sheehy 12 years ago updated by anonymous 9 years ago 4

The following is being logged with a clean installation using the most recent installer in prdgrp-test1.

Service cannot be started. System.NullReferenceException: Object reference not set to an instance of an object.
   at Unify.Framework.Data.DataEngine..ctor(IConfigurationEngine configurationEngine, IStandardPostEngine postEngine)
   at Unify.Framework.Data.DataEnginePlugInFactory`1.CreateComponent(IUnifyEnginePlugInFactoryInformation`1 factoryInformation)
   at Unify.Framework.DependencyPlugInGenerator`4..ctor(ICollection`1 plugInGenerator, IPlugInFactory`2 factoryInformationFactory)
   at Unify.Framework.UnifyEngine`1..ctor(TBranding branding, IEnumerable`1 additionalPlugInFactories, DirectoryInfo executingAssemblyLocation, IsolatedStorageFile isolatedStorageLocation)
   at Unify.Service.IdentityBrokerServiceEngine..ctor(DirectoryInfo assemblyExcutionPath, IsolatedStorageFile isolatedFile, IIdentityBrokerBranding branding)
   at Unify.Service.IdentityBrokerService.OnStart(String[] args)
   at System.ServiceProcess.ServiceBase.ServiceQueuedMainCallback(Object state)
0
Fixed

Null values stored to database for multivalue attributes

Matthew Clark 12 years ago updated by anonymous 9 years ago 6

During a full import from a MOSS List adapter, the following error is thrown inside the lazy evaluation stream. This may be because of a bad or incorrect null check in the LDIF components:

Value cannot be null.
at Unify.Framework.IO.LDIFSafeStringFilter.IsSafe(String sourceValue) in c:\workspaces\DEV\FrameworkCore\Source\IO\Unify.Framework.IO.LDIF\LDIFSafeStringFilter.cs:line 46
at Unify.Framework.IO.LDIFValueSpec.WriteComponent(TextWriter writer) in c:\workspaces\DEV\FrameworkCore\Source\IO\Unify.Framework.IO.LDIF\LDIFValueSpec.cs:line 41
at Unify.Framework.IO.LDIFAttrvalSpec.WriteComponent(TextWriter writer) in c:\workspaces\DEV\FrameworkCore\Source\IO\Unify.Framework.IO.LDIF\LDIFAttrvalSpec.cs:line 56
at Unify.Framework.IO.LDIFAttrvalRecord.WriteComponent(TextWriter writer) in c:\workspaces\DEV\FrameworkCore\Source\IO\Unify.Framework.IO.LDIF\LDIFAttrvalRecord.cs:line 60
at Unify.Framework.IO.LDIFComponentFileGenerator`1.GenerateFile(TextWriter writer, IEnumerable`1 entries) in c:\workspaces\DEV\FrameworkCore\Source\IO\Unify.Framework.IO.LDIF\LDIFComponentFileGenerator.cs:line 46
at Unify.Product.IdentityBroker.LDIFAdapterBase.<>c_DisplayClass14`1.<CreateLDIFComponentStream>b_13(Stream stream) in S:\Hg\Product\IdentityBroker\IdentityBroker\Source\Adapter\Unify.IdentityBroker.Adapter.Remoting\LDIFAdapterBase.cs:line 399
at Unify.Framework.IO.LazyEvaluationStream.Evaluate(Object obj) in c:\workspaces\DEV\FrameworkCore\Source\IO\Unify.Framework.IO\LazyEvaluationStream.cs:line 124

0
Answered

Sharepoint connector ignores proxy configuration

Matthew Woolnough 11 years ago in UNIFYBroker/Microsoft SharePoint updated by anonymous 9 years ago 3

Configuring following settings in an attempt to use Fiddler to debug connection.
Connector ignores proxy configuration, it does not appear to route traffic to proxyUri.

<communicator
ignoreCertificateError="True"
pollingChangeTokenOffset="-1.00:00:00"
credentials="Custom"
proxy="Custom"
preauthenticate="true"
timeout="02:00:00"
proxyUri="http://localhost:8888"
uri="http://kweb.bne.catholic.edu.au/informationservices/SSAS/SSA/"
domain="CATHOLIC"
user="svc_FIM_SharePoint"
securePassword="TE+bBSNefb5uHPQAhhSpsw==" certificate="" listName="eMinerva Exceptions - All Schools" viewName="" rowLimit="100">
</communicator>

0
Fixed

GetTransformedEntities: The transaction is in doubt

Tony Sheehy 12 years ago updated by anonymous 9 years ago 8

The following exception was encountered during a full import of two adapters:

An exception has occured whilst performing a job for adapter 9c0cc85e-de5b-448e-946d-73f3323f5a78 job GetTransformedEntities (ParallelGate):
System.Transactions.TransactionInDoubtException: The transaction is in doubt. ---> System.Data.SqlClient.SqlException: Timeout expired. The timeout period elapsed prior to completion of the operation or the server is not responding.
at System.Data.SqlClient.SqlInternalConnection.OnError(SqlException exception, Boolean breakConnection)
at System.Data.SqlClient.TdsParser.ThrowExceptionAndWarning()
at System.Data.SqlClient.TdsParserStateObject.ReadSniError(TdsParserStateObject stateObj, UInt32 error)
at System.Data.SqlClient.TdsParserStateObject.ReadSni(DbAsyncResult asyncResult, TdsParserStateObject stateObj)
at System.Data.SqlClient.TdsParserStateObject.ReadNetworkPacket()
at System.Data.SqlClient.TdsParserStateObject.ReadByte()
at System.Data.SqlClient.TdsParser.Run(RunBehavior runBehavior, SqlCommand cmdHandler, SqlDataReader dataStream, BulkCopySimpleResultSet bulkCopyHandler, TdsParserStateObject stateObj)
at System.Data.SqlClient.TdsParser.TdsExecuteTransactionManagerRequest(Byte[] buffer, TransactionManagerRequestType request, String transactionName, TransactionManagerIsolationLevel isoLevel, Int32 timeout, SqlInternalTransaction transaction, TdsParserStateObject stateObj, Boolean isDelegateControlRequest)
at System.Data.SqlClient.SqlInternalConnectionTds.ExecuteTransactionYukon(TransactionRequest transactionRequest, String transactionName, IsolationLevel iso, SqlInternalTransaction internalTransaction, Boolean isDelegateControlRequest)
at System.Data.SqlClient.SqlDelegatedTransaction.SinglePhaseCommit(SinglePhaseEnlistment enlistment)
--- End of inner exception stack trace ---
at System.Transactions.TransactionStatePromotedIndoubt.PromotedTransactionOutcome(InternalTransaction tx)
at System.Transactions.CommittableTransaction.Commit()
at System.Transactions.TransactionScope.InternalDispose()
at System.Transactions.TransactionScope.Dispose()
at Unify.Framework.Data.LinqContextConversionBase`4.SubmitChanges()
at Unify.Framework.ParallelGate.ParallelGateJob.RunBase()
at Unify.Framework.AsynchronousJobExecutor.PerformJobCallback(Object state)
  • The CPU usage while these adapters were importing was consistently around 98/99% usages, with 200k memory usage.
  • There were 10k and 9.999k entities in the respective adapters being imported.
  • The full imports into FIM both suceeded, and took
    • 6 minutes 11 seconds and,
    • 5 minutes 24 seconds to complete respectively.
  • Additionally, the second adapter was moving from a DN Format of:
0
Fixed

Identity Broker authentication issues with ISA Proxy

Mark Southwell 13 years ago in UNIFYBroker/Aurion updated by anonymous 9 years ago 18

When attempting to import from Aurion error thrown:

System.New.webException: The remote server returned an error: (407) Proxy Authentication Required.

Proxy authentication is configured in the ConnectorEngine.extensibility.config.xml.

Config files and error log attached.


Application log errors.txt
ConnectorEngine.extensibility.config.xml
Unify.Service.Connect.exe.config
UnifyLog20110906.csv
0
Answered

Improve handling of Root Organization behaviour

Matthew Clark 13 years ago in UNIFYBroker/Microsoft SharePoint updated by anonymous 9 years ago 4

See APRA-38, IDBSP-47 and http://social.technet.microsoft.com/Forums/en-US/sharepoint2010programming/thread/e9c91765-4c35-424d-888d-58e993783855. SharePoint 2010 will become unresponsive if the root organization is set to be its own parent, even though SharePoint does not prevent you from doing so programmatically or via the UI. Both the UI and the object model are affected by this bug. SharePoint considers the root organization to be the first organization with a parent of -1 in its database (ie. how it determines its value of the RootOrganization property). It is operationally and functionally valid for multiple organizations to exist with a parent of -1, and also to be self-referential (ie. their own parent), but doing so on the profile SharePoint considers its root brings about this instability. The connector could account for this functional limitation by preventing the solution from modifying the parent of the root organization. It is then up to solution implementers to ensure the behaviour of their hierarchy is correct.

Estimate includes work initial research carried out already, as well as implementing and testing.

0
Answered

Run an Import all on the Aurion MA is receive stopped-extension-dll-file-not-found error.

André van der Westhuizen 9 years ago updated by anonymous 9 years ago 3

Busy configuring a Lab to test IdB 3 to 5 upgrade for Aurion.
Software using:
Server 1:

  • FIM Sync - 4.1.3646.0
  • Unify.Framework.ILM2007FP1Adapter - 3.0
  • Codeless Framework - 3.0.4.4

Server 2:

  • IdB Service - 3.0.8.1
  • IdB Management Studio - 3.0.7* IdB for Aurion - 3.0.5.2
  • SQL 2012

Unify.Framework.ILM2007FP1Adapter.dll file is copied to C:\Program Files\Microsoft Forefront Identity Manager\2010\Synchronization Service\Extensions and the xml is exported from the adapter and copied to C:\Program Files\Microsoft Forefront Identity Manager\2010\Synchronization Service\UIShell\XMLs\PackagedMAs. The miiserver.exe.config is configured as per Jira.

The Connectors import all entities and the Aurion MA's could be created, but when I run an Import all on the Aurion MA is receive stopped-extension-dll-file-not-found error.

Event Viewer errors:

The server encountered an unexpected error:
 
 "Could not load file or assembly 'file:///C:\Program Files\Microsoft Forefront Identity Manager\2010\Synchronization Service\Extensions\Unify.Adapters.ILM2Adapter.dll' or one of its dependencies. The system cannot find the file specified.

   at System.Reflection.RuntimeAssembly._nLoad(AssemblyName fileName, String codeBase, Evidence assemblySecurity, RuntimeAssembly locationHint, StackCrawlMark& stackMark, IntPtr pPrivHostBinder, Boolean throwOnFileNotFound, Boolean forIntrospection, Boolean suppressSecurityChecks)
   at System.Reflection.RuntimeAssembly.InternalLoadAssemblyName(AssemblyName assemblyRef, Evidence assemblySecurity, RuntimeAssembly reqAssembly, StackCrawlMark& stackMark, IntPtr pPrivHostBinder, Boolean throwOnFileNotFound, Boolean forIntrospection, Boolean suppressSecurityChecks)
   at System.Reflection.RuntimeAssembly.InternalLoadAssemblyName(AssemblyName assemblyRef, Evidence assemblySecurity, RuntimeAssembly reqAssembly, StackCrawlMark& stackMark, Boolean throwOnFileNotFound, Boolean forIntrospection, Boolean suppressSecurityChecks)
   at System.Reflection.RuntimeAssembly.InternalLoadFrom(String assemblyFile, Evidence securityEvidence, Byte[] hashValue, AssemblyHashAlgorithm hashAlgorithm, Boolean forIntrospection, Boolean suppressSecurityChecks, StackCrawlMark& stackMark)
   at System.Reflection.Assembly.LoadFrom(String assemblyFile)
   at Microsoft.MetadirectoryServices.Impl.ScriptHost.InitializeWorker(InitializeArguments pArgs)


InnerException=>
none
"

and

The management agent "Aurion Employee" failed on run profile "Full import". The run step stopped because a configured extension dll for this management agent was not found.
 
 User Action
 Verify that the extension is located in the Extensions directory.
0
Fixed

Issues with SharePoint list polling

Matthew Clark 14 years ago in UNIFYBroker/Microsoft SharePoint updated by anonymous 9 years ago 4

I've encountered issues with the new polling functionality of the list connector. In both SharePoint 2007 and 2010, the following error is thrown when changes are present in the list:

Timestamp	Severity	Source	Module	Message
23/06/2011 4:18:12 PM	Warning	Change detection engine poll failed.	Change detection engine	"Change detection engine poll for connector SharePoint 2007 List Connector failed with reason StartIndex cannot be less than zero.
Parameter name: startIndex. Duration: 00:00:03.2295000
Error details:
System.ArgumentOutOfRangeException: StartIndex cannot be less than zero.
Parameter name: startIndex
   at System.String.Remove(Int32 startIndex, Int32 count)
   at Unify.Communicators.Moss2007ListWebServiceCommunicatorBase.GetIdsWhereClause(Int32[] ids) in C:\Hg\Connectors\Microsoft.SharePoint\Master\Source\Unify.Communicators.Moss2007List\Moss2007ListWebServiceCommunicatorBase.cs:line 371
   at Unify.Communicators.Moss2007ListWebServiceCommunicatorBase.<GetListItems>d__6.MoveNext() in C:\Hg\Connectors\Microsoft.SharePoint\Master\Source\Unify.Communicators.Moss2007List\Moss2007ListWebServiceCommunicatorBase.cs:line 232
   at System.Linq.Enumerable.WhereSelectEnumerableIterator`2.MoveNext()
   at Unify.Framework.EnumerableExtensions.<ActionOnFirst>d__1c`1.MoveNext()
   at System.Linq.Enumerable.WhereSelectEnumerableIterator`2.MoveNext()
   at Unify.Framework.ActionOnExceptionEnumerator`1.MoveNext()
   at Unify.Framework.EnumerableExtensions.<ActionOnLast>d__16`1.MoveNext()
   at Unify.Framework.EnumerableExtensions.<ProduceAutoPages>d__9`1.MoveNext()
   at Unify.Framework.Visitor.ThreadsafeVisitorEvaluator`1.Visit()
   at Unify.Framework.Visitor.VisitEvaluateOnThreadPool[T](IEnumerable`1 visitCollection, Action`2 visitor, Int32 maxThreads)
   at Unify.Framework.RepositoryChangeDetectionWorkerBase.PerformChangeDetection(IEnumerable`1 connectorEntities)
   at Unify.Framework.ChangeDetectionPollJob.RunBase()
   at Unify.Framework.MutexJobDecorator.Run()
   at Unify.Framework.DefinedScopeJobAuditTrailJobDecorator.Run()
   at Unify.Framework.AsynchronousJobExecutor.PerformJobCallback(Object state)"

Config attached


ConnectorEngine.extensibility.config.xml
0
Fixed

Null key on Adapter import with changed key.

Tony Sheehy 13 years ago updated by anonymous 9 years ago 5

The below exception message is encountered on export after the key has changed valuetype:

Adapter request to update entity to adapter space failed.
Adapter request to update entity e118589e-def1-4f63-9ae6-0b9285e016e8 to adapter space 777fb0b6-f864-46e3-8f03-a1dbf8dd1427 failed with reason The entity key of the entity with id e118589e-def1-4f63-9ae6-0b9285e016e8 contains a null value. For reference this key appears as the following '<null>'. Ensure that the attribute corresponding to this key value has been configured correctly in the respective identity management product... Duration: 00:00:00.0312500
Error details:
Unify.Framework.UnifyEngineException: The entity key of the entity with id e118589e-def1-4f63-9ae6-0b9285e016e8 contains a null value. For reference this key appears as the following '<null>'. Ensure that the attribute corresponding to this key value has been configured correctly in the respective identity management product..
at Unify.Product.IdentityBroker.Adapter.<>c__DisplayClassb1.<CheckAnchorChangeOnSave>b__a9(KeyValuePair`2 keyValue)
at Unify.Framework.Visitor.<>c__DisplayClass1`1.<Visit>b__0(T item, Int32 index)
at Unify.Framework.Visitor.Visit[T](IEnumerable`1 visitCollection, Action`2 visitor)
at Unify.Framework.Visitor.Visit[T](IEnumerable`1 visitCollection, Action`1 visitor)
at Unify.Product.IdentityBroker.Adapter.CheckAnchorChangeOnSave(IEntitySchema connectorSchema, IEnumerable`1 entitiesToSave, IEntityPartitionUpdatableContext connectorContext, IEnumerable`1 entityIds)
at Unify.Product.IdentityBroker.Adapter.UpdateEntities(IEnumerable`1 entities, Boolean reflect)
at Unify.Product.IdentityBroker.Adapter.UpdateEntity(IAdapterEntity entity, Boolean reflect)
at Unify.Product.IdentityBroker.Adapter.UpdateEntity(IAdapterEntity entity)
at Unify.Product.IdentityBroker.AdapterNotifierDecoratorBase`1.UpdateEntity(IAdapterEntity entityToSave)
at Unify.Product.IdentityBroker.LDIFAdapterBase.ExportChanges(ExportedLDIFForAdapter exportedLdifForAdapter)
at Unify.Product.IdentityBroker.LDIFAdapterServiceHostDecoratorBase.ExportChanges(ExportedLDIFForAdapter exportedLdifForAdapter)
at SyncInvokeExportChanges(Object , Object[] , Object[] )
at System.ServiceModel.Dispatcher.SyncMethodInvoker.Invoke(Object instance, Object[] inputs, Object[]& outputs)
at System.ServiceModel.Dispatcher.DispatchOperationRuntime.InvokeBegin(MessageRpc& rpc)
at System.ServiceModel.Dispatcher.ImmutableDispatchRuntime.ProcessMessage5(MessageRpc& rpc)
at System.ServiceModel.Dispatcher.ImmutableDispatchRuntime.ProcessMessage41(MessageRpc& rpc)
at System.ServiceModel.Dispatcher.ImmutableDispatchRuntime.ProcessMessage4(MessageRpc& rpc)
at System.ServiceModel.Dispatcher.ImmutableDispatchRuntime.ProcessMessage31(MessageRpc& rpc)
at System.ServiceModel.Dispatcher.ImmutableDispatchRuntime.ProcessMessage3(MessageRpc& rpc)
at System.ServiceModel.Dispatcher.ImmutableDispatchRuntime.ProcessMessage2(MessageRpc& rpc)
at System.ServiceModel.Dispatcher.ImmutableDispatchRuntime.ProcessMessage11(MessageRpc& rpc)
at System.ServiceModel.Dispatcher.ImmutableDispatchRuntime.ProcessMessage1(MessageRpc& rpc)
at System.ServiceModel.Dispatcher.MessageRpc.Process(Boolean isOperationContextSet)
0
Fixed

CSV Connector fails export

Tony Sheehy 13 years ago in CSV connector updated by anonymous 9 years ago 21

Exports to the CSV Connector are failing with the following:

Save entities [Count:1] to connector CSV Connector 2 failed with reason The process cannot access the file 'C:\Shared\Identity Broker 4\CSV Test\Talent2 Person Connector5.csv' because it is being used by another process.. Duration: 00:00:00
Error details:
System.IO.IOException: The process cannot access the file 'C:\Shared\Identity Broker 4\CSV Test\Talent2 Person Connector5.csv' because it is being used by another process.
at System.IO.__Error.WinIOError(Int32 errorCode, String maybeFullPath)
at System.IO.FileStream.Init(String path, FileMode mode, FileAccess access, Int32 rights, Boolean useRights, FileShare share, Int32 bufferSize, FileOptions options, SECURITY_ATTRIBUTES secAttrs, String msgPath, Boolean bFromProxy, Boolean useLongPath)
at System.IO.FileStream..ctor(String path, FileMode mode, FileAccess access, FileShare share, Int32 bufferSize, FileOptions options)
at System.IO.StreamWriter.CreateFile(String path, Boolean append)
at System.IO.StreamWriter..ctor(String path, Boolean append, Encoding encoding, Int32 bufferSize)
at System.IO.StreamWriter..ctor(String path, Boolean append, Encoding encoding)
at System.IO.File.AppendAllLines(String path, IEnumerable`1 contents)
at Unify.Product.IdentityBroker.CsvConnector.AddEntities(IEnumerable`1 entities)
at Unify.Product.IdentityBroker.ConnectorToWritingConnectorBridge.AddEntities(IEnumerable`1 entities)
at Unify.Product.IdentityBroker.EventNotifierWritingConnectorDecorator.AddEntities(IEnumerable`1 entities)
at Unify.Product.IdentityBroker.Adapter.AddEntities(IEnumerable`1 entities, Boolean reflect)
at Unify.Product.IdentityBroker.Adapter.AddEntity(IAdapterEntity entity)
at Unify.Product.IdentityBroker.AdapterNotifierDecoratorBase`1.AddEntity(IAdapterEntity entity)
at Unify.Product.IdentityBroker.LDIFAdapterBase.ExportChanges(ExportedLDIFForAdapter exportedLdifForAdapter)
at Unify.Product.IdentityBroker.LDIFAdapterServiceHostDecoratorBase.ExportChanges(ExportedLDIFForAdapter exportedLdifForAdapter)
at SyncInvokeExportChanges(Object , Object[] , Object[] )
at System.ServiceModel.Dispatcher.SyncMethodInvoker.Invoke(Object instance, Object[] inputs, Object[]& outputs)
at System.ServiceModel.Dispatcher.DispatchOperationRuntime.InvokeBegin(MessageRpc& rpc)
at System.ServiceModel.Dispatcher.ImmutableDispatchRuntime.ProcessMessage5(MessageRpc& rpc)
at System.ServiceModel.Dispatcher.ImmutableDispatchRuntime.ProcessMessage41(MessageRpc& rpc)
at System.ServiceModel.Dispatcher.ImmutableDispatchRuntime.ProcessMessage4(MessageRpc& rpc)
at System.ServiceModel.Dispatcher.ImmutableDispatchRuntime.ProcessMessage31(MessageRpc& rpc)
at System.ServiceModel.Dispatcher.ImmutableDispatchRuntime.ProcessMessage3(MessageRpc& rpc)
at System.ServiceModel.Dispatcher.ImmutableDispatchRuntime.ProcessMessage2(MessageRpc& rpc)
at System.ServiceModel.Dispatcher.ImmutableDispatchRuntime.ProcessMessage11(MessageRpc& rpc)
at System.ServiceModel.Dispatcher.ImmutableDispatchRuntime.ProcessMessage1(MessageRpc& rpc)
at System.ServiceModel.Dispatcher.MessageRpc.Process(Boolean isOperationContextSet)

There were a series of improvements made to the CSV connector that will need to be re-evaluated and completely regression tested. These changes were made in attempts to remove the likelihood of locks on a file being breached on the same thread by reducing the number of reads/writes to the file.

These included:

  • Preventing the collection of IConnectorEntities being completely evaluated before being written back.
  • Reducing the reads on the same file to 1 instead of 3 on Add entities.