PINsafe upgrade fails on MySQL appliance

From Swivel Knowledgebase Wiki

Jump to: navigation, search

Image:logo.gif

Contents

Overview

After upgrading the PINsafe server the PINsafe admin console is not accessible.


Prerequisites

PINsafe upgrade from 3.x to a higher version

PINsafe Appliance


Symptoms

PINsafe administration console cannot be accessed

erroror messages relating to MySQL tables PINSAFEM and PINSAFEO may be displayed

The following error message may be displayed:

 type Exception report
 
 message
 
 description The server encountered an internal error () that prevented it from fulfilling this request.
 
 exception
 
 java.lang.NullPointerException
 
 com.swiveltechnologies.pinsafe.server.session.AbstractSessionManager.createFakeSession(AbstractSessionManager.java:60)
 
 com.swiveltechnologies.pinsafe.server.session.SessionQueue.createFakeSession(SessionQueue.java:39)

 com.swiveltechnologies.pinsafe.server.user.LocalAuth.sessionStart(LocalAuth.java:840)
 
 com.swiveltechnologies.pinsafe.server.ui.AdminLogin.doPost(AdminLogin.java:192)
 
 javax.servlet.http.HttpServlet.service(HttpServlet.java:709)
 
 javax.servlet.http.HttpServlet.service(HttpServlet.java:802)

 com.swiveltechnologies.pinsafe.server.filter.AdminConsoleFilter.doFilter(AdminConsoleFilter.java:135)

 note The full stack trace of the root cause is available in the Apache Tomcat/5.5.20 logs.


The following error may be seen on the upgrade first access:

 Exception occurred during database access, exception: com.swiveltechnologies.pinsafe.server.user.database.DatabaseException: com.mysql.jdbc.exceptions.MySQLSyntaxErrorException: ALTER command denied to user 'pinsafe'@'localhost' for table 'PINSAFEM'
 com.swiveltechnologies.pinsafe.server.user.database.DatabaseException: com.mysql.jdbc.exceptions.MySQLSyntaxErrorE

xception: ALTER command denied to user 'pinsafe'@'localhost' for table 'PINSAFEM'

subsequent errors may show the following:

 com.swiveltechnologies.pinsafe.server.user.database.DatabaseException: com.mysql.jdbc.exceptions.MySQLSyntaxErrorE

xception: Table 'PINSAFEO' already exists


Solution

Option 1: Reinstall the previous version of PINsafe.

Option 2: Edit the MySQL table to complete the upgrade.

Check that the user pinsafe has permissions set to all. Login to the Appliance webmin using https://IP:10000. Select Servers/MySQL Database, then from Global Options select User Permissions, if the pinsafe user does not have permissions All, then select the user pinsafe and then highlight all the permissions and click on Save. Check that the user pinsafe has permissions set to all.

Check to see if the pinsafe_rep database has not upgraded. Login to the Appliance webmin using https://IP:10000. Select Servers/MySQL then from MySQL databases select pinsafe_rep. Select the table PINSAFEK and then click on View Key. If the key has a value of the old PINsafe version (Example 3300 instead of 3500) then the database has not been upgraded correctly.

To complete the MySQL database upgrade carry out the following steps:

Login to the appliance through the command line

Enter MySQL command mode by typing mysql

then enter: use pinsafe_rep;

then enter (where A=New PINsafe version number): update PINSAFEK set A=3500;

To exit the MySQL command mode enter: exit;

Example:

 mysql
 Welcome to the MySQL monitor.  Commands end with ; or \g.
 Your MySQL connection id is 1661 to server version: 5.0.22-log
 
 Type 'help;' or '\h' for help. Type '\c' to clear the buffer.
 
 mysql> use pinsafe_rep;
 Reading table information for completion of table and column names
 You can turn off this feature to get a quicker startup with -A
 
 Database changed
 mysql> update PINSAFEK set A=3500;
 Query OK, 1 row affected (0.00 sec)
 Rows matched: 1  Changed: 1  Warnings: 0
 
 mysql> exit;
 Bye

Check to see if the pinsafe_rep database upgraded. Login to the Appliance webmin using https://IP:10000. Select Servers/MySQL then from MySQL databases select pinsafe_rep. Select the table PINSAFEK and then click on View Key. If the key has a value of the new PINsafe version then the database has been upgraded correctly.

Personal tools