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.

System.ServiceModel.QuotaExceededException:The maximum message size quota for incoming messages (204003200) has been exceeded
Mail from Nirmal:
Hi Andre,
Here is the error I found in event logs of FIM Sync server.
IDB logs are fine and have no errors or warnings since 4 July. Error on 4 July was related to internet issues experienced by whole company.
Regards
Log Name: Application Source: FIMSynchronizationService Date: 5/07/2015 4:42:46 AM Event ID: 6801 Task Category: Server Level: Error Keywords: Classic User: N/A Computer: NIOSHSFIM01V.news.newslimited.local Description: The extensible extension returned an unsupported error. The stack trace is: "System.Exception: Error encountered attempting import: System.IO.IOException: An exception has been thrown when reading the stream. ---> System.ServiceModel.CommunicationException: The maximum message size quota for incoming messages (204003200) has been exceeded. To increase the quota, use the MaxReceivedMessageSize property on the appropriate binding element. ---> System.ServiceModel.QuotaExceededException: The maximum message size quota for incoming messages (204003200) has been exceeded. To increase the quota, use the MaxReceivedMessageSize property on the appropriate binding element. --- End of inner exception stack trace --- at System.ServiceModel.Channels.MaxMessageSizeStream.PrepareRead(Int32 bytesToRead) at System.ServiceModel.Channels.MaxMessageSizeStream.Read(Byte[] buffer, Int32 offset, Int32 count) at System.ServiceModel.Channels.DelegatingStream.Read(Byte[] buffer, Int32 offset, Int32 count) at System.ServiceModel.Channels.DetectEofStream.Read(Byte[] buffer, Int32 offset, Int32 count) at System.IO.BufferedStream.Read(Byte[] array, Int32 offset, Int32 count) at System.Xml.EncodingStreamWrapper.Read(Byte[] buffer, Int32 offset, Int32 count) at System.Xml.XmlBufferReader.TryEnsureBytes(Int32 count) at System.Xml.XmlBufferReader.GetBuffer(Int32 count, Int32& offset, Int32& offsetMax) at System.Xml.XmlUTF8TextReader.ReadText() at System.Xml.XmlUTF8TextReader.Read() at System.Xml.XmlBaseReader.MoveToContent() at System.ServiceModel.Dispatcher.StreamFormatter.MessageBodyStream.Read(Byte[] buffer, Int32 offset, Int32 count) --- End of inner exception stack trace --- at System.ServiceModel.Dispatcher.StreamFormatter.MessageBodyStream.Read(Byte[] buffer, Int32 offset, Int32 count) at Unify.Framework.IO.StreamExtensions.CopyTo(Stream source, Stream destination) at Unify.Product.IdentityBroker.IdentityBrokerManagementAgentProxy.GenerateImportFile(String fileName, String connectTo, String user, String password, ConfigParameterCollection configParameters, Boolean fFullImport, TypeDescriptionCollection types, String& customData) at Unify.Product.IdentityBroker.IdentityBrokerManagementAgentProxy.GenerateImportFile(String fileName, String connectTo, String user, String password, ConfigParameterCollection configParameters, Boolean fFullImport, TypeDescriptionCollection types, String& customData) Forefront Identity Manager 4.1.3613.0" Event Xml: <Event xmlns="http://schemas.microsoft.com/win/2004/08/events/event"> <System> <Provider Name="FIMSynchronizationService" /> <EventID Qualifiers="49152">6801</EventID> <Level>2</Level> <Task>3</Task> <Keywords>0x80000000000000</Keywords> <TimeCreated SystemTime="2015-07-04T18:42:46.000000000Z" /> <EventRecordID>794791</EventRecordID> <Channel>Application</Channel> <Computer>NIOSHSFIM01V.news.newslimited.local</Computer> <Security /> </System> <EventData> <Data>System.Exception: Error encountered attempting import: System.IO.IOException: An exception has been thrown when reading the stream. ---> System.ServiceModel.CommunicationException: The maximum message size quota for incoming messages (204003200) has been exceeded. To increase the quota, use the MaxReceivedMessageSize property on the appropriate binding element. ---> System.ServiceModel.QuotaExceededException: The maximum message size quota for incoming messages (204003200) has been exceeded. To increase the quota, use the MaxReceivedMessageSize property on the appropriate binding element. --- End of inner exception stack trace --- at System.ServiceModel.Channels.MaxMessageSizeStream.PrepareRead(Int32 bytesToRead) at System.ServiceModel.Channels.MaxMessageSizeStream.Read(Byte[] buffer, Int32 offset, Int32 count) at System.ServiceModel.Channels.DelegatingStream.Read(Byte[] buffer, Int32 offset, Int32 count) at System.ServiceModel.Channels.DetectEofStream.Read(Byte[] buffer, Int32 offset, Int32 count) at System.IO.BufferedStream.Read(Byte[] array, Int32 offset, Int32 count) at System.Xml.EncodingStreamWrapper.Read(Byte[] buffer, Int32 offset, Int32 count) at System.Xml.XmlBufferReader.TryEnsureBytes(Int32 count) at System.Xml.XmlBufferReader.GetBuffer(Int32 count, Int32& offset, Int32& offsetMax) at System.Xml.XmlUTF8TextReader.ReadText() at System.Xml.XmlUTF8TextReader.Read() at System.Xml.XmlBaseReader.MoveToContent() at System.ServiceModel.Dispatcher.StreamFormatter.MessageBodyStream.Read(Byte[] buffer, Int32 offset, Int32 count) --- End of inner exception stack trace --- at System.ServiceModel.Dispatcher.StreamFormatter.MessageBodyStream.Read(Byte[] buffer, Int32 offset, Int32 count) at Unify.Framework.IO.StreamExtensions.CopyTo(Stream source, Stream destination) at Unify.Product.IdentityBroker.IdentityBrokerManagementAgentProxy.GenerateImportFile(String fileName, String connectTo, String user, String password, ConfigParameterCollection configParameters, Boolean fFullImport, TypeDescriptionCollection types, String& customData) at Unify.Product.IdentityBroker.IdentityBrokerManagementAgentProxy.GenerateImportFile(String fileName, String connectTo, String user, String password, ConfigParameterCollection configParameters, Boolean fFullImport, TypeDescriptionCollection types, String& customData) Forefront Identity Manager 4.1.3613.0</Data> </EventData> </Event>
Nirmal PatelSenior Systems Engineer Wintel

Identity Broker for Dynamics CRM - Base64 Annotation encoded picture too large for Sync Service
Once annotation connector is added to the adapter Imports fail with the following trace.
Log Name: Application Source: FIMSynchronizationService Date: 24/06/2013 4:38:45 p.m. Event ID: 6801 Task Category: Server Level: Error Keywords: Classic User: N/A Computer: PSVMFIMDEV01.ps.ad.parliament.govt.nz Description: The extensible extension returned an unsupported error. The stack trace is: "System.Exception: Error encountered attempting import: System.IO.IOException: An exception has been thrown when reading the stream. ---> System.ServiceModel.CommunicationException: The maximum message size quota for incoming messages (204003200) has been exceeded. To increase the quota, use the MaxReceivedMessageSize property on the appropriate binding element. ---> System.ServiceModel.QuotaExceededException: The maximum message size quota for incoming messages (204003200) has been exceeded. To increase the quota, use the MaxReceivedMessageSize property on the appropriate binding element. --- End of inner exception stack trace --- at System.ServiceModel.Channels.MaxMessageSizeStream.PrepareRead(Int32 bytesToRead) at System.ServiceModel.Channels.MaxMessageSizeStream.Read(Byte[] buffer, Int32 offset, Int32 count) at System.IO.BufferedStream.Read(Byte[] array, Int32 offset, Int32 count) at System.Xml.EncodingStreamWrapper.Read(Byte[] buffer, Int32 offset, Int32 count) at System.Xml.XmlBufferReader.TryEnsureBytes(Int32 count) at System.Xml.XmlBufferReader.GetBuffer(Int32 count, Int32& offset, Int32& offsetMax) at System.Xml.XmlUTF8TextReader.ReadText() at System.Xml.XmlUTF8TextReader.Read() at System.Xml.XmlBaseReader.MoveToContent() at System.ServiceModel.Dispatcher.StreamFormatter.MessageBodyStream.Read(Byte[] buffer, Int32 offset, Int32 count) --- End of inner exception stack trace --- at System.ServiceModel.Dispatcher.StreamFormatter.MessageBodyStream.Read(Byte[] buffer, Int32 offset, Int32 count) at Unify.Framework.IO.StreamExtensions.CopyTo(Stream source, Stream destination) at Unify.Product.IdentityBroker.IdentityBrokerManagementAgentProxy.GenerateImportFile(String fileName, String connectTo, String user, String password, ConfigParameterCollection configParameters, Boolean fFullImport, TypeDescriptionCollection types, String& customData) at Unify.Product.IdentityBroker.IdentityBrokerManagementAgentProxy.GenerateImportFile(String fileName, String connectTo, String user, String password, ConfigParameterCollection configParameters, Boolean fFullImport, TypeDescriptionCollection types, String& customData) Forefront Identity Manager 4.1.3441.0" Event Xml: <Event xmlns="http://schemas.microsoft.com/win/2004/08/events/event"> <System> <Provider Name="FIMSynchronizationService" /> <EventID Qualifiers="49152">6801</EventID> <Level>2</Level> <Task>3</Task> <Keywords>0x80000000000000</Keywords> <TimeCreated SystemTime="2013-06-24T04:38:45.000000000Z" /> <EventRecordID>448936</EventRecordID> <Channel>Application</Channel> <Computer>PSVMFIMDEV01.ps.ad.parliament.govt.nz</Computer> <Security /> </System> <EventData> <Data>System.Exception: Error encountered attempting import: System.IO.IOException: An exception has been thrown when reading the stream. ---> System.ServiceModel.CommunicationException: The maximum message size quota for incoming messages (204003200) has been exceeded. To increase the quota, use the MaxReceivedMessageSize property on the appropriate binding element. ---> System.ServiceModel.QuotaExceededException: The maximum message size quota for incoming messages (204003200) has been exceeded. To increase the quota, use the MaxReceivedMessageSize property on the appropriate binding element. --- End of inner exception stack trace --- at System.ServiceModel.Channels.MaxMessageSizeStream.PrepareRead(Int32 bytesToRead) at System.ServiceModel.Channels.MaxMessageSizeStream.Read(Byte[] buffer, Int32 offset, Int32 count) at System.IO.BufferedStream.Read(Byte[] array, Int32 offset, Int32 count) at System.Xml.EncodingStreamWrapper.Read(Byte[] buffer, Int32 offset, Int32 count) at System.Xml.XmlBufferReader.TryEnsureBytes(Int32 count) at System.Xml.XmlBufferReader.GetBuffer(Int32 count, Int32& offset, Int32& offsetMax) at System.Xml.XmlUTF8TextReader.ReadText() at System.Xml.XmlUTF8TextReader.Read() at System.Xml.XmlBaseReader.MoveToContent() at System.ServiceModel.Dispatcher.StreamFormatter.MessageBodyStream.Read(Byte[] buffer, Int32 offset, Int32 count) --- End of inner exception stack trace --- at System.ServiceModel.Dispatcher.StreamFormatter.MessageBodyStream.Read(Byte[] buffer, Int32 offset, Int32 count) at Unify.Framework.IO.StreamExtensions.CopyTo(Stream source, Stream destination) at Unify.Product.IdentityBroker.IdentityBrokerManagementAgentProxy.GenerateImportFile(String fileName, String connectTo, String user, String password, ConfigParameterCollection configParameters, Boolean fFullImport, TypeDescriptionCollection types, String& customData) at Unify.Product.IdentityBroker.IdentityBrokerManagementAgentProxy.GenerateImportFile(String fileName, String connectTo, String user, String password, ConfigParameterCollection configParameters, Boolean fFullImport, TypeDescriptionCollection types, String& customData) Forefront Identity Manager 4.1.3441.0</Data> </EventData> </Event>
Keep in mind these base64 strings are HUGE..
How can when up this MAX or avoid this?

Join transformation on different data type fields
It is more like a theoretical question but happen to Monash's implementation;
In Adaptor in IdB, we have 2 tables name A and B. We need to join A.x = B.y to get the attribute B.z.
However, x is integer and y is string and hence they do not match.
Is the any convert function for this?

SAP Connector: Passing {NOW} to Table Connector got wrong date format
In one of the table connector, there are conditions
BEGDA "less than or equal"
ENDDA "greater than or equal" {NOW}
It is expected that all records with Begin Date <= current date <= End Date will be return. However it returns none.
Did a APAB tracing with Monash SAP SME and it turns out
{NOW}is parsed to the wrong format. In the tracing, the value that ABAP code received is "1/23/2014 1:52:41 PM" while the expected value is "20140123"

Export Performance
We did set a bench mark for 10,000 exports/hour – which translates to about 8 exports per second.
The current speeds for exports are at 5-7 users per minute. We would expect out peak student intake to take ~24 hours to process.
I did call out very early in the piece that performance was important, but tricky to get right. No consulting has been done with Monash on the export process or results shared of IdB internal benchmarks. As it stands, this is a show stopping issue.

Delete reference attribute from calendar
1a. Unable to delete a multivalued reference attribute from calendar.
So when we try to delete a member’s attribute (either readers, writers, owners etc.) in calendar, it fails to do so.
1b. No error in FIM GUI, but error is detected in Event Viewer
Unify.IdentityBroker.Adapter.LDIF.dll

IdB v4.1: Group transformation to multi-value string attribute
Monash needs a transformation in adaptor to join two tables and group the resolved values (type of String) to a multi-value string attribute.
I looked at GROUP transformation but it only groups values to multi-value DN.
Please suggest the alternative if any or request additional transformation

GoogleApps Organizations XML Blob having exported-change-not-imported error
The XML Blob for organization in objectclass user is not working as expected. Having exported-changes-not-imported issues
Expo
organizations XML Blob.JPG

Any Migration Guide to Migrate IdB settings / MA across Environments?
Hi
Looking for a migration guide on how to migrate IdB Settings / MA etc across environments.
Regards

IdB 4.1.3 SQL Agent: The timeout period elapsed prior to obtaining a connection from the pool.
We use the SQL agent in IdB to read and write from a simulated SAP data source for testing. When exporting changes to the database via IdB, after approximately 100 exports, IdB starts reporting the following exception. When the IdB is stopped and restarted, a further 100 can be exported before the error reappears.
System.InvalidOperationException: Timeout expired. The timeout period elapsed prior to obtaining a connection from the pool. This may have occurred because all pooled connections were in use and max pool size was reached. at System.Data.ProviderBase.DbConnectionFactory.TryGetConnection(DbConnection owningConnection, TaskCompletionSource`1 retry, DbConnectionOptions userOptions, DbConnectionInternal oldConnection, DbConnectionInternal& connection) at System.Data.ProviderBase.DbConnectionInternal.TryOpenConnectionInternal(DbConnection outerConnection, DbConnectionFactory connectionFactory, TaskCompletionSource`1 retry, DbConnectionOptions userOptions) at System.Data.ProviderBase.DbConnectionClosed.TryOpenConnection(DbConnection outerConnection, DbConnectionFactory connectionFactory, TaskCompletionSource`1 retry, DbConnectionOptions userOptions) at System.Data.SqlClient.SqlConnection.TryOpenInner(TaskCompletionSource`1 retry) at System.Data.SqlClient.SqlConnection.TryOpen(TaskCompletionSource`1 retry) at System.Data.SqlClient.SqlConnection.Open() at Unify.Framework.Data.DbConnectionExtensions.OpenIfClosed(IDbConnection connection) at Unify.Framework.Data.SqlServerDataControl.CreateComponent(Boolean factoryInformation) at Unify.Framework.Data.AdoNetDataControl.ExecuteDataSetQuery(DataSet resultSet, String commandText, IEnumerable`1 parameters, String[] tableNames, CommandType commandType) at Unify.Framework.Data.AdoNetDataControl.ReturnDataSetQueryT(String commandText, IEnumerable`1 parameters, String[] tableNames, CommandType commandType) at Unify.Product.IdentityBroker.DirectCommunicatorBase`1.GetEntitiesDataTable(ICollection`1 keyList) at Unify.Product.IdentityBroker.DirectCommunicatorBase`1.UpdateEntities(IEnumerable`1 entities) at Unify.Product.IdentityBroker.DirectReadWriteConnectorBase`1.UpdateEntities(IEnumerable`1 entities) at Unify.Product.IdentityBroker.ConnectorToUpdatingConnectorBridge.UpdateEntities(IEnumerable`1 entities) at Unify.Product.IdentityBroker.EventNotifierUpdatingConnectorDecorator.UpdateEntities(IEnumerable`1 entities) at Unify.Product.IdentityBroker.Adapter.UpdateEntities(IEnumerable`1 entities, EntityToConnectorEntityBridge[]& connectorEntities) at Unify.Product.IdentityBroker.Adapter.UpdateEntities(IEnumerable`1 entities) at Unify.Product.IdentityBroker.Adapter.UpdateEntity(IAdapterEntity entity) at Unify.Product.IdentityBroker.AdapterNotifierDecoratorBase`1.UpdateEntity(IAdapterEntity entityToSave) at Unify.Product.IdentityBroker.CompositeAdapter.UpdateEntity(IAdapterEntity entity) at Unify.Product.IdentityBroker.AdapterNotifierDecoratorBase`1.UpdateEntity(IAdapterEntity entityToSave) at Unify.Product.IdentityBroker.LDIFAdapterBase.HandleExportUpdate(IAdapter adapter, IAdapterEntitySaveChange pendingUpdate) 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)
Unify.Framework.Data.dll
Customer support service by UserEcho