After upgrade from Pega 8.2 to 8.6 we receive the error message "PRRuntimeException: Too many IH records retrieved. Number of rows retrieved is higher than the set threshold of 450. You can adjust it by changing the DSS alerts/interactionHistoryReadRowsThreshold.<CR> at com.pegarules.generated.pzExecuteIHLoadSQL.." when we run a campaign.
While it may seem straightforward to just have the DSS created and to set its value to a number higher than the threshold, that would just be a temporary work around. How would you know what should be the new threshold? If we assume that the new threshold has to be say 1000 for e.g., that reality might potentially change 6 or 12 months down the line.
What probably needs looking at is why are there so many interactions in IH for a given subjectID? Is it typical for a subjectID to have so many interactions in IH? Is there an IH archival mechanism in place? Have you explored IH summaries and is there a reason why IH summaries would not work for your use case?
The point is that reading records from IH is performance intensive. Therefore, higher that threshold, higher are the performance implications!
We undertand that setting this threshold to a higher value will have a negative impact in performance... In our current version there is a bug with the IH summary component, that is why we didn't use it...
We are upgrading our preproduction enviroment from pega 8.2 to 8.6, and plannign to upgrade production in a couple of weeks this is why we need a short term solution (setting the DSS to a higher value). Latter we will take advanged of this commponent and start using IH summaries.
For this reason, we are still wondering in which rulset this DSS should be created? A ruslest associated with a platform ruleset or a rulset associated with our own application?