XML Restore to Oracle Database fails due to users being on the system while XML backup is created(ORA-1400).
Platform Notice: Data Center Only - This article only applies to Atlassian products on the Data Center platform.
Summary
When attempting to run an XML Restore, the restore reaches the 90% mark, moves quickly to 100% and shows as completed.
However when attempting to use Jira, the application can display some of the following symptoms:
- Plugins not functioning correctly
- Functionality is not working as expected
- Certain Data appears to be missing.
Environment
Any version of Jira.
Diagnosis
Within the atlassian-jira.log file during the import, you will see entries similar to the one below:
Caused by: Error : 1400, Position : 0, Sql = INSERT INTO "AO_60DB71_BOARDADMINS" ("KEY","TYPE","RAPID_VIEW_ID") VALUES (:1 ,:2 ,:3 ) RETURNING ID INTO :4 , OriginalSql = INSERT INTO "AO_60DB71_BOARDADMINS" ("KEY","TYPE","RAPID_VIEW_ID") VALUES (?,?,?) RETURNING ID INTO ?, Error Msg = ORA-01400: cannot insert NULL into ("JIRADB"."AO_60DB71_BOARDADMINS"."ID")
at oracle.jdbc.driver.T4CTTIoer11.processError(T4CTTIoer11.java:513)
... 389 more
The section of the message Error Msg = ORA-01400: cannot insert NULL into indicates that the XML Restore process is attempting to insert Null information.
The table names will likely differ.
In addition to what is observed in the Jira logs, within the database itself, the number of sequences created within the Jira database for the imported environment may vary between different XML imports.
Cause
This can occur if users are accessing Jira while the XML backup is created.
This can create data inconsistency within the XML Backup.
Solution
The XML Backup should be taken while the system is not in use.
Additional information on how this can be accomplished is available in the guide, Preventing users from accessing Jira applications during backups.