Upgrade of Bamboo failing with InterruptedException errors

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

Upgrading Bamboo using either the in-place database or export/import of the backup fail with the following errors appear in the atlassian-bamboo.logs

1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 Caused by: java.lang.InterruptedException at java.lang.Object.wait(Native Method) at com.mchange.v2.resourcepool.BasicResourcePool.awaitAvailable(BasicResourcePool.java:1315) at com.mchange.v2.resourcepool.BasicResourcePool.prelimCheckoutResource(BasicResourcePool.java:557) at com.mchange.v2.resourcepool.BasicResourcePool.checkoutResource(BasicResourcePool.java:477) at com.mchange.v2.c3p0.impl.C3P0PooledConnectionPool.checkoutPooledConnection(C3P0PooledConnectionPool.java:525) ... 65 more 2012-08-30 15:27:18,706 INFO [1-UpgradeTaskBackgroundThread:pool-4-thread-1] [MultiThreadedUpgradeRunner] Throwing exception 2012-08-30 15:27:18,706 ERROR [1-UpgradeTaskBackgroundThread:pool-4-thread-1] [AbstractUpgradeManager] ... com.atlassian.upgrade.UpgradeException: Unable to upgrade: Hibernate operation: Cannot open connection; uncategorized SQLException for SQL []; SQL state [null]; error code [0]; An SQLException was provoked by the following failure: java.lang.InterruptedException; nested exception is java.sql.SQLException: An SQLException was provoked by the following failure: java.lang.InterruptedException at com.atlassian.bamboo.upgrade.tasks.MultiThreadedUpgradeRunner.checkException(MultiThreadedUpgradeRunner.java:121) at com.atlassian.bamboo.upgrade.tasks.MultiThreadedUpgradeRunner.waitForTermination(MultiThreadedUpgradeRunner.java:112) at com.atlassian.bamboo.upgrade.tasks.UpgradeTask2025BuildChainConversion.doUpgrade(UpgradeTask2025BuildChainConversion.java:273) at com.atlassian.bamboo.upgrade.AbstractUpgradeManager.runUpgradeTask(AbstractUpgradeManager.java:172) at com.atlassian.bamboo.upgrade.UpgradeManagerImpl.doUpgrade(UpgradeManagerImpl.java:86) at com.atlassian.bamboo.upgrade.UpgradeLauncher$1.call(UpgradeLauncher.java:115) at com.atlassian.bamboo.upgrade.UpgradeLauncher$1.call(UpgradeLauncher.java:111) ... Caused by: org.springframework.jdbc.UncategorizedSQLException: Hibernate operation: Cannot open connection; uncategorized SQLException for SQL []; SQL state [null]; error code [0]; An SQLException was provoked by the following failure: java.lang.InterruptedException; nested exception is java.sql.SQLException: An SQLException was provoked by the following failure: java.lang.InterruptedException at org.springframework.jdbc.support.SQLStateSQLExceptionTranslator.translate(SQLStateSQLExceptionTranslator.java:120) at org.springframework.orm.hibernate.HibernateAccessor.convertJdbcAccessException(HibernateAccessor.java:364) at org.springframework.orm.hibernate.HibernateAccessor.convertHibernateAccessException(HibernateAccessor.java:351) at org.springframework.orm.hibernate.HibernateTemplate.execute(HibernateTemplate.java:375) at org.springframework.orm.hibernate.HibernateTemplate.saveOrUpdate(HibernateTemplate.java:601) at com.atlassian.hibernate.HibernateObjectDao.saveRaw(HibernateObjectDao.java:148) at com.atlassian.hibernate.HibernateObjectDao.save(HibernateObjectDao.java:118) at com.atlassian.bamboo.labels.LabelHibernateDao.saveLabelling(LabelHibernateDao.java:330)

Cause

This is because you might be having mulitple threads connecting, some of the c3P0 queries will then be in waiting mode(waiting for a connection to be available). If there is an interrupt() at that stage, the connection wait will be interrupted.

Resolution

You will need to increase the connection pool to at least 100, which is the recommended setting for the max number of concurrent connections to Bamboo database:

  1. Shutdown Bamboo

  2. Edit the $Bamboo_home/bamboo.cfg.xml file and set hibernate.c3p0.max_size to 100:

    <property name="hibernate.c3p0.max_size">100</property>

  3. Restart Bamboo and do the upgrade again.

Updated on April 8, 2025

Still need help?

The Atlassian Community is here for you.