To learn more about Tempo products, please visit our Help Center. For support, see our Support Portal.

Tempo plugin pages 404ing after plugin or Jira upgrade



Question

Tempo links and pages show 404 error after a plugin upgrade or Jira upgrade.

Answer

Look in the atlassian-jira.log for errors like this one:

2018-06-25 23:03:54,157 http-nio-8080-exec-2 ERROR chaas@denacom.com 1383x6823x1 1jb7x0x 189.204.97.19 /secure/TempoUpdated.jspa [c.a.j.web.dispatcher.JiraWebworkActionDispatcher] Exception thrown from action 'TempoUpdated', returning 404 org.springframework.beans.factory.BeanCreationException: Error creating bean with name 'com.tempoplugin.view.about.TempoUpdated': Bean instantiation via constructor failed; nested exception is org.springframework.beans.BeanInstantiationException: Failed to instantiate [com.tempoplugin.view.about.TempoUpdated]: Constructor threw exception; nested exception is java.lang.reflect.UndeclaredThrowableException at org.springframework.beans.factory.support.ConstructorResolver.autowireConstructor(ConstructorResolver.java:275) at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.autowireConstructor(AbstractAutowireCapableBeanFactory.java:1143) at java.lang.Thread.run(Thread.java:745) Caused by: org.springframework.beans.BeanInstantiationException: Failed to instantiate [com.tempoplugin.view.about.TempoUpdated]: Constructor threw exception; nested exception is java.lang.reflect.UndeclaredThrowableException at org.springframework.beans.BeanUtils.instantiateClass(BeanUtils.java:163) Caused by: java.lang.reflect.UndeclaredThrowableException at com.tempoplugin.team.service.permission.TeamPermissionManagerImpl.getTeamsWhereUserIsLead(TeamPermissionManagerImpl.java:468) at com.tempoplugin.team.service.permission.TeamPermissionManagerImpl.hasUserTeamPermission(TeamPermissionManagerImpl.java:438) Caused by: com.atlassian.activeobjects.internal.ActiveObjectsSqlException: There was a SQL exception thrown by the Active Objects library: Database: - name:MySQL - version:5.7.22-0ubuntu0.16.04.1 - minor version:7 - major version:5 - name:MySQL Connector Java - version:mysql-connector-java-5.1.44 ( Revision: b3cda4f864902ffdde495b9df93937c3e20009be ) com.mysql.jdbc.exceptions.jdbc4.MySQLSyntaxErrorException: REFERENCES command denied to user 'jiradb'@'localhost' for table 'AO_AEFED0_PGP_GROUP' at com.atlassian.activeobjects.internal.EntityManagedActiveObjects.migrate(EntityManagedActiveObjects.java:53) at com.atlassian.activeobjects.internal.AbstractActiveObjectsFactory$1.doInTransaction(AbstractActiveObjectsFactory.java:77) at com.atlassian.activeobjects.internal.AbstractActiveObjectsFactory$1.doInTransaction(AbstractActiveObjectsFactory.java:72) ... 6 more Caused by: com.mysql.jdbc.exceptions.jdbc4.MySQLSyntaxErrorException: REFERENCES command denied to user 'jiradb'@'localhost' for table 'AO_AEFED0_PGP_GROUP' at sun.reflect.NativeConstructorAccessorImpl.newInstance0(Native Method) at sun.reflect.NativeConstructorAccessorImpl.newInstance(NativeConstructorAccessorImpl.java:62) at sun.reflect.DelegatingConstructorAccessorImpl.newInstance(DelegatingConstructorAccessorImpl.java:45) at java.lang.reflect.Constructor.newInstance(Constructor.java:423) at com.atlassian.activeobjects.internal.EntityManagedActiveObjects.migrate(EntityManagedActiveObjects.java:51) ... 44 more

Specially for the error: Caused by: com.mysql.jdbc.exceptions.jdbc4.MySQLSyntaxErrorException: REFERENCES command denied to user 'jiradb'@'localhost' for table 'AO_AEFED0_PGP_GROUP'

If the errors look the same and the MySQL version of the customer is 5.7.6 or higher, refer to this Atlassian documentation to fix the issue.
This error can happen anytime the database user has not being granted the necessary permissions, and JIRA is expected to create a new foreign key constraint. 
The cause for this is explained deeper in MySQL :: MySQL 5.7 Reference Manual :: 7.2.1 Privileges Provided by MySQL.

https://tempo-io.atlassian.net/browse/TCS-1542