XML backup fails with Error "There was a problem backing up data for the null plugin"

Platform notice: Server and Data Center only. This article only applies to Atlassian products on the Server and Data Center platforms.

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

Summary

Generating XML backup gives an error of "There was a problem backing up data for the null plugin"

Environment

MySQL 5.7.38.

Diagnosis

  • Jira starts running OutofMemoryError(OOM )and the following errors can be seen in the atlassian-jira.log :
2022-12-04 07:03:51,394+0000 http-nio-8080-exec-23 ERROR admin 417x705x2 1nq47e6 18.132.138.241,172.18.139.10 /secure/admin/XmlBackup.jspa [c.a.j.bc.dataimport.DefaultExportService] Error during Active Objects Backup
com.atlassian.activeobjects.spi.ActiveObjectsImportExportException: There was an error during import/export with <unknown plugin>:
	at com.atlassian.activeobjects.backup.ImportExportErrorServiceImpl.newImportExportSqlException(ImportExportErrorServiceImpl.java:26)
*Caused by: java.lang.OutOfMemoryError: Java heap space*


  • The following error can be seen, which indicates a problem in connecting with the DB during the backup and it's getting closed:
2022-12-06 16:47:51,875+0000 http-nio-8080-exec-6 ERROR admin 962x103x1 ybf2wf 18.132.138.241,172.18.139.10 /secure/admin/XmlBackup.jspa [c.a.j.bc.dataimport.DefaultExportService] Error during Active Objects Backup
com.atlassian.activeobjects.spi.ActiveObjectsImportExportException: There was an error during import/export with <unknown plugin>:
	at com.atlassian.activeobjects.backup.ImportExportErrorServiceImpl.newImportExportSqlException(ImportExportErrorServiceImpl.java:26)
	at com.atlassian.dbexporter.jdbc.JdbcUtils.withNoAutoCommit(JdbcUtils.java:57)
	at com.atlassian.dbexporter.exporter.DataExporter$1.call(DataExporter.java:52)
	at com.atlassian.dbexporter.exporter.DataExporter$1.call(DataExporter.java:49)
	at com.atlassian.dbexporter.jdbc.JdbcUtils.withConnection(JdbcUtils.java:29)
	at com.atlassian.dbexporter.exporter.DataExporter.export(DataExporter.java:49)
		... 307 more
Caused by: com.mysql.jdbc.exceptions.jdbc4.MySQLNonTransientConnectionException: No operations allowed after connection closed.
	at java.base/jdk.internal.reflect.NativeConstructorAccessorImpl.newInstance0(Native Method)
	at java.base/jdk.internal.reflect.NativeConstructorAccessorImpl.newInstance(Unknown Source)
	at java.base/jdk.internal.reflect.DelegatingConstructorAccessorImpl.newInstance(Unknown Source)
	at java.base/java.lang.reflect.Constructor.newInstance(Unknown Source)
	at com.mysql.jdbc.Util.handleNewInstance(Util.java:425)
	at com.mysql.jdbc.SQLError.createSQLException(SQLError.java:919)
	at com.mysql.jdbc.SQLError.createSQLException(SQLError.java:898)
	at com.mysql.jdbc.SQLError.createSQLException(SQLError.java:887)
	at com.mysql.jdbc.SQLError.createSQLException(SQLError.java:861)
	at com.mysql.jdbc.ConnectionImpl.throwConnectionClosedException(ConnectionImpl.java:1182)
	at com.mysql.jdbc.ConnectionImpl.checkClosed(ConnectionImpl.java:1177)
	at com.mysql.jdbc.ConnectionImpl.setAutoCommit(ConnectionImpl.java:4735)


  • Check current timeout values( interactive_timeout and wait_timeout) by running the following in MySQL with a privileged account:
SHOW VARIABLES LIKE '%timeout%';

(info) Default Values:

wait_timeout = 28800
interactive_timeout = 28800


Cause

  1. Table(s) with huge data meant for third-party apps and application is running into issues clearing the data.
  2. The interactive_timeout and wait_timeout in MySQL are using the default values (28800).
  3. The XML backup is running and may be consuming resources. The XML backup does not scale well for large JIRA instances.

Solution

  • Reach out to the 3rd party vendor as they need to confirm why there is huge data in the table and if there will be an issue in clearing the data.
  • Edit my.cnf file and increase the interactive_timeout and wait_timeout to be higher than the current value. You can do this by adding the respective variable and value under the [mysqld] section. Restart MySQL to apply the changes.
  • If the above 2 do not help, as a temporary measure, increase JIRA's Heap Space allocation and re-try backing up data.



Last modified on Jan 24, 2024

Was this helpful?

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