Upgrade fails 'java.sql.SQLException Table confluence.BANDANA doesn't exist' due to case sensitivity
Platform Notice: Data Center - This article applies to Atlassian products on the Data Center platform.
Note that this knowledge base article was created for the Data Center version of the product. Data Center knowledge base articles for non-Data Center-specific features may also work for Server versions of the product, however they have not been tested. Support for Server* products ended on February 15th 2024. If you are running a Server product, you can visit the Atlassian Server end of support announcement to review your migration options.
*Except Fisheye and Crucible
Problem
Upgrade fails. The following appears in the atlassian-confluence.log
:
2007-11-27 04:59:01,724 ERROR [main] [sf.hibernate.util.JDBCExceptionReporter] logExceptions Table 'confluence.BANDANA' doesn't exist
2007-11-27 04:59:01,724 ERROR [main] [sf.hibernate.util.JDBCExceptionReporter] logExceptions Table 'confluence.BANDANA' doesn't exist
2007-11-27 04:59:01,728 ERROR [main] [sf.hibernate.util.JDBCExceptionReporter] logExceptions Table 'confluence.BANDANA' doesn't exist
2007-11-27 04:59:01,728 ERROR [main] [sf.hibernate.util.JDBCExceptionReporter] logExceptions Table 'confluence.BANDANA' doesn't exist
When checking the database, the table bandana does exist! The connection details to the database (which can be found in the confluence.cfg.xml
file) are also correct.
Diagnosis
Using your database tools, determine if the table exists, and if it matches the missing table from the error report.
- If the table names do not match (
bandana
in the database, andBANDANA
in the error message) then you're seeing a case sensitivity issue - If the table names do match, but you're still seeing this error, the table may not be owned by the correct schema.
Cause 1
When upgrading to a version prior to 2.7.2, a bug in Confluence may cause the BANDANA
table to not be created. See for more details
CONF-9959
-
Getting issue details...
STATUS
Resolution 1
Upgrade to Confluence 2.7.2 or higher.
Cause 2
The database collation (which controls case sensitivity) is incorrect; and must be adjusted. Typically, this is often seen in Microsoft SQL Server and MySQL databases.
Resolution 2
- MySQL: See the Database Setup For MySQL, and our guide on repairing the collation and character set of a MySQL Database
- Microsoft SQL Server: See the Database Setup for SQL Server, and our guide on fixing the collation and character set of a Microsoft SQL Server Database
Cause 3
The tables exist in the database, but belong to a different schema. The credentials being used by Confluence to not have access to that schema. Consider the following example in Microsoft SQL Server:
If the database object is dbo.BANDANA
, and jsmith
is not a member of the db_owner
role; jsmith
will be unable to access dbo.BANDANA
because he does not have access to the dbo
schema.
Resolution 3
You must ensure that your Database is configured correctly; specifically with regard to your user permissions. Test your setup by connecting to the database as the same user, and running the offending queries to ensure the user is setup correctly.
Still having problems?
Contact Atlassian Support. We'll be happy to advise you. Please include as much detail as possible, where applicable:
- Logs from the affected application (if applicable)
- Screenshots of the error message (if they're not covered in logs)
- Information about the steps you've taken previously