Details
-
Bug
-
Resolution: Duplicate
-
Low
-
None
-
6.3.0, 6.3.1
-
None
-
None
-
Severity 3 - Minor
-
Description
Summary
The Bamboo database version validation task throws a NullPointerException when it fails. This exception is displayed in the UI instead of the actual failure reason.
Steps to Reproduce
- Setup Bamboo 6.3.1 to completion
- Shutdown Bamboo
- Edit <bamboo-home>/bamboo.cfg.xml
- Change the build number to 60304
- Start Bamboo
Expected Results
Application does not start, but real reason is displayed in the UI and no NullPointerException is in the logs or UI.
Actual Results
Application does not start, real error message is not displayed in UI, a NullPointerException is displayed in the UI and logs:
2018-01-19 16:17:16,714 FATAL [localhost-startStop-1] [BuildNumberInHomeMatchesDatabase] Bamboo home directory build number [60304] does not match build number from database [60306] 2018-01-19 16:17:16,715 ERROR [localhost-startStop-1] [BootstrapUpgradeManagerImpl] Task 3 failed java.lang.NullPointerException at com.atlassian.bamboo.spring.StrutsContainer.lambda$static$0(StrutsContainer.java:15) at io.atlassian.fugue.Suppliers$MemoizingSupplier.get(Suppliers.java:161) at com.atlassian.struts.DefaultTextProvider.getTextProvider(DefaultTextProvider.java:188) at com.atlassian.struts.DefaultTextProvider.getText(DefaultTextProvider.java:39) at com.atlassian.bamboo.upgrade.tasks.validation.BuildNumberInHomeMatchesDatabase.doUpgrade(BuildNumberInHomeMatchesDatabase.java:55) at com.atlassian.bamboo.upgrade.BootstrapUpgradeManagerImpl.runValidationTask(BootstrapUpgradeManagerImpl.java:129) at com.atlassian.bamboo.upgrade.BootstrapUpgradeManagerImpl.lambda$runValidationTasks$0(BootstrapUpgradeManagerImpl.java:90) at com.atlassian.bamboo.upgrade.AbstractUpgradeManager.forEachTask(AbstractUpgradeManager.java:150) at com.atlassian.bamboo.upgrade.BootstrapUpgradeManagerImpl.runValidationTasks(BootstrapUpgradeManagerImpl.java:90) at com.atlassian.bamboo.setup.DefaultBootstrapManager.runValidationTasks(DefaultBootstrapManager.java:373) at com.atlassian.bamboo.setup.DefaultBootstrapManager.performPersistenceUpgrade(DefaultBootstrapManager.java:277) at com.atlassian.config.bootstrap.DefaultAtlassianBootstrapManager.init(DefaultAtlassianBootstrapManager.java:77) at com.atlassian.bamboo.setup.BootstrapLoaderListener.contextInitialized(BootstrapLoaderListener.java:118) at org.apache.catalina.core.StandardContext.listenerStart(StandardContext.java:4842) at org.apache.catalina.core.StandardContext.startInternal(StandardContext.java:5303) at org.apache.catalina.util.LifecycleBase.start(LifecycleBase.java:147) at org.apache.catalina.core.ContainerBase$StartChild.call(ContainerBase.java:1407) at org.apache.catalina.core.ContainerBase$StartChild.call(ContainerBase.java:1397) 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 java.lang.Thread.run(Thread.java:745) ... 2018-01-19 16:17:16,925 FATAL [localhost-startStop-1] [DefaultBootstrapManager] Validation tests failed: [Task 3 failed with exception: null] 2018-01-19 16:17:16,926 FATAL [localhost-startStop-1] [BootstrapLoaderListener] An error was encountered while bootstrapping Bamboo (see below): null java.lang.NullPointerException at com.atlassian.bamboo.spring.StrutsContainer.lambda$static$0(StrutsContainer.java:15) at io.atlassian.fugue.Suppliers$MemoizingSupplier.get(Suppliers.java:161) at com.atlassian.struts.DefaultTextProvider.getTextProvider(DefaultTextProvider.java:188) at com.atlassian.struts.DefaultTextProvider.getText(DefaultTextProvider.java:39) at com.atlassian.bamboo.setup.DefaultBootstrapManager.runValidationTasks(DefaultBootstrapManager.java:376) at com.atlassian.bamboo.setup.DefaultBootstrapManager.performPersistenceUpgrade(DefaultBootstrapManager.java:277) at com.atlassian.config.bootstrap.DefaultAtlassianBootstrapManager.init(DefaultAtlassianBootstrapManager.java:77) at com.atlassian.bamboo.setup.BootstrapLoaderListener.contextInitialized(BootstrapLoaderListener.java:118) at org.apache.catalina.core.StandardContext.listenerStart(StandardContext.java:4842) at org.apache.catalina.core.StandardContext.startInternal(StandardContext.java:5303) at org.apache.catalina.util.LifecycleBase.start(LifecycleBase.java:147) at org.apache.catalina.core.ContainerBase$StartChild.call(ContainerBase.java:1407) at org.apache.catalina.core.ContainerBase$StartChild.call(ContainerBase.java:1397) 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 java.lang.Thread.run(Thread.java:745)
UI shows:
Time | Level | Type | Description | Exception |
---|---|---|---|---|
2018-01-19 16:17:16 | fatal | bootstrap | Could not load bootstrap from environment | java.lang.NullPointerException |
Workaround
N/A
This is really just a display error. The validation has correctly detected that the Bamboo home directory version does not match your database version and should the application should not start under these conditions.
Attachments
Issue Links
- duplicates
-
BAM-19589 Validation tasks might fail with NPE
- Closed