join the community conversations

active members

Performance issue fro SaaS iPMC



  • Avatar
    Danny Langlois

    Do you have any custom completeness rules or you're using all native CR? Also, how many groups and rules do you have on your entity? 

  • Avatar
    Maarten Buth

    Hi Danny,

    I'm involved in this implemenation as lead consultant.
    We do have 9 languages in the data model.

    We've implemented quite basic custom completeness rules on the Product entitytype:
    Check LocaleString attributes if it has a value for configured language.
    So 9 custom completeness rules are implemented having 2 settings per rule:
    1. Language=[en-GB]
    2. LocaleStringFieldTypes=[ProductDescription,ProductCommercialText]

    Most likely the majority of the time it takes is overhead on spinning up the CustomCompletenessCriteria, loading settings, etc.
    Easiest way to solve this would be to add the custom criteria as native CR for two reasons:
    - It's cheaper in Azure because no need for a seperate container anymore to calculate the rule.
    - It would be good to have native completeness rules available for LocaleString datatype in inRiver.
    Most partners are building these kind of CR extensions now.

    BR, Maarten Buth

  • Avatar
    Danny Langlois

    If your need is to make sure that, for instance, ProductDescription & ProductCommercialText are filled in all languages, you could do it all in one custom CR that validates that all languages are filled. You'll gain performance for sure doing this. 

    We're using a lot of custom CR here as well and we never faced performance issue when saving an entity. Make sure that your CR is well optimized. 

  • Avatar
    Maarten Buth

    Hi Danny, thanks for your answer. The customers wants to see it per language, so we need 9 of them.

    Of course there are other 'tricks' like setting a boolean to true for every language.
    Just prefer to use Completeness concept where it is meant for.

    We do a GetFields instead of a GetEntityDataOnly for the LocaleStrings to be checked.
    However, it seems that native CR's are much faster.


Please sign in to leave a comment.