"Could not read fields for table" error when creating an XML backup in Confluence

Still need help?

The Atlassian Community is here for you.

Ask the community

Symptoms

When trying to create site XML backup in Confluence, it will fail with one of the following errors:

atlassian-confluence.log
com.atlassian.confluence.importexport.ImportExportException: java.lang.RuntimeException: Could not read fields for table AO_563AEE_ACTIVITY_ENTITY
atlassian-confluence.log
2015-06-20 15:31:12,110 ERROR [http-bio-8443-exec-23] [[Standalone].[localhost].[/].[action]] log Servlet.service() for servlet [action] in context with path [] threw exception [Servlet execution threw an exception] with root cause
java.lang.ClassNotFoundException: javax.xml.bind.DatatypeConverter
atlassian-confluence.log
2015-07-22 12:13:29,567 WARN [http-nio-8080-exec-5] [confluence.util.profiling.DefaultActivityMonitor] close Exceeded the threshold of 60000 ms: ActivitySnapshot{startTime=1437559852430, threadId=169, threadName='http-nio-8080-exec-5', userId='admin', type='web-request', summary='/admin/dobackup.action?atl_token=1f2062a607d81112497e87eedc01a993e8bdd1c7&backupAttachments=true&backup=Sichern'}
	-- referer: http://0.0.0.0:8080/admin/backup.action | url: /admin/dobackup.action | userName: admin
2015-07-22 12:13:29,567 ERROR [http-nio-8080-exec-5] [[Standalone].[localhost].[/].[action]] log Servlet.service() for servlet [action] in context with path [] threw exception [Servlet execution threw an exception] with root cause
java.lang.ClassNotFoundException: javax.xml.bind.DatatypeConverter not found by com.atlassian.activeobjects.activeobjects-plugin [10]

Cause

Confluence cannot read or backup an unknown ActiveObjects table data. This can be caused by a corrupt Confluence table, or a Jira table if the Confluence instance uses the same database as a Jira instance.

Resolution

Always back up your data before performing any modifications to the database. If possible, test any alter, insert, update, or delete SQL commands on a staging server first.

If your logs show the "could not read fields for table..." error mentioned above that identifies the offending table, simply drop the table mentioned in the error. Otherwise, take the following steps to increase logging and identify the table that nees to be dropped:

  1. Go to  > General Configuration Logging and Profiling
  2. Add new entry "com.atlassian.activeobjects.confluence.backup" and set it to "INFO".

  3. Save the changes and verify the class has been turned on.

  4. Try to perform the backup again.
  5. Go to atlassian-confluence.log and search for the string "beginDatabaseInformationBackup"
  6. Scroll down to find the last table before Confluence returns with the same "ERROR" message described above.
  7. Drop the table from the database, then re-attempt the export.

For more information on logging and profiling, see Configuring Logging

Known Issues

Other than caused by JIRA AO tables as mentioned above, the table  "AO_DCA036_ENCRYPTION_KEY"  from Encryption add-on developed by ServiceRocket has been observed to causing this issue.

Last modified on Feb 8, 2018

Was this helpful?

Yes
No
Provide feedback about this article
Powered by Confluence and Scroll Viewport.