Uploaded image for project: 'Bamboo Data Center'
  1. Bamboo Data Center
  2. BAM-18071

Error extracting branch name during upgrade tasks

    XMLWordPrintable

Details

    • Bug
    • Resolution: Done
    • Low
    • 5.14.4.1
    • 5.14.1, 5.14.3.1
    • None

    Description

      During the upgrade tasks, NullPointerException error happens

      2016-12-06 15:40:05,805 INFO [15-UpgradeTaskBackgroundThread:pool-30-thread-1] [AbstractUpgradeManager] 51406 : Convert XML data in repositories to new format.
      2016-12-06 15:40:05,805 INFO [15-UpgradeTaskBackgroundThread:pool-30-thread-1] [AbstractUpgradeManager] -------------------------------------------------------
      2016-12-06 15:40:06,012 WARN [15-UpgradeTaskBackgroundThread:pool-30-thread-1] [UpgradeTask51406UseNewXmlFormatForRepositories] Error extracting branch name
      java.lang.NullPointerException
      	at com.atlassian.bamboo.plugins.bitbucket.impl.BitbucketRepositoryHelperServiceImpl.populateHgConfigWithRepositoryDetails(BitbucketRepositoryHelperServiceImpl.java:227)
      	at com.atlassian.bamboo.plugins.bitbucket.impl.BitbucketRepositoryHelperServiceImpl.populateFromConfig(BitbucketRepositoryHelperServiceImpl.java:129)
      	at com.atlassian.bamboo.plugins.bitbucket.BitbucketRepository.populateFromConfig(BitbucketRepository.java:391)
      	at com.atlassian.bamboo.vcs.configuration.legacy.configurator.LegacyBranchConfigurator.getVcsBranchFromRepositoryXml(LegacyBranchConfigurator.java:88)
      	at com.atlassian.bamboo.upgrade.tasks.v5_14.UpgradeTask51406UseNewXmlFormatForRepositories.getNewConfiguration(UpgradeTask51406UseNewXmlFormatForRepositories.java:94)
      	at com.atlassian.bamboo.upgrade.tasks.v5_14.UpgradeTask51406UseNewXmlFormatForRepositories.convertXmlData(UpgradeTask51406UseNewXmlFormatForRepositories.java:166)
      	at com.atlassian.bamboo.upgrade.tasks.v5_14.UpgradeTask51406UseNewXmlFormatForRepositories.lambda$doUpgrade$0(UpgradeTask51406UseNewXmlFormatForRepositories.java:69)
      	at org.hibernate.jdbc.WorkExecutor.executeWork(WorkExecutor.java:54)
      	at org.hibernate.internal.SessionImpl$2.accept(SessionImpl.java:2076)
      	at org.hibernate.internal.SessionImpl$2.accept(SessionImpl.java:2073)
      	at org.hibernate.engine.jdbc.internal.JdbcCoordinatorImpl.coordinateWork(JdbcCoordinatorImpl.java:313)
      	at org.hibernate.internal.SessionImpl.doWork(SessionImpl.java:2095)
      	at org.hibernate.internal.SessionImpl.doWork(SessionImpl.java:2080)
      	at com.atlassian.bamboo.persistence.BambooTransactionHibernateTemplate$2.doInHibernate(BambooTransactionHibernateTemplate.java:66)
      	at org.springframework.orm.hibernate4.HibernateTemplate.doExecute(HibernateTemplate.java:341)
      	at org.springframework.orm.hibernate4.HibernateTemplate.executeWithNativeSession(HibernateTemplate.java:309)
      	at com.atlassian.bamboo.persistence.BambooTransactionHibernateTemplate$1.doInTransaction(BambooTransactionHibernateTemplate.java:52)
      	at org.springframework.transaction.support.TransactionTemplate.execute(TransactionTemplate.java:133)
      	at com.atlassian.bamboo.persistence.BambooTransactionHibernateTemplate.execute(BambooTransactionHibernateTemplate.java:41)
      	at com.atlassian.bamboo.persistence.BambooTransactionHibernateTemplate.execute(BambooTransactionHibernateTemplate.java:47)
      	at com.atlassian.bamboo.persistence.BambooTransactionHibernateTemplate.doWork(BambooTransactionHibernateTemplate.java:60)
      	at com.atlassian.bamboo.upgrade.tasks.v5_14.UpgradeTask51406UseNewXmlFormatForRepositories.doUpgrade(UpgradeTask51406UseNewXmlFormatForRepositories.java:66)
      	at com.atlassian.bamboo.upgrade.AbstractUpgradeManager.runUpgradeTask(AbstractUpgradeManager.java:206)
      	at com.atlassian.bamboo.upgrade.UpgradeManagerImpl.doUpgrade(UpgradeManagerImpl.java:114)
      	at com.atlassian.bamboo.upgrade.UpgradeLauncher$1.call(UpgradeLauncher.java:117)
      	at com.atlassian.bamboo.upgrade.UpgradeLauncher$1.call(UpgradeLauncher.java:113)
      	at java.util.concurrent.FutureTask.run(FutureTask.java:266)
      	at java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:511)
      	at java.util.concurrent.FutureTask.run(FutureTask.java:266)
      	at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1142)
      	at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:617)
      	at com.atlassian.bamboo.utils.BambooRunnables$1.run(BambooRunnables.java:51)
      	at com.atlassian.bamboo.security.ImpersonationHelper.runWith(ImpersonationHelper.java:31)
      	at com.atlassian.bamboo.security.ImpersonationHelper.runWithSystemAuthority(ImpersonationHelper.java:20)
      	at com.atlassian.bamboo.security.ImpersonationHelper$1.run(ImpersonationHelper.java:52)
      	at java.lang.Thread.run(Thread.java:745)
      ...
      2016-12-06 15:40:08,612 INFO [15-UpgradeTaskBackgroundThread:pool-30-thread-1] [AbstractUpgradeManager] Completed task 51406 successfully.
      2016-12-06 15:40:08,615 INFO [15-UpgradeTaskBackgroundThread:pool-30-thread-1] [AbstractUpgradeManager] ----------------------------------------------
      2016-12-06 15:40:08,615 INFO [15-UpgradeTaskBackgroundThread:pool-30-thread-1] [AbstractUpgradeManager] 51407 : Convert old repository plugins to new.
      2016-12-06 15:40:08,616 INFO [15-UpgradeTaskBackgroundThread:pool-30-thread-1] [AbstractUpgradeManager] ----------------------------------------------
      2016-12-06 15:40:08,676 ERROR [15-UpgradeTaskBackgroundThread:pool-30-thread-1] [AbstractUpgradeManager] java.lang.NullPointerException
      java.lang.NullPointerException
      	at com.atlassian.bamboo.plugins.bitbucket.impl.BitbucketRepositoryHelperServiceImpl.populateHgConfigWithRepositoryDetails(BitbucketRepositoryHelperServiceImpl.java:227)
      	at com.atlassian.bamboo.plugins.bitbucket.impl.BitbucketRepositoryHelperServiceImpl.populateFromConfig(BitbucketRepositoryHelperServiceImpl.java:129)
      	at com.atlassian.bamboo.plugins.bitbucket.BitbucketRepository.populateFromConfig(BitbucketRepository.java:391)
      	at com.atlassian.bamboo.vcs.configuration.legacy.configurator.LegacyBranchConfigurator.getVcsBranchFromRepositoryXml(LegacyBranchConfigurator.java:88)
      	at com.atlassian.bamboo.vcs.configuration.service.RawRepositoryConfigurationXmlConverterImpl.fromEntity(RawRepositoryConfigurationXmlConverterImpl.java:83)
      	at com.atlassian.bamboo.upgrade.tasks.v5_14.AbstractConvertRepositoryTypesUpgrade.convertXmlData(AbstractConvertRepositoryTypesUpgrade.java:60)
      	at com.atlassian.bamboo.upgrade.tasks.v5_14.AbstractConvertRepositoryTypesUpgrade.lambda$upgradeRepositories$0(AbstractConvertRepositoryTypesUpgrade.java:50)
      	at org.hibernate.jdbc.WorkExecutor.executeWork(WorkExecutor.java:54)
      	at org.hibernate.internal.SessionImpl$2.accept(SessionImpl.java:2076)
      	at org.hibernate.internal.SessionImpl$2.accept(SessionImpl.java:2073)
      	at org.hibernate.engine.jdbc.internal.JdbcCoordinatorImpl.coordinateWork(JdbcCoordinatorImpl.java:313)
      	at org.hibernate.internal.SessionImpl.doWork(SessionImpl.java:2095)
      	at org.hibernate.internal.SessionImpl.doWork(SessionImpl.java:2080)
      	at com.atlassian.bamboo.persistence.BambooTransactionHibernateTemplate$2.doInHibernate(BambooTransactionHibernateTemplate.java:66)
      	at org.springframework.orm.hibernate4.HibernateTemplate.doExecute(HibernateTemplate.java:341)
      	at org.springframework.orm.hibernate4.HibernateTemplate.executeWithNativeSession(HibernateTemplate.java:309)
      	at com.atlassian.bamboo.persistence.BambooTransactionHibernateTemplate$1.doInTransaction(BambooTransactionHibernateTemplate.java:52)
      	at org.springframework.transaction.support.TransactionTemplate.execute(TransactionTemplate.java:133)
      	at com.atlassian.bamboo.persistence.BambooTransactionHibernateTemplate.execute(BambooTransactionHibernateTemplate.java:41)
      	at com.atlassian.bamboo.persistence.BambooTransactionHibernateTemplate.execute(BambooTransactionHibernateTemplate.java:47)
      	at com.atlassian.bamboo.persistence.BambooTransactionHibernateTemplate.doWork(BambooTransactionHibernateTemplate.java:60)
      	at com.atlassian.bamboo.upgrade.tasks.v5_14.AbstractConvertRepositoryTypesUpgrade.upgradeRepositories(AbstractConvertRepositoryTypesUpgrade.java:47)
      	at com.atlassian.bamboo.upgrade.tasks.v5_14.UpgradeTask51407ConvertRepositoryTypes.doUpgrade(UpgradeTask51407ConvertRepositoryTypes.java:17)
      	at com.atlassian.bamboo.upgrade.AbstractUpgradeManager.runUpgradeTask(AbstractUpgradeManager.java:206)
      	at com.atlassian.bamboo.upgrade.UpgradeManagerImpl.doUpgrade(UpgradeManagerImpl.java:114)
      	at com.atlassian.bamboo.upgrade.UpgradeLauncher$1.call(UpgradeLauncher.java:117)
      	at com.atlassian.bamboo.upgrade.UpgradeLauncher$1.call(UpgradeLauncher.java:113)
      	at java.util.concurrent.FutureTask.run(FutureTask.java:266)
      	at java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:511)
      	at java.util.concurrent.FutureTask.run(FutureTask.java:266)
      	at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1142)
      	at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:617)
      	at com.atlassian.bamboo.utils.BambooRunnables$1.run(BambooRunnables.java:51)
      	at com.atlassian.bamboo.security.ImpersonationHelper.runWith(ImpersonationHelper.java:31)
      	at com.atlassian.bamboo.security.ImpersonationHelper.runWithSystemAuthority(ImpersonationHelper.java:20)
      	at com.atlassian.bamboo.security.ImpersonationHelper$1.run(ImpersonationHelper.java:52)
      	at java.lang.Thread.run(Thread.java:745)
      2016-12-06 15:40:08,677 INFO [15-UpgradeTaskBackgroundThread:pool-30-thread-1] [AbstractUpgradeManager] Completed task 51407 successfully.
      

      Notes

      • Even though it has NullPointerException, somehow the upgrade tasks have "Completed successfully" message.
      • The upgrade should have failed

      Cloud Migration specific

      This can also occur if you're attempting to run upgrade tasks on an already upgrade Bamboo database. For example if you're running through the Bamboo Cloud EOL migration, you might have successfully started Bamboo at some point on your database. Then you might have replaced bamboo.cfg.xml with the one from the cloud-export.zip, which contains version information that is now out of sync with the current database version. The next time you start Bamboo it will attempt to upgrade the database from 5.12 to 5.14, which already had completed. The fix for this is:

      1. Shutdown Bamboo
      2. Restore your cloud-export.zip/database/dbDmp.dmp again (you will lose any previous modifications, but it's the only way to ensure the integrity of the data)
      3. Replace <bamboo-home>/bamboo.cfg.xml with the one from cloud-export.zip/bamboo-home (re-modify any database settings to point to your database server / db)
      4. Now your bamboo version is in sync between filesystem and database
      5. Start Bamboo

      Attachments

        Issue Links

          Activity

            People

              mgardias Marcin Gardias
              klfoong Foong (Inactive)
              Votes:
              0 Vote for this issue
              Watchers:
              5 Start watching this issue

              Dates

                Created:
                Updated:
                Resolved: