Support Article
Interaction History component throws error when IH is extended
SA-25623
Summary
Interaction History (IH) component throws error when IH is extended with additional attributes in the transform rule:Data-Decision-IH-Configuration -pyInteractionHistoryConfiguration .
Once the new property is mapped and the IHFact table is altered to add the new column, the Interaction History component in the Strategy which retrieves the IH data for last 60 days throws an Oracle Error in the logs for invalid identifier in the IH fact table. This is the same column which has been added to the FACT table.
The fix is to restart the server to clear some cache (which is presumably used by the DSM APIs to get the IH fact Properties). After the restart the IH component works as normal.
Error Messages
java.sql.SQLSyntaxErrorException: ORA-00904: "FACTTABLE"."IHAGGLASTSRESPONSE": invalid identifier
com.pega.pegarules.pub.database.DatabaseException: There was a problem getting a list: code: 904 SQLState: 42000 Message: ORA-00904: "FACTTABLE"."IHAGGLASTSRESPONSE": invalid identifier
Steps to Reproduce
1. Extend the Interaction History by adding new columns or properties.
2. Remove the added columns from IH table from the Data Transformation.
3. Make a call to fetch Interaction History through Strategy.
.
Root Cause
Interaction History component throws error when IH is extended with additional attributes in the transform rule: Data-Decision-IH-Configuration -pyInteractionHistoryConfiguration and if it is deleted at a later stage.
There is a static member (static_InteractionHistoryCache) in the Interaction rule that holds instance of InteractionHistoryQuery object. The query has the reference to the newly added/extended attribute. Even if the user deletes the column from the database table and also from the Data Transform (pyInteractionHistoryConfiguration), this query still holds reference to that attribute and hence fails during execution.
Resolution
Apply HFix-27957.
Published July 29, 2016 - Updated October 8, 2020
Have a question? Get answers now.
Visit the Collaboration Center to ask questions, engage in discussions, share ideas, and help others.