You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
Short summary (3-5 sentences) describing the issue.
Assemblies affected
*Which assemblies and versions are known to be affected e.g. OData WebApi lib 7.x
Reproduce steps
The Reflection loading is only happening on the initial request for an organization, I can see that it tries to load the Annotation Values and if not found in the EdmModel goes out and calls the EdmLibHelpers.GetMatchingTypes() where the GetClrType is invoked and we see the significant CPU Spike. Subsequent request I see are successfully getting the Annotation from the model.
This by itself isn’t a problem, but Dataverse is hosting up to 300 Organizations on an environment and each Organization is trying to load over 1700 assemblies and many more types which is what is generating the spike in CPU load.
… serializer (#2836)
* fixes#2835: omit the ODataIdContainer from model builder, change the serializer
* remove unused test
* Address the comments
* fix the null reference
Short summary (3-5 sentences) describing the issue.
Assemblies affected
*Which assemblies and versions are known to be affected e.g. OData WebApi lib 7.x
Reproduce steps
This by itself isn’t a problem, but Dataverse is hosting up to 300 Organizations on an environment and each Organization is trying to load over 1700 assemblies and many more types which is what is generating the spike in CPU load.
Looking at this block here
https://github.com/OData/WebApi/blob/7dbaf97e17acecfb842edd002d7085d423189d87/src/Microsoft.AspNet.OData.Shared/Formatter/Serialization/ODataResourceSerializer.cs#L1751-L1769
Expected result
It appears that we are loading all the types available just so that we can ignore the ODataIdContainer type in the GetPropertiesToWrite() method.
We also found this change last year as well around this code block that seems relevant fix regression issue. by ElizabethOkerio · Pull Request #2769 · OData/WebApi · GitHub
What would happen if there wasn't a bug.
Actual result
What is actually happening.
Additional detail
Optional, details of the root cause if known. Delete this section if you have no additional details to add.
The text was updated successfully, but these errors were encountered: