A SAS® Real-time Decision Manager campaign activation fails with the error "The active items in repository "SASDSEngineRepository" are invalid"


When attempting to activate decision campaigns in SAS® Real-time Decision Manager 6.6, the following error might occur in the SASDecisionServicesAdministration6.4.log log file:

YYYY-MM-DD HH:MM:SS,SSS ERROR  com.sas.dcsv.admin.rest.controllers.DecisionFlowsController - The active items in repository "SASDSEngineRepository" are invalid. This could happen if items in the repository were purged while active. Please deactivate all decision flows in the repository before proceeding. Please note that purging repository items is a restricted capability.

This issue occurs when there are one or more campaigns within the SASDSEngineRepository that fail to validate when attempting to activate a new campaign. As part of activation, all active campaigns are revalidated to ensure that all active campaigns have remained valid. This issue could occur due to the reason stated in the error message, or it could be that a modification of an existing activity was deployed yet the old version was used by another campaign.

Workaround

Method 1: Identify the Campaign(s) Failing Validation

To identify the campaign(s) failing validation and the associated reasons, complete the following steps:

1. Add the following logger to the <configuration directory>/Lev1/Web/Common/LogConfig/SASDecisionServicesAdministration-log4j.xml log4j configuration file:

<logger name="org.springframework.web.servlet.mvc.method.annotation.HttpEntityMethodProcessor" additivity="false">
    <level value="DEBUG" />
    <appender-ref ref="LogFile" />
</logger>

2. Restart SASServer7.

3. After retrying your activation, check the SASDecisionServicesAdministration6.4.log file for DEBUG messages similar to the following:

YYYY-MM-DD HH:MM:SS,SSS ERROR  org.springframework.web.servlet.mvc.method.annotation.HttpEntityMethodProcessor Parameter "XXXXX" of method "EXECUTE" of activity "activity_name" referenced by node "YYYY" of flow "campaign_name" does not exist.

4. Fix the issue and retry the activation.

Method 2: Deactivate all Decision Flows in the Respository

Another possible workaround for this issue is to deactivate all decision flows in the engine repository and retry activation for all flows that you want to activate.

If this method does not resolve the issue, try the steps outlined in Method 1.

More Information

If neither of the above methods circumvent the issue, contact SAS Technical Support for assistance.