legacy-knowledge-base
公開されました Sep. 10, 2025

ORA-00001 WARN: 一意制約

written-by

Debora Vita

How To articles are not official guidelines or officially supported documentation. They are community-contributed content and may not always reflect the latest updates to Liferay DXP. We welcome your feedback to improve How To articles!

While we make every effort to ensure this Knowledge Base is accurate, it may not always reflect the most recent updates or official guidelines.We appreciate your understanding and encourage you to reach out with any feedback or concerns.

legacy-article

learn-legacy-article-disclaimer-text

問題

  • Oracle データベースを使用して DXP 7.2 から 7.4 U53 にアップグレードすると、次の WARN メッセージが表示されました:
    ORA-00001: unique constraint (PORTALESLIFERAY1.IX_CB778855,  nos podeis decir a que se debe y si afecta al proceso de acutalización del producto.

    com.liferay.portal.kernel.log.LogSanitizerException: java.sql.SQLIntegrityConstraintViolationException: ORA-00001: unique constraint (PORTALESLIFERAY1.IX_CB778855) violated_ [Sanitized]

    at oracle.jdbc.driver.T4CTTIoer11.processError(T4CTTIoer11.java:494) ~[ojdbc8.jar:18.3.0.0.0]

    at oracle.jdbc.driver.T4CTTIoer11.processError(T4CTTIoer11.java:446) ~[ojdbc8.jar:18.3.0.0.0]

    at oracle.jdbc.driver.T4C8Oall.processError(T4C8Oall.java:1052) ~[ojdbc8.jar:18.3.0.0.0]

    at oracle.jdbc.driver.T4CTTIfun.receive(T4CTTIfun.java:537) ~[ojdbc8.jar:18.3.0.0.0]

    at oracle.jdbc.driver.T4CTTIfun.doRPC(T4CTTIfun.java:255) ~[ojdbc8.jar:18.3.0.0.0]

    at oracle.jdbc.driver.T4C8Oall.doOALL(T4C8Oall.java:610) ~[ojdbc8.jar:18.3.0.0.0]

環境

  • DXP 7.4

解像度

  • WARNレベルでは、以下の例外が表示されるが、無視して構わない:
    2023-02-09 09:46:46.396 WARN  [main][BasePortletIdUpgradeProcess:511] null
    com.liferay.portal.kernel.log.LogSanitizerException: java.sql.SQLIntegrityConstraintViolationException: ORA-00001: unique constraint (PORTALESLIFERAY1.IX_CB778855) violated_ [Sanitized]
    at oracle.jdbc.driver.T4CTTIoer11.processError(T4CTTIoer11.java:494) ~[ojdbc8.jar:18.3.0.0.0]
    at oracle.jdbc.driver.T4CTTIoer11.processError(T4CTTIoer11.java:446) ~[ojdbc8.jar:18.3.0.0.0]

    [...]

    at java.lang.reflect.Method.invoke(Method.java:498) ~[?:1.8.0_171]
    at com.liferay.portal.tools.db.upgrade.client.DBUpgraderLauncher.main(DBUpgraderLauncher.java:54) [com.liferay.portal.tools.db.upgrade.client.jar:?]
    Caused by: com.liferay.portal.kernel.log.LogSanitizerException: Error : 1, Position : 0, Sql = update PortletPreferences set portletId = 'com_liferay_dynamic_data_mapping_form_web_portlet_DDMFormAdminPortlet' where portletId = 'com_liferay_polls_web_portlet_PollsPortlet', OriginalSql = update PortletPreferences set portletId = 'com_liferay_dynamic_data_mapping_form_web_portlet_DDMFormAdminPortlet' where portletId = 'com_liferay_polls_web_portlet_PollsPortlet', Error Msg = ORA-00001: unique constraint (PORTALESLIFERAY1.IX_CB778855) violated_ [Sanitized]
    at oracle.jdbc.driver.T4CTTIoer11.processError(T4CTTIoer11.java:498) ~[ojdbc8.jar:18.3.0.0.0]
    ... 284 more
    同じレコードを2回挿入しようとすると警告が出ますが、無視しても問題ありません。

    2番目のレコードが挿入されるのは、DXP 7.4でPollsの機能がFomsに移行されたためで、DXP 7.4 のアップグレードでは、portletPreferences テーブルの portletId がcom_liferay_polls_web_portlet_PollsPortlet から com_liferay_dynamic_data_mapping_form_web_portlet_DDMFormAdminPortlet に変更され、更新されますが、ダッシュボードポートレット plid=0 では、重複挿入が発生します。

    詳細については、DXP 7.3からのアップグレード後にAsset Libraries throw warningsという記事で説明されており、アップグレード中にWARNが表示されないようにする回避策があります。

追加情報

起動時の LDAP インポートがオンの場合に制約 (IX_228562AD) に違反する

did-this-article-resolve-your-issue

legacy-knowledge-base