問題
- Oracle 12で6.2から7.1にアップグレードすると、structureIdとtemplateIdがJournalArticleテーブルで観察できるBasic Web Contentの構造とテンプレートに戻ることがある。 もう一つの症状としては、アップグレード後、カスタムテンプレートと構造を利用したWebコンテンツのコンテンツセクションにコンテンツが存在しないことが挙げられます。 アップグレードログに以下のWARNメッセージが表示されます。
WARN [main][UpgradeProcess:447] Attempting to upgrade table JournalArticle by recreating the table due to: ORA-54032: column to be renamed is used in a virtual column expression_ [Sanitized] WARN - Attempting to upgrade table JournalArticle by recreating the table due to: ORA-54032: column to be renamed is used in a virtual column expression_ [Sanitized]
環境への配慮
- Liferay EE 6.2
- Liferay DXP 7.1
決議
アップグレード中のこのプロセスでは、JournalArticleテーブルのStructureIdとtemplateIdの列の名前をDDMStructureKeyとDDMTemplateKeyに変更します。 オラクルはこのような変更をサポートしていません。 この動作を解決するためには、以下のことを行う必要があります。
- 6.2データベースで仮想/非表示のカラムがあるかどうかを確認します。 以下にクエリの例を示します。
select column_name, data_default, hidden_column from user_tab_cols where table_name = 'JOURNALARTICLE';
- 仮想カラムが存在する場合、カラムをバックアップ/コピーします。
- カラムの削除
- アップグレードの実行
- アップグレード完了後のデータベースへのカラムの追加
追加情報
- Oracleの制限については、以下のリンクで説明しています。
https://asktom.oracle.com/pls/asktom/f?p=100:11:0::::P11_QUESTION_ID:1770086700346491686 - これが発生したときにアップグレードプロセスを停止するために、次のLPSチケットが作成されました:
LPS-96555 - 次のドキュメントチケットは、アップグレードドキュメントを更新して、Oracle12データベースで発見された制限に言及するために作成されました。
LRDOCS-6995