000036208 - Upgrade to RSA NetWitness Platform 11.x fails when there are custom dashboard preferences

Document created by RSA Customer Support Employee on Apr 3, 2018Last modified by RSA Customer Support Employee on May 31, 2018
Version 4Show Document
  • View in full screen mode

Article Content

Article Number000036208
Applies ToRSA Product Set: NetWitness Platform, NetWitness Logs & Network
RSA Product/Service Type: NetWitness Admin Server
RSA Version/Condition: 11.0.0.0, 11.1.0.0
 
IssueWhen attempting to upgrade to RSA NetWitness Platform 11.x, you may see that after login that "Migration Failed" is shown on the web page. This could happen because of multiple reasons. Please review the following symptoms and find the one that best fits the situation.

Situation 1:
The following can be seen in /var/lib/netwitness/uax/logs/migration.log on the Netwitness Admin Server:

FAILED: User Migration 
Migration job failed due to error:ClassNotFoundException: com.rsa.smc.sa.reporter.web.ui.chart.ReporterChartDashletHideValueOptions 
Finished migration, status: FAILED


Situation 2:
The following can be seen in /var/lib/netwitness/uax/logs/sa.log on the Netwitness Admin Server:




2018-05-22 15:11:46,148 [main] ERROR org.springframework.batch.core.step.AbstractStep - Encountered an error executing step Dashboard Migration in job 11.0 Migra
tion Job
java.lang.IllegalArgumentException: Unknown name value for enum class com.netwitness.platform.server.common.domain.model.ComponentType: ALERTER
....
org.springframework.batch.core.step.item.SimpleChunkProvider$1.doInIteration(SimpleChunkProvider.java:114)
at org.springframework.batch.repeat.support.RepeatTemplate.getNextResult(RepeatTemplate.java:368)
at org.springframework.batch.repeat.support.RepeatTemplate.executeInternal(RepeatTemplate.java:215)
.....
at org.eclipse.jetty.start.Main.main(Main.java:99)
Caused by: java.lang.IllegalArgumentException: No enum constant com.netwitness.platform.server.common.domain.model.ComponentType.ALERTER
at java.lang.Enum.valueOf(Enum.java:238)
at org.hibernate.type.EnumType.nullSafeGet(EnumType.java:124)
CauseSituation 1:
In version 11.0 of the RSA NetWitness Platform, there is a dashboard customization option that is no longer utilized. 
The class for this feature had been removed and thus creates a failure to read the class ReporterCharDashletHideValueOptions during the upgrade. 

Situation 2:
A particular Dashboard is using a component type of ALERTER when this value has since been renamed in the 11.1 to ALERTING
ResolutionThe deprecated customized dashboard class ReporterCharDashletHideValueOptions has been reintroduced in RSA NetWitness Logs & Network version 11.1 which resolves the issue.
WorkaroundWe have workarounds for both conditions listed below. Please use the one that fits your situation.
  1. Connect to the RSA NetWitness Admin server via SSH.

    SSH root@<admin-server>

  2. Stop the Jetty Web service.

    systemctl stop jetty

  3. Change the directory to the working location.

    cd /var/lib/netwitness/uax/db/

  4. Use the cp command to copy the h2 jar file to a central location if it is not already located in /var/lib/netwitness/uax/db, using the locate command as necessary to find the proper file.

    locate h2*.jar
    cp /home/rsasoc/rsa/soc/reporting-engine/temp/reporting-engine_20180228220618.1181/lib/h2-1.3.174.jar /var/lib/netwitness/uax/db/


  5. Open H2 SQL prompt on the RSA NetWitness Admin server.

    java -cp h2-1.3.172.jar org.h2.tools.Shell -url jdbc:h2:file:platform


    Note: The command above assumes that the h2-1.3.172.jar files exists in the /var/lib/netiwtness/uax/db directory.

    You can now apply the fix that best fits your situation.

     


       SITUATION 1:
Below is an example of what is in USER_PREFEREENCES from the custom dashboards:

sql> select * from USER_PREFERENCES where name ='user.dashboard.preferences.chart.hide.value';

USER_ID | VALUE | NAME 
82 | aced0005737200116a6176612e7574696c2e486173684d61700507dac1c31660d103000246000a6c6f6164466163746f7249 | user.dashboard.preferences.chart.hide.value 
124 | aced0005737200116a6176612e7574696c2e486173684d61700507dac1c31660d103000246000a6c6f6164466163746f7249 | user.dashboard.preferences.chart.hide.value 
(data is partially truncated) 
(2 rows, 5 ms)

Delete what custom dashboard preferences you have:


sql> delete from USER_PREFERENCES where name = 'user.dashboard.preferences.chart.hide.value'; 
(Update count: 2, 10 ms)

         
       SITUATION 2:

Run a select statement to see all of the affected Dashboards with the ALERTER ComponentType

select * from DASHBOARD where COMPONENTTYPE = 'ALERTER';

You should see one or more rows as a result of your query, similar to Situation 1. Update each result of the query with the following update statement using the ID tied to that row in the table.


update DASHBOARD set COMPONENTTYPE = 'ALERTING' where ID = <value of ID>;




After applying either the fix for Situation 1 and/or Situation 2, you can start the Jetty Web UI Service back up

systemctl start jetty




When the upgrade is complete you can add back the custom dashboard preferences mentioned in Situation 1.

Attachments

    Outcomes