JIRA Upgrade or Installation Fails due to ORA-00972 identifier is too long Error
症状
When upgrading/installing JIRA and connecting to a database with Oracle 11g the following appears in the atlassian-jira.log
:
2013-06-22 09:56:51,094 localhost-startStop-1 ERROR [core.entity.jdbc.DatabaseUtil] Could not create missing indices for entity "ReplicatedIndexOperation"
2013-06-22 09:56:51,094 localhost-startStop-1 ERROR [core.entity.jdbc.DatabaseUtil] SQL Exception while executing the following:
CREATE INDEX node_id_index_operation_time_idx ON replicatedindexoperation (NODE_ID, AFFECTED_INDEX, OPERATION, INDEX_TIME)
Error was: java.sql.SQLSyntaxErrorException: ORA-00972: identifier is too long
This does not have any functional impact on JIRA at all — the identifier that is causing the error message is currently not being used.
原因
Oracle has a 30 character limitation on identifiers (table names and columns). Because node_id_index_operation_time_idx is over 30 characters, Oracle generates the error when trying to create JIRA's index.
回避策
If you want to get rid of the error message, do the following. Please note, as mentioned previously, this error does not have any functional impact on JIRA.
Navigate to the following folder
<JIRA-Install-Dir>\atlassian-jira\WEB-INF\classes\entitydefs
- Open up
entitymodel.xml
in a text editor and replace node_id_index_operation_time_idx with node_operation_idx Save the file, and restart JIRA