Spectrum Report Manager (SRM) will not start because of a corrupt table. When trying to launch the following error is seen:
SRM has not finished starting.
The $SPECROOT/tomcat/logs/catalina.out (Linux) or stdout.log (Windows) file shows an error similar to the following:
Caused by: java.sql.SQLException: Table './archive/archive_activity_log' is marked as crashed and should be repaired
at com.mysql.jdbc.SQLError.createSQLException(SQLError.java:1075)
at com.mysql.jdbc.MysqlIO.checkErrorPacket(MysqlIO.java:3562)
at com.mysql.jdbc.MysqlIO.checkErrorPacket(MysqlIO.java:3494)
at com.mysql.jdbc.MysqlIO.sendCommand(MysqlIO.java:1960)
at com.mysql.jdbc.MysqlIO.sqlQueryDirect(MysqlIO.java:2114)
at com.mysql.jdbc.ConnectionImpl.execSQL(ConnectionImpl.java:2690)
at com.mysql.jdbc.StatementImpl.executeUpdate(StatementImpl.java:1648)
at com.mysql.jdbc.StatementImpl.executeUpdate(StatementImpl.java:1567)
at org.apache.commons.dbcp.DelegatingStatement.executeUpdate(DelegatingStatement.java:225)
at org.springframework.jdbc.core.JdbcTemplate$1UpdateStatementCallback.doInStatement(JdbcTemplate.java:538)
at org.springframework.jdbc.core.JdbcTemplate$1UpdateStatementCallback.doInStatement(JdbcTemplate.java:535)
at org.springframework.jdbc.core.JdbcTemplate.execute(JdbcTemplate.java:405)
Release : Any
Component : Report Manager
In the above example the './archive/archive_activity_log' table is corrupt and needs to be repaired.
In the above example, the database is the "archive" database and the table is the "archive_activity_log" table.
You may see a different table in a different database that is corrupt and needs to be repaired
NOTE: In the following MySql commands, replace <PASSWD> with the root password for your DX NetOps Spectrum version.
Using the above example of the "archive_activity_log" table being corrupt in the "archive" database":
- Log into the SRM system as the user that owns the Spectrum installation
- If on Windows, start a bash shell by running "bash -login"
- cd to the $SPECROOT/mysql/bin directory and enter the following command to log into mysql:
./mysql --defaults-file=../my-spectrum.cnf -uroot -p<PASSWD> archive -A
- Using the above example, run the following command at the mysql prompt:
repair table archive_activity_log;
- Restart tomcat