Upgrading Confluence to 7.11+ fails with ORA-00972

プラットフォームについて: Server および Data Center のみ。この記事は、Server および Data Center プラットフォームのアトラシアン製品にのみ適用されます。

サーバー*製品のサポートは 2024 年 2 月 15 日に終了しました。サーバー製品を利用している場合は、アトラシアンのサーバー製品のサポート終了のお知らせページにて移行オプションをご確認ください。

*Fisheye および Crucible は除く

要約

When upgrading Confluence to 7.11+ the upgrade fails and throws an ORA-00972 error in the UI and logs.

環境

  • 7.11 以降
  • サーバーまたは Data Center
  • Oracle Database 11g R2, 12c R1 & R2, 19c

診断

Observer the following error in the UI:

altassian-confluence.log
Upgrade failed. Please consult the system logs for details. You will need to fix these problems, restore your database and confluence home directory to the pre upgrade state. Then retry the upgrade. Upgrade error message: Upgrade task com.atlassian.confluence.upgrade.upgradetask.DenormalisedSpacePermissionsUpgradeTask@37fee42c failed during the SCHEMA_UPGRADE phase due to: StatementCallback; bad SQL grammar [ALTER TABLE DENORMALISED_SPACE_CHANGE_LOG MODIFY (ID DEFAULT DENORMALISED_SPACE_CHANGE_LOG_SEQ.NEXTVAL)]; nested exception is java.sql.SQLSyntaxErrorException: ORA-00972: identifier is too long

 (info) <home-directory>/logs/atlassian-confluence.log will also call out "ORA-00972: identifier is too long"

原因

Confluence 7.11 introduces an identifier that is longer than 30 characters and removes support for Oracle 12c R1, which has a 30-byte character limit. Oracle 12c R2 and beyond increase the limit to 128 bytes. When that error is thrown, either the Oracle database is running 12c R1 or is running in compatibility mode.

If you are running a newer version, check if compatibility mode is enabled with the following query:

Checking the Compatibility Level of Oracle Database
SQL> SELECT name, value FROM v$parameter
         WHERE name = 'compatible';

(info) source: Migration issue Oracle: ORA-00972: identifier is too long

ソリューション

For more details about the Oracle compatibility mode please review:

  1. Confluence を停止します。
  2. Rollback the upgrade
  3. Disable compatibility mode. Since Oracle compatible setting doesn't have on/off setting, run the below query to set the compatible version to match the current Oracle database version: 

    Example to Disable the COMPATIBLE mode in 12c R2
    SQL> ALTER SYSTEM SET COMPATIBLE = '12.2.0.1' SCOPE=SPFILE;
  4. Perform the Confluence upgrade again
最終更新日: 2023 年 2 月 1 日

この内容はお役に立ちましたか?

はい
いいえ
この記事についてのフィードバックを送信する
Powered by Confluence and Scroll Viewport.