Confluence Startup Failed or Scheduled Job Failed Due to ORA-28001

Platform Notice: Data Center Only - This article only applies to Atlassian products on the Data Center platform.

Note that this KB was created for the Data Center version of the product. Data Center KBs for non-Data-Center-specific features may also work for Server versions of the product, however they have not been tested. Support for Server* products ended on February 15th 2024. If you are running a Server product, you can visit the Atlassian Server end of support announcement to review your migration options.

*Except Fisheye and Crucible

Symptoms

Normal Confluence functions or startup fails.

The following appears in the atlassian-confluence.log:

1 2 3 ERROR [scheduler_Worker-6] [org.quartz.core.ErrorLogger] schedulerError Unable to notify JobListener(s) of Job to be executed: (Job will NOT be executed!). trigger= com.atlassian.confluence.plugins.confluence-edge-index.refreshSearcherJob job= com.atlassian.confluence.plugins.confluence-edge-index.refreshSearcherJob Caused by: java.sql.SQLException: ORA-28001: the password has expired

Cause

The job scheduled to run the reindexing task is unable to authenticate against the Oracle database and thus fails.

Workaround

Manually flush items from the queue and force manual rebuild of the index.

Resolution

  1. Verify that this is a permission issue

    1. Run the following against the DB

      1 SQL> SELECT username,account_status,expiry_date FROM dba_users;
    2. Make sure that the user that is being used to authenticate had an ACCOUNT_STATUS of OPEN and an EXPIRY_DATE of null or a date far in the future

  2. Obtain the credentials to alter this account

    1 SQL> SELECT password from sys.user$ where name='<account_name>';

    This gives us the password for the user we wish to change

  3. Force the account status to 'OPEN' by resetting the password of a that user with no options

    1 SYS> alter user <account_name> identified by values '<hash_value>';
  4. Verify that your ACCOUNT_STATUS is set to open

    1 SQL> SELECT username,account_status,expiry_date FROM dba_users;
Updated on April 8, 2025

Still need help?

The Atlassian Community is here for you.