Crowd Upgrade Fails Due to ORA-02429 Error

XMLWordPrintable

    • Type: Bug
    • Resolution: Fixed
    • Priority: Low
    • 3.3.2
    • Affects Version/s: 3.3.0
    • Component/s: Upgrade
    • None
    • Severity 2 - Major

      Summary

      When upgrading to Crowd 3.3, ORA-02429 errors will be thrown when indexes cannot be removed.

      Steps to Reproduce

      1. Install Crowd 3.2, using an Oracle DB
      2. Attempt to Upgrade to Crowd 3.3 using the Automatic Database Upgrade process

      Expected Outcome

      Crowd will upgrade to 3.3

      Observed Outcome

      An error will be thrown when an index cannot be dropped:

      Caused by: Error : 2429, Position : 21, Sql = DROP INDEX CROWDUSER.idx_expirable_user_token_key, OriginalSql = DROP INDEX CROWDUSER.idx_expirable_user_token_key, Error Msg = ORA-02429: cannot drop index used for enforcement of unique/primary key
      	at oracle.jdbc.driver.T4CTTIoer11.processError(T4CTTIoer11.java:498)
      

      Workaround

      1. Shut down Crowd
      2. There are 2 indexes that will throw an error during the upgrade, so we'll manually remove them:
        ALTER TABLE CWD_EXPIRABLE_USER_TOKEN DROP CONSTRAINT UK_EXPIRABLE_USER_TOKEN;
        ALTER TABLE CWD_WEBHOOK DROP CONSTRAINT UK_WEBHOOK_URL_APP;
        
      3. Commit the change (if needed)
      4. Start the new Crowd, and the upgrade should now complete

            Assignee:
            Mareusz (Inactive)
            Reporter:
            Jason B (Inactive)
            Votes:
            0 Vote for this issue
            Watchers:
            1 Start watching this issue

              Created:
              Updated:
              Resolved: