Procedure: Fast upgrade Unica Campaign

Unica Campaign pre-upgrade

Procedure

  1. Import the Unica Campaign system tables backup from the old / base version to the system tables schema used in the clean 26.1.0 environment.
  2. Take a File system backup of the CAMPAIGN_HOME/partitions/partition(n) directory.
  3. Copy all the partitions data from the old environment's partition folders to the clean 26.1.0 environment Unica Campaign partition folder.

Upgrading Unica Campaign

Procedure

  1. Update the setenv.sh file with required values for the Unica Campaign upgrade. For details on environment variables in the setenv.sh file, refer to the Unica Campaign 26.1.0 Upgrade guide.
    1. Navigate to the path: <installation path>/Campaign/tools/upgrade/25.1.1+To26.1.0/

      Set the following variables in the setenv.sh file:

      Set JAVA_HOME='<Installation Path >/jre'

      Set CAMPAIGN_HOME='<Installation Path>/Campaign'

      Set LOG_TEMP_DIR='<Installation Path>/Campaign/logs'

      Set JDBCDRIVER_CLASSPATH=<JDBC DRIVER CLASSPATH>

    2. Add the JVM Option “-DFAST_UPGRADE_VERSION=<BASE_VERSION>"

      For example:

      JAVA_OPTIONS="${JAVA_OPTIONS} -DFAST_UPGRADE_VERSION=10.1.0

    3. Supported versions in fast upgrade:
      Upgrade from Version JVM Option
      10.1.x -DFAST_UPGRADE_VERSION=10.1.x
      11.0.x -DFAST_UPGRADE_VERSION=11.0.x
      11.0.1 -DFAST_UPGRADE_VERSION=11.0.1.x
      11.1 -DFAST_UPGRADE_VERSION=11.1.x
      12.1 -DFAST_UPGRADE_VERSION=12.1.x
  2. Pre-requisite to complete before running the Unica Campaign upgrade tool: The <CAMPAIGN_HOME>/install directory “jdbc.properties" file contains the correct JDBC URL, Platform system database userID and encrypted password. User will need to copy paste jdbc.properties file from Platform/tools/bin directory to Campaign/install directory. If this information is incorrect Campaign upgrade tool will fail with database authentication related errors.
  3. Execute Campaign “acUpgradeTool.sh". This Upgrade tool execution is similar to the usual acUpgradeTool execution. During the upgrade tool execution when prompted for “select base version to upgrade", you can see the upgrade version specified with the JVM option “-DFAST_UPGRADE_VERSION=<BASE_VERSION>". Select the fast upgrade base version to upgrade from.
  4. Updating the JDBC files in Unica Campaign: In the application server, update the JNDI details (schema / SID, userid, password) for Campaign JNDI as per the new database schema used with 26.1.0 environment.

Campaign post-upgrade

Setting the Campaign – Help About > Version

Procedure

  1. Change the Unica Campaign version in the Unica Platform registration:
    1. Export the version configuration using the following command on clean 26.1.0 environment:./configTool.sh -x -p "Affinium|Campaign|about" -f <PLATFORM_HOME>/conf/campaign_about.xml
    2. Edit the campaign_about.xml file generated by the above command. Change the version to 26.1.0.0.GA_BUILD".<GA_BUILD>. Replace this with build number referring to version.txt from installation location.
      <property id="xxxxxx" name="releaseNumber" type="string_property" width="40">
       <value>26.1.0.0.GA_BUILD</value>
       </property>
    3. Import the above edited file using the following command:./configTool.sh -v -i -o -p "Affinium|Campaign" -f <PLATFORM_HOME>/Platform/conf/campaign_about.xml
  2. Execute the following command to upgrade Campaign Security Policies from the base version to version 26.1.0 and navigate to <Platform_Home/tools/bin>.

    ./populateDb.sh -n Campaign

Unica Campaign configuration changes

Procedure

  1. Campaign “Campaign REST API Filter" registration:
    1. Navigate to the PLATFORM_HOME/tools/bin directory.
    2. Execute the following commands:
      configTool -v -i -p "Affinium|suite|security|apiSecurity|campaign" -f "full_path_to_Campaign_installation_directory\conf\API_Filter.xml"
      configTool -v -i -p "Affinium|suite|security|apiSecurity|campaign" -f "full_path_to_Campaign_installation_directory\conf\API_V2_Filter.xml"
      configTool -v -i -p "Affinium|suite|security|apiSecurity|campaign" -f "full_path_to_Campaign_installation_directory\conf\API_V3_Filter.xml"
  2. Campaign “Engage REST API" registration:
    1. Navigate to the PLATFORM_HOME/tools/bin directory.
    2. Execute the following command:./configTool.sh -vp -p "Affinium|suite|security|apiSecurity|campaign" -f <CAMPAIGN_HOME>/conf/Engage_API_Filter.xml
  3. Optimize navigation registration

    configTool -v -i -p "Affinium|suite|uiNavigation|mainMenu|Campaign" -f "full_path_to_Campaign_installation_directory\conf\optimize_navigation.xml"

  4. Campaign struts Related Changes

    In the upgrade of the MVC framework from Struts 1.3.8 to Spring 5.1.18, to fix Security vulnerability (in Struts 1.3.8) and to move to the current industry standard has caused changes in the extension of some of the urls mentioned in the configuration from ".do" to ".go". The following commands need to be executed to bring it to effect.

    1. configTool.bat -vp -o -p "Affinium|suite|uiNavigation|settingsMenu|campaignSettingsItem" -f <CAMPAIGN_HOME>/conf/campaign_setup_navigation_spring_update.xml
    2. configTool.bat -vp -o -p "Affinium|suite|uiNavigation|mainMenu|Campaign|Optimize" -f <CAMPAIGN_HOME>/conf/campaign_navigation_optimize_spring_update.xml
    3. configTool.bat -vp -o -p "Affinium|suite|uiNavigation|mainMenu|Campaign|All Offers" -f <CAMPAIGN_HOME>/conf/campaign_navigation_allOffers_spring_update.xml
    4. configTool.bat -vp -o -p "Affinium|Campaign|navigation" -f <CAMPAIGN_HOME>/conf/campaign_configuration_doLogout_spring_update.xml
    5. configTool.bat -vp -o -p "Affinium|suite|uiNavigation|mainMenu|Campaign|All Segments" -f <CAMPAIGN_HOME>/conf/campaign_navigation_allSegments_spring_update.xml
    6. configTool.bat -vp -o -p "Affinium|suite|uiNavigation|mainMenu|Campaign|All Sessions" -f <CAMPAIGN_HOME>/conf/campaign_navigation_allSessions_spring_update.xml
    7. configTool.bat -vp -o -p "Affinium|suite|uiNavigation|mainMenu|Campaign|All Campaigns" -f <CAMPAIGN_HOME>/conf/campaign_navigation_allCampaigns_spring_update.xml
    8. configTool.bat -vp -o -p "Affinium|Campaign|unicaACOOptAdmin" -f <CAMPAIGN_HOME>/conf/campaign_configuration_ext_doLogout_spring_update.xml
    9. configTool.bat -vp -o -p "Affinium|Campaign|navigation" -f <CAMPAIGN_HOME>/conf/campaign_configuration_offerDetails_spring_update.xml
    10. configTool.bat -vp -o -p "Affinium|suite|uiNavigation|mainMenu|Campaign|Monitoring Console" -f <CAMPAIGN_HOME>/conf/campaign_navigation_monitoring_console_spring_update.xml
    11. configTool.bat -vp -o -p "Affinium|Campaign|navigation" -f <CAMPAIGN_HOME>/conf/campaign_configuration_displayOfferList_spring_update.xml
    12. configTool.bat -vp -o -p "Affinium|Campaign|navigation" -f <CAMPAIGN_HOME>/conf/campaign_configuration_flowchartDetails_spring_update.xml
    13. configTool.bat -vp -o -p "Affinium|Campaign|unicaACOOptAdmin" -f <CAMPAIGN_HOME>/conf/campaign_configuration_ext_runOptimizeSession_spring_update.xml
    14. configTool.bat -vp -o -p "Affinium|Campaign|unicaACOOptAdmin" -f <CAMPAIGN_HOME>/conf/campaign_configuration_ext_stopOptimizeSessionRun_spring_update.xml
    15. configTool.bat -vp -o -p "Affinium|Campaign|unicaACOOptAdmin" -f <CAMPAIGN_HOME>/conf/campaign_configuration_ext_optimizeSessionProgress_spring_update.xml
    16. configTool.bat -vp -o -p "Affinium|Campaign|navigation" -f <CAMPAIGN_HOME>/conf/campaign_configuration_optimize_sessionLinkClicked_spring_update.xml
    17. configTool.bat -vp -o -p "Affinium|Campaign|navigation" -f <CAMPAIGN_HOME>/conf/campaign_configuration_optimize_editOptimizeSchedule_spring_update.xml
  5. Change Campaign configurations in the Unica Platform configuration:
    1. Change the Campaign navigation URLs.
    2. Change the “serverHost" under Settings for 'unicaACListener'(Affinium|Campaign|unicaACListener).
    3. Change DSN under UA_SYSTEM_TABLES if required.
    4. Change the JNDI name under UA_SYSTEM_TABLES if required.
    5. Run the following queries on the Campaign system database Unica Campaign and CDM Integration after the installation is completed. This is mandatory step.
      ALTER TABLE ua_contacthistory
      ADD CHANNELNAME VARCHAR(255);
      
      -- Step 1: Add nullable column
      
      ALTER TABLE ua_contacthistory
      ADD LOAD_TIMESTAMP TIMESTAMP;
      
      -- Step 2: Populate existing rows
      UPDATE ua_contacthistory
      SET LOAD_TIMESTAMP = CURRENT_TIMESTAMP
      WHERE LOAD_TIMESTAMP IS NULL;
      COMMIT;
      
      -- Step 3: Add NOT NULL + DEFAULT constraint
      ALTER TABLE ua_contacthistory
      MODIFY (
          LOAD_TIMESTAMP DEFAULT CURRENT_TIMESTAMP NOT NULL
      );
      Note: For user created Audience Level History tables, please update the query with the appropriate history table name and then execute it.
    6. Remap all system tables in the Campaign table mapping. This can be done using the following steps:
      1. Stop the listener.
      2. Remove “unica_tblcache.mgr" from <CAMPAIGN_HOME>/partitions/partition/conf.
      3. Start the listener.
      4. Navigate to Campaign settings > Table mapping.
    7. Update the logging configuration by replacing campaign_log4j.properties with campaign_log4j.xml.
      Settings for 'logging' (Affinium|Campaign|logging)
      log4jConfig ./conf/campaign_log4j.xml
  6. Platform – DBResourceBundle: The steps underneath will import resource bundles in Unica Platform. Execute the script underneath as specified:
    1. Navigate to <platform_home>/tools/bin
    2. DBResourceBundle.sh /bat -P Campaign -F <Campaign_home>/resourcebundles

Unica Campaign post-upgrade functional check

Procedure

  1. The Unica Campaign application navigation URL points to the old base environment. You must change this navigation URL to point to the target environment using the SQL script in the Unica Platform system database.
  2. Perform UAT on Unica Campaign application. Ensure that all the flowchart are opening and the run is successful.

Configuring Unica Insights reports with Campaign

Complete the following steps.

Procedure

  1. Import Campaign Reports schemas in Platform configuration.
  2. Run the following commands. Navigate to Platform_HOME/tools/bin directory.

    configTool -v -i -o -p "Affinium|Report|about" -f "<CAMPAIGN_HOME>/reports/schema/config_version.xml"

    configTool -v -i -o -p "Affinium|Report|schemas" -f "<CAMPAIGN_HOME>/reports/schema/config_schemas_Campaign.xml"

    configTool -v -i -o -p "Affinium|Report|schemas|Campaign" -f "<CAMPAIGN_HOME>/reports/schema/templates/camp_cust_attributes_template.xml"

    configTool -v -i -o -p "Affinium|Report|schemas|Campaign" -f "<CAMPAIGN_HOME>/reports/schema/templates/camp_performance_template.xml"

    configTool -v -i -o -p "Affinium|Report|schemas|Campaign" -f "<CAMPAIGN_HOME>/reports/schema/templates/offer_performance_template.xml"

    configTool -v -i -o -p "Affinium|Report|schemas|Campaign" -f "<CAMPAIGN_HOME>/reports/schema/templates/camp_offer_response_breakout_template.xml"

    configTool -v -i -o -p "Affinium|Report|schemas|Campaign" -f "<CAMPAIGN_HOME>/reports/schema/templates/camp_offer_contact_status_breakout_template.xml"

    configTool -v -i -o -p "Affinium|Report|schemas|Campaign" -f "<CAMPAIGN_HOME>/reports/schema/base/camp_view.xml"

    configTool -v -i -o -p "Affinium|Report|schemas|Campaign" -f "<CAMPAIGN_HOME>/reports/schema/custom/camp_cust_attributes.xml"

    configTool -v -i -o -p "Affinium|Report|schemas|Campaign" -f "<CAMPAIGN_HOME>/reports/schema/custom/camp_offer_response_breakout.xml"

    configTool -v -i -o -p "Affinium|Report|schemas|Campaign" -f "<CAMPAIGN_HOME>/reports/schema/custom/camp_offer_contact_status_breakout.xml"

    configTool -v -i -o -p "Affinium|Report|schemas|Campaign" -f "<CAMPAIGN_HOME>/reports/schema/custom/camp_performance.xml"

    configTool -v -i -o -p "Affinium|Report|schemas|Campaign" -f "<CAMPAIGN_HOME>/reports/schema/custom/offer_performance.xml"

  3. Update Campaign data source in Unica Insights report design files using Unica Insights utility.

    InsightsDBUtil -ds=CampaignDS -bPath="<Platform_Home>/Insights/Reports" -DBType=<databasetype> -URL=<databasetype> -user=<database user> -pwd=<database password>

  4. For Reports pack configurations, see the Unica Insights Reports Installation and Configuration guide.