UPM Cannot be Upgraded and Hangs Confluence

Still need help?

The Atlassian Community is here for you.

Ask the community

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

Note that this knowledge base article was created for the Data Center version of the product. Data Center knowledge base articles 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

Confluence hangs when trying to upgrade the UPM. The following appears in the atlassian-confluence.log, indicating that UPM is being upgraded, but error or warnings are observed:

2012-05-02 11:01:25,162 INFO [pool-5-thread-1] [atlassian.plugin.manager.DefaultPluginManager] disableDependentPlugins Found dependent enabled plugins for uninstalled plugin 'com.atlassian.upm.atlassian-universal-plugin-manager-plugin': [].  Disabling...
2012-05-02 11:01:25,177 INFO [pool-5-thread-1] [atlassian.plugin.manager.DefaultPluginManager] updatePlugin Updating plugin 'com.atlassian.upm.atlassian-universal-plugin-manager-plugin' to 'com.atlassian.upm.atlassian-universal-plugin-manager-plugin'
2012-05-02 11:01:25,177 INFO [pool-5-thread-1] [atlassian.plugin.manager.DefaultPluginManager] notifyPluginDisabled Disabling com.atlassian.upm.atlassian-universal-plugin-manager-plugin

Cause

Your database is not configured to be READ-COMMITTED. To confirm this, run the following SQL query:

SELECT sd.is_read_committed_snapshot_on
FROM sys.databases AS sd
WHERE sd.[name] = '<database name>';

This should return 1. If it returns anything else, proceed to the resolution.

The above query was written for MS SQL, it may require tweaking for other databases.

Resolution

For MS SQL

  1. Run the following SQL query:

    ALTER DATABASE <database name>
    SET READ_COMMITTED_SNAPSHOT ON
    WITH ROLLBACK IMMEDIATE;
  2. Restart Confluence.
  3. Re-attempt the UPM upgrade.

There is an improvement request to address this behavior, and it has been implemented in Confluence 5.6.3 CONFSERVER-26296 - When using MS SQL Server, Check for 'Read-Committed with Row Versioning' transaction isolation during startup/upgrades

For MySQL

  1. Stop Confluence
  2. (On 3.5.6 onward) In the top level of your Confluence home directory, find the confluence.cfg.xml file and locate the <properties> section. Add the following parameter:

    <properties>
    ...
        <property name="hibernate.connection.isolation">2</property>
    ...
    <properties>

    As an example of where it should be located in the file:

    	<property name="hibernate.connection.driver_class">com.mysql.jdbc.Driver</property>
        <property name="hibernate.connection.isolation">2</property>
        <property name="hibernate.connection.password">XXXXXX</property>
  3. Once this is complete, please start Confluence and attempt the update again


This can also be set at a Global Level for MySQL

Please Note: This is only recommended if you do not have any other applications using this MySQL database. This will update the transaction isolation level for the entire database.


  • Set the global transaction isolation level to READ-COMMITTED. You can do this by configuring your MySQL server's settings by editing MySQL's my.cnf file (often named my.ini on Windows operating systems). Locate the [mysqld] section in the file and add/modify the following parameter:

    [mysqld]
    ...
    transaction-isolation=READ-COMMITTED
    ...








Last modified on Jan 28, 2025

Was this helpful?

Yes
No
Provide feedback about this article
Powered by Confluence and Scroll Viewport.