How to change MaxItemsInObjectGraph

Hi everyone, I would like to know how to change the MaxItemsInObjectGraph in order to avoid the error message "...Change the object graph or increase the MaxItemsInObjectGraph quota..." in performance point webparts (Grids, charts, and so on).

Thanks a lot.

 

Ivan

June 9th, 2010 8:32pm

Hello Ivan,

What is the entire error message that you are receiving?  Do you get this message on all scorecards within PerformancePoint?  Do you get an error message from all workstations, on server, or just a few workstations?

Thanks
Heidi Tr - MSFT

 

Free Windows Admin Tool Kit Click here and download it now
June 15th, 2010 7:14pm

Hello Ivan,

A little more information for you.  The MaxItemsInObjectGraph is a web.config/client.config setting for services that blocks denial of service.  I do not think it’s set in any SharePoint 2010 web.config or client.configs by default, so I believe it is a setting that might have been added at somepoint manually.

 

If you look in your ULS logs for specific entry that is failing.  It should indicate which service operation failed with this error and the best place to start to look for which web.config/client.config you might consider adding the setting with a higher value.

I hope this helps.
Thanks

Heidi Tr - MSFT

 

June 16th, 2010 9:53pm

Hello Heidi,

The error message showed in the report is "An unexpected error occurred. Error 28374. Additional details have been logged for your administrator.", then when I go to the application log, the entire error message is shown below. As far as I know, there is a proxy class named BIMonitoringServiceApplicationProxy,embedded in a performancepoint dll, which communicates with the Performance Point Services service, so because the commucation is made using WCF, I think there should be endpoints configutation in both the web and the client config file. Maybe I am wrong, but in any case I would like to know how to solve this issue.

An unexpected error occurred.  Error 28374.

Exception details:
System.ServiceModel.CommunicationException: There was an error while trying to serialize parameter http://www.microsoft.com/performancepoint/scorecards:webPartContext. The InnerException message was 'Maximum number of items that can be serialized or deserialized in an object graph is '65536'. Change the object graph or increase the MaxItemsInObjectGraph quota. '.  Please see InnerException for more details. ---> System.Runtime.Serialization.SerializationException: Maximum number of items that can be serialized or deserialized in an object graph is '65536'. Change the object graph or increase the MaxItemsInObjectGraph quota.
   at System.Runtime.Serialization.XmlObjectSerializerContext.IncrementItemCount(Int32 count)
   at WriteKeyValueOfstringanyTypeToXml(XmlWriterDelegator , Object , XmlObjectSerializerWriteContext , ClassDataContract )
   at System.Runtime.Serialization.ClassDataContract.WriteXmlValue(XmlWriterDelegator xmlWriter, Object obj, XmlObjectSerializerWriteContext context)
   at WriteArrayOfKeyValueOfstringanyTypeToXml(XmlWriterDelegator , Object , XmlObjectSerializerWriteContext , CollectionDataContract )
   at System.Runtime.Serialization.CollectionDataContract.WriteXmlValue(XmlWriterDelegator xmlWriter, Object obj, XmlObjectSerializerWriteContext context)
   at System.Runtime.Serialization.XmlObjectSerializerWriteContext.SerializeAndVerifyType(DataContract dataContract, XmlWriterDelegator xmlWriter, Object obj, Boolean verifyKnownType, RuntimeTypeHandle declaredTypeHandle)
   at System.Runtime.Serialization.XmlObjectSerializerWriteContext.SerializeWithXsiType(XmlWriterDelegator xmlWriter, Object obj, RuntimeTypeHandle objectTypeHandle, Type objectType, Int32 declaredTypeID, RuntimeTypeHandle declaredTypeHandle, Type declaredType)
   at System.Runtime.Serialization.XmlObjectSerializerWriteContext.InternalSerialize(XmlWriterDelegator xmlWriter, Object obj, Boolean isDeclaredType, Boolean writeXsiType, Int32 declaredTypeID, RuntimeTypeHandle declaredTypeHandle)
   at System.Runtime.Serialization.XmlObjectSerializerWriteContext.InternalSerializeReference(XmlWriterDelegator xmlWriter, Object obj, Boolean isDeclaredType, Boolean writeXsiType, Int32 declaredTypeID, RuntimeTypeHandle declaredTypeHandle)
   at WriteArrayOfArrayOfKeyValueOfstringanyTypeToXml(XmlWriterDelegator , Object , XmlObjectSerializerWriteContext , CollectionDataContract )
   at System.Runtime.Serialization.CollectionDataContract.WriteXmlValue(XmlWriterDelegator xmlWriter, Object obj, XmlObjectSerializerWriteContext context)
   at System.Runtime.Serialization.XmlObjectSerializerWriteContext.SerializeAndVerifyType(DataContract dataContract, XmlWriterDelegator xmlWriter, Object obj, Boolean verifyKnownType, RuntimeTypeHandle declaredTypeHandle)
   at System.Runtime.Serialization.XmlObjectSerializerWriteContext.SerializeWithXsiType(XmlWriterDelegator xmlWriter, Object obj, RuntimeTypeHandle objectTypeHandle, Type objectType, Int32 declaredTypeID, RuntimeTypeHandle declaredTypeHandle, Type declaredType)
   at System.Runtime.Serialization.XmlObjectSerializerWriteContext.InternalSerialize(XmlWriterDelegator xmlWriter, Object obj, Boolean isDeclaredType, Boolean writeXsiType, Int32 declaredTypeID, RuntimeTypeHandle declaredTypeHandle)
   at System.Runtime.Serialization.XmlObjectSerializerWriteContext.InternalSerializeReference(XmlWriterDelegator xmlWriter, Object obj, Boolean isDeclaredType, Boolean writeXsiType, Int32 declaredTypeID, RuntimeTypeHandle declaredTypeHandle)
   at WriteBIDataToXml(XmlWriterDelegator , Object , XmlObjectSerializerWriteContext , ClassDataContract )
   at System.Runtime.Serialization.ClassDataContract.WriteXmlValue(XmlWriterDelegator xmlWriter, Object obj, XmlObjectSerializerWriteContext context)
   at System.Runtime.Serialization.XmlObjectSerializerWriteContext.InternalSerialize(XmlWriterDelegator xmlWriter, Object obj, Boolean isDeclaredType, Boolean writeXsiType, Int32 declaredTypeID, RuntimeTypeHandle declaredTypeHandle)
   at System.Runtime.Serialization.XmlObjectSerializerWriteContext.InternalSerializeReference(XmlWriterDelegator xmlWriter, Object obj, Boolean isDeclaredType, Boolean writeXsiType, Int32 declaredTypeID, RuntimeTypeHandle declaredTypeHandle)
   at WriteArrayOfBIDataToXml(XmlWriterDelegator , Object , XmlObjectSerializerWriteContext , CollectionDataContract )
   at System.Runtime.Serialization.CollectionDataContract.WriteXmlValue(XmlWriterDelegator xmlWriter, Object obj, XmlObjectSerializerWriteContext context)
   at System.Runtime.Serialization.XmlObjectSerializerWriteContext.SerializeAndVerifyType(DataContract dataContract, XmlWriterDelegator xmlWriter, Object obj, Boolean verifyKnownType, RuntimeTypeHandle declaredTypeHandle)
   at System.Runtime.Serialization.XmlObjectSerializerWriteContext.SerializeWithXsiType(XmlWriterDelegator xmlWriter, Object obj, RuntimeTypeHandle objectTypeHandle, Type objectType, Int32 declaredTypeID, RuntimeTypeHandle declaredTypeHandle, Type declaredType)
   at System.Runtime.Serialization.XmlObjectSerializerWriteContext.InternalSerialize(XmlWriterDelegator xmlWriter, Object obj, Boolean isDeclaredType, Boolean writeXsiType, Int32 declaredTypeID, RuntimeTypeHandle declaredTypeHandle)
   at System.Runtime.Serialization.XmlObjectSerializerWriteContext.InternalSerializeReference(XmlWriterDelegator xmlWriter, Object obj, Boolean isDeclaredType, Boolean writeXsiType, Int32 declaredTypeID, RuntimeTypeHandle declaredTypeHandle)
   at WriteWebPartContextToXml(XmlWriterDelegator , Object , XmlObjectSerializerWriteContext , ClassDataContract )
   at System.Runtime.Serialization.ClassDataContract.WriteXmlValue(XmlWriterDelegator xmlWriter, Object obj, XmlObjectSerializerWriteContext context)
   at System.Runtime.Serialization.DataContractSerializer.InternalWriteObjectContent(XmlWriterDelegator writer, Object graph)
   at System.Runtime.Serialization.DataContractSerializer.InternalWriteObject(XmlWriterDelegator writer, Object graph)
   at System.Runtime.Serialization.XmlObjectSerializer.WriteObjectHandleExceptions(XmlWriterDelegator writer, Object graph)
   at System.ServiceModel.Dispatcher.DataContractSerializerOperationFormatter.SerializeParameterPart(XmlDictionaryWriter writer, PartInfo part, Object graph)
   --- End of inner exception stack trace ---

Server stack trace:
   at System.ServiceModel.Dispatcher.DataContractSerializerOperationFormatter.SerializeParameterPart(XmlDictionaryWriter writer, PartInfo part, Object graph)
   at System.ServiceModel.Dispatcher.DataContractSerializerOperationFormatter.SerializeParameter(XmlDictionaryWriter writer, PartInfo part, Object graph)
   at System.ServiceModel.Dispatcher.DataContractSerializerOperationFormatter.SerializeParameters(XmlDictionaryWriter writer, PartInfo[] parts, Object[] parameters)
   at System.ServiceModel.Dispatcher.DataContractSerializerOperationFormatter.SerializeBody(XmlDictionaryWriter writer, MessageVersion version, String action, MessageDescription messageDescription, Object returnValue, Object[] parameters, Boolean isRequest)
   at System.ServiceModel.Dispatcher.OperationFormatter.SerializeBodyContents(XmlDictionaryWriter writer, MessageVersion version, Object[] parameters, Object returnValue, Boolean isRequest)
   at System.ServiceModel.Dispatcher.OperationFormatter.OperationFormatterMessage.OperationFormatterBodyWriter.OnWriteBodyContents(XmlDictionaryWriter writer)
   at System.ServiceModel.Channels.BodyWriter.WriteBodyContents(XmlDictionaryWriter writer)
   at System.ServiceModel.Security.SecurityAppliedMessage.OnWriteMessage(XmlDictionaryWriter writer)
   at System.ServiceModel.Channels.BufferedMessageWriter.WriteMessage(Message message, BufferManager bufferManager, Int32 initialOffset, Int32 maxSizeQuota)
   at System.ServiceModel.Channels.TextMessageEncoderFactory.TextMessageEncoder.WriteMessage(Message message, Int32 maxMessageSize, BufferManager bufferManager, Int32 messageOffset)
   at System.ServiceModel.Channels.HttpOutput.SerializeBufferedMessage(Message message)
   at System.ServiceModel.Channels.HttpOutput.Send(TimeSpan timeout)
   at System.ServiceModel.Channels.HttpChannelFactory.HttpRequestChannel.HttpChannelRequest.SendRequest(Message message, TimeSpan timeout)
   at System.ServiceModel.Channels.RequestChannel.Request(Message message, TimeSpan timeout)
   at System.ServiceModel.Channels.SecurityChannelFactory`1.SecurityRequestChannel.Request(Message message, TimeSpan timeout)
   at System.ServiceModel.Dispatcher.RequestChannelBinder.Request(Message message, TimeSpan timeout)
   at System.ServiceModel.Channels.ServiceChannel.Call(String action, Boolean oneway, ProxyOperationRuntime operation, Object[] ins, Object[] outs, TimeSpan timeout)
   at System.ServiceModel.Channels.ServiceChannelProxy.InvokeService(IMethodCallMessage methodCall, ProxyOperationRuntime operation)
   at System.ServiceModel.Channels.ServiceChannelProxy.Invoke(IMessage message)

Exception rethrown at [0]:
   at System.Runtime.Remoting.Proxies.RealProxy.HandleReturnMessage(IMessage reqMsg, IMessage retMsg)
   at System.Runtime.Remoting.Proxies.RealProxy.PrivateInvoke(MessageData& msgData, Int32 type)
   at Microsoft.PerformancePoint.Scorecards.IBIMonitoringServiceApplication.RenderReport(Boolean proxyCacheAttempt, String& proxyCacheKey, SubstitutionList& proxyCacheSubs, DateTime& proxyCacheExpiration, String& html, String& script, WebPartContextUpdate& webPartContextUpdate, RepositoryLocation reportLocation, String renderTargetId, String availableHeight, String availableWidth, WebPartContext webPartContext, Boolean isAccessibilityMode)
   at Microsoft.PerformancePoint.Scorecards.BIMonitoringServiceApplicationProxy.RenderReport(String& html, String& script, WebPartContextUpdate& webPartContextUpdate, RepositoryLocation reportLocation, String renderTargetId, Unit availableHeight, Unit availableWidth, WebPartContext webPartContext, Boolean isAccessibilityMode)

              

Free Windows Admin Tool Kit Click here and download it now
June 17th, 2010 7:10pm

Hello Ivan,

I am not sure if you saw my second post on around looking at the ULS logs.  Did you happen to look at the ULS logs to see if you have a specific config file that you are failing on?

Did you install PerformancePoint Services 2010 fresh?  I would like to know if you ever ran on a Beta version of SharePoint 2010 and PerformancePoint Services 2010.

There was a hotfix released for Windows 2008 R2 that addresses issues with WCF, which I would like you to load so that we can eliminate that as the cause.

Here is information around that release:

WCF fix is already released to the public.
Windows Server 2008/Vista:
http://go.microsoft.com/fwlink/?linkID=160770
Windows Server 2008 R2/Windows 7:
http://go.microsoft.com/fwlink/?LinkID=166231

Thanks,

Heidi Tr - MSFT

June 21st, 2010 11:51pm

Hi Heidi,

I have installed a Sharepoint 2010 RC (not beta), and then activate the Performance point services service,  I performed your recommendation about installing the hotfix for window2008R2 (my machine), however when I tried to install the message "Hotfix for Windows (KB976462) is already installed on this computer", so I think this is not the cause.

Regards

Ivan

 

Free Windows Admin Tool Kit Click here and download it now
June 22nd, 2010 7:39pm

As I mentioned above, the MaxItemsInObjectGraph is a web.config/client.config setting for services that blocks denial of service.  I have been told it is something that is added to SharePoint 2010 web.config or client.configs.  Do you know if this could have been added at somepoint manually?  Have you checked?

 

If you look in your ULS logs for specific entry that is failing.  It should indicate which service operation failed with this error and the best place to start to look for which web.config/client.config you might consider adding the setting with a higher value.

Thanks

Heidi Tr - MSFT

 

June 22nd, 2010 9:07pm

Dear Heidi,

I have just confirmed that the Sharepoint Installation was made using their default value, no manual configuration has been made to the config files. The messages I sent you in the previous posts was that of Event Viewer (Default Windows2008 log viewer). I noticed that in addition to the error message I sent you in the previous posts, there are other logs on the event viewer that appears at the same time, these logs are shown below. In addition I forget to mention that this issue of MaxItemsInObjectGraph only happens when I retrieve large amount of data for the Grid Report ( I mean I select long time range as filter), when I retrieve few amount of data in the Grid Report everything works perfect.

Log 3, Level=Critical, Source: Sharepoint Foundation

Cannot connect to SQL Server. QDLGTSMOSS2K10A not found. Additional error information from SQL Server is included below.

Timeout expired. The timeout period elapsed prior to completion of the operation or the server is not responding.

Log 2, Level=Error, Source: Sharepoint Foundation

There was an internal error invoking the timer job '{3B7B12BA-D32B-40E2-BF66-6B407C233DB7}' for service '{694C6DF4-9381-45D5-9724-00A081B38C3F}'.

Log 1: Level=Critical, Source: Sharepoint Foundation

The Execute method of job definition Microsoft.SharePoint.Administration.SPConfigurationRefreshJobDefinition (ID a04ef209-0c3d-450a-97e9-88508c27d596) threw an exception. More information is included below.

Timeout expired. The timeout period elapsed prior to completion of the operation or the server is not responding.

 

Free Windows Admin Tool Kit Click here and download it now
June 24th, 2010 2:42am

Ivan,

If you go into Central Administration - Application Management - Manage Service Applications and go into your PerformancePoint Services Application.  In here, you will have Data Source query time out setting.

What is your Data Source query time-out setting at?  By default it is set at 300 seconds.  I would suggest increasing this to see if it helps with your large amount of data that is being pulled into the grid.

Can I ask what is the difference between the 2 reports?  How much does the time range differ?  Do you know if you run the query in SQL server does it complete successfully?  Do you have time out errors on the SQL Server box?

Thanks
Heidi Tr - MSFT

June 25th, 2010 12:06am

Hi Heidi,

At the end, i was able to recognize the issue. What was happening is that i was using custom filter, so i was generting the mdx query dynamically in code, so in the cases where the MDX expression was large then the error occurs, I use sql profiler in the ssas and realized that the MDX was not reaching the SSAS, so that is why the error commented in previos posts got me annoy.

Thanks for your time and support.

Regards

 

Ivan

Free Windows Admin Tool Kit Click here and download it now
August 12th, 2010 10:06pm

Hi Heidi,

At the end, i was able to recognize the issue. What was happening is that i was using custom filter, so i was generting the mdx query dynamically in code, so in the cases where the MDX expression was large then the error occurs, I use sql profiler in the ssas and realized that the MDX was not reaching the SSAS, so that is why the error commented in previos posts got me annoy.

Thanks for your time and support.

Regards

 

Ivan

August 12th, 2010 10:06pm

Hi Heidi,

At the end, i was able to recognize the issue. What was happening is that i was using custom filter, so i was generting the mdx query dynamically in code, so in the cases where the MDX expression was large then the error occurs, I use sql profiler in the ssas and realized that the MDX was not reaching the SSAS, so that is why the error commented in previos posts got me annoy.

Thanks for your time and support.

Regards

 

Ivan

Free Windows Admin Tool Kit Click here and download it now
August 12th, 2010 10:06pm

Hi Heidi,

At the end, i was able to recognize the issue. What was happening is that i was using custom filter, so i was generting the mdx query dynamically in code, so in the cases where the MDX expression was large then the error occurs, I use sql profiler in the ssas and realized that the MDX was not reaching the SSAS, so that is why the error commented in previos posts got me annoy.

Thanks for your time and support.

Regards

 

Ivan

August 12th, 2010 10:06pm

Hi Heidi,

At the end, i was able to recognize the issue. What was happening is that i was using custom filter, so i was generting the mdx query dynamically in code, so in the cases where the MDX expression was large then the error occurs, I use sql profiler in the ssas and realized that the MDX was not reaching the SSAS, so that is why the error commented in previos posts got me annoy.

Thanks for your time and support.

Regards

 

Ivan

Free Windows Admin Tool Kit Click here and download it now
August 12th, 2010 10:06pm

Hi Heidi,

At the end, i was able to recognize the issue. What was happening is that i was using custom filter, so i was generting the mdx query dynamically in code, so in the cases where the MDX expression was large then the error occurs, I use sql profiler in the ssas and realized that the MDX was not reaching the SSAS, so that is why the error commented in previos posts got me annoy.

Thanks for your time and support.

Regards

 

Ivan

August 12th, 2010 10:06pm

Hi Heidi,

At the end, i was able to recognize the issue. What was happening is that i was using custom filter, so i was generting the mdx query dynamically in code, so in the cases where the MDX expression was large then the error occurs, I use sql profiler in the ssas and realized that the MDX was not reaching the SSAS, so that is why the error commented in previos posts got me annoy.

Thanks for your time and support.

Regards

 

Ivan

Free Windows Admin Tool Kit Click here and download it now
August 12th, 2010 10:06pm

Hi Heidi,

At the end, i was able to recognize the issue. What was happening is that i was using custom filter, so i was generting the mdx query dynamically in code, so in the cases where the MDX expression was large then the error occurs, I use sql profiler in the ssas and realized that the MDX was not reaching the SSAS, so that is why the error commented in previos posts got me annoy.

Thanks for your time and support.

Regards

 

Ivan

August 12th, 2010 10:06pm

Hi Heidi,

At the end, i was able to recognize the issue. What was happening is that i was using custom filter, so i was generting the mdx query dynamically in code, so in the cases where the MDX expression was large then the error occurs, I use sql profiler in the ssas and realized that the MDX was not reaching the SSAS, so that is why the error commented in previos posts got me annoy.

Thanks for your time and support.

Regards

 

Ivan

Free Windows Admin Tool Kit Click here and download it now
August 12th, 2010 10:06pm

Hi Heidi,

At the end, i was able to recognize the issue. What was happening is that i was using custom filter, so i was generting the mdx query dynamically in code, so in the cases where the MDX expression was large then the error occurs, I use sql profiler in the ssas and realized that the MDX was not reaching the SSAS, so that is why the error commented in previos posts got me annoy.

Thanks for your time and support.

Regards

 

Ivan

August 12th, 2010 10:06pm

Hi Heidi,

At the end, i was able to recognize the issue. What was happening is that i was using custom filter, so i was generting the mdx query dynamically in code, so in the cases where the MDX expression was large then the error occurs, I use sql profiler in the ssas and realized that the MDX was not reaching the SSAS, so that is why the error commented in previos posts got me annoy.

Thanks for your time and support.

Regards

 

Ivan

Free Windows Admin Tool Kit Click here and download it now
August 13th, 2010 1:06am

Hi Heidi,

At the end, i was able to recognize the issue. What was happening is that i was using custom filter, so i was generting the mdx query dynamically in code, so in the cases where the MDX expression was large then the error occurs, I use sql profiler in the ssas and realized that the MDX was not reaching the SSAS, so that is why the error commented in previos posts got me annoy.

Thanks for your time and support.

Regards

 

Ivan

August 13th, 2010 1:06am

Hi Heidi,

At the end, i was able to recognize the issue. What was happening is that i was using custom filter, so i was generting the mdx query dynamically in code, so in the cases where the MDX expression was large then the error occurs, I use sql profiler in the ssas and realized that the MDX was not reaching the SSAS, so that is why the error commented in previos posts got me annoy.

Thanks for your time and support.

Regards

 

Ivan

Free Windows Admin Tool Kit Click here and download it now
August 13th, 2010 1:06am

Hi Heidi,

At the end, i was able to recognize the issue. What was happening is that i was using custom filter, so i was generting the mdx query dynamically in code, so in the cases where the MDX expression was large then the error occurs, I use sql profiler in the ssas and realized that the MDX was not reaching the SSAS, so that is why the error commented in previos posts got me annoy.

Thanks for your time and support.

Regards

 

Ivan

August 13th, 2010 1:06am

Hi Heidi,

At the end, i was able to recognize the issue. What was happening is that i was using custom filter, so i was generting the mdx query dynamically in code, so in the cases where the MDX expression was large then the error occurs, I use sql profiler in the ssas and realized that the MDX was not reaching the SSAS, so that is why the error commented in previos posts got me annoy.

Thanks for your time and support.

Regards

 

Ivan

Free Windows Admin Tool Kit Click here and download it now
August 13th, 2010 1:06am

hi, buddy

I met the same issue. But it is quite strange.

I build a WCF Server under windows server 2008 R2 under .Net 4

and I built a WPF application under .Net 4 also.

When I install the same client application on different PC...something shocked me:

All the PC running on win7 and win2008 , and so on . running normally.

But the PCs running in XP report the above issue.

How can I solve it??

July 26th, 2014 5:21pm

This topic is archived. No further replies will be accepted.

Other recent topics Other recent topics