-
Bug
-
Resolution: Fixed
-
Medium
-
9.0.0
-
None
-
1
-
Severity 2 - Major
-
Issue Summary
Bamboo setup on an unsupported database such as PostgreSQL 9 fails and does not communicate anything to help the user identify the problem.
The setup wizard will continue to spin. Upon refreshing the page you will get a 500 Exception related to the OSGI.
This is reproducible on Data Center:
Steps to Reproduce
- Start a fresh Bamboo 9.0 instance
- During setup point it at a PostgreSQL 9.6 instance
Expected Results
Database validation fails and the error is communicated to the user in the UI.
Actual Results
Setup spins endlessly.
Refreshing the page leads to this exception:
com.google.common.util.concurrent.UncheckedExecutionException: java.lang.IllegalStateException: Unable to create a tracker when osgi is not running at com.google.common.cache.LocalCache$Segment.get(LocalCache.java:2055) at com.google.common.cache.LocalCache.get(LocalCache.java:3966) at com.google.common.cache.LocalCache.getOrLoad(LocalCache.java:3989) at com.google.common.cache.LocalCache$LocalLoadingCache.get(LocalCache.java:4950) at com.google.common.cache.LocalCache$LocalLoadingCache.getUnchecked(LocalCache.java:4956) at com.atlassian.bamboo.plugin.osgi.OsgiServiceProxyFactoryImpl.lambda$serviceAccessor$0(OsgiServiceProxyFactoryImpl.java:97) at com.atlassian.bamboo.plugin.osgi.InvocationHandlers$ClassLoaderSwitchingInvocationHandler.invokeServiceMethod(InvocationHandlers.java:68) at com.atlassian.bamboo.plugin.osgi.InvocationHandlers$DynamicServiceInvocationHandler.invoke(InvocationHandlers.java:45) at com.sun.proxy.$Proxy406.canCollectAnalytics(Unknown Source) at com.atlassian.bamboo.DefaultFeatureManager.isPerformanceDataGatheringEnabled(DefaultFeatureManager.java:238) at com.atlassian.bamboo.filter.BambooProfilingFilter.doFilter(BambooProfilingFilter.java:65)
The below same exception can be found in the atlassian-bamboo.log file as well as other clues such as:
2022-11-04 03:32:51,333 INFO [performSetupDatabaseConnectionBackgroundThread] [DatabaseIsSupported] Testing compatibility of [PostgreSQL] 9.6.0 (9.6.18) using JDBC driver [PostgreSQL JDBC Driver] 42.3.0 (42.3.6) with this version of Bamboo. 2022-11-04 03:32:51,333 ERROR [performSetupDatabaseConnectionBackgroundThread] [DatabaseIsSupported] Detected POSTGRESQL version [PostgreSQL] 9.6.0 (9.6.18), minimal supported version is 10.0.0 2022-11-04 03:32:51,333 ERROR [performSetupDatabaseConnectionBackgroundThread] [DatabaseIsSupported] Bamboo doesn't support PostgreSQL version 9.6.18. Please check https://confluence.atlassian.com/display/BAMBOO/Supported+Platforms for more information.
Caused by: org.springframework.beans.BeanInstantiationException: Failed to instantiate [com.atlassian.bamboo.utils.db.DbmsBean]: Factory method 'createDbmsBean' threw exception; nested exception is java.lang.IllegalStateException: Unsupported version of PostgreSQL: [PostgreSQL] 9.6.0 (9.6.18) at org.springframework.beans.factory.support.SimpleInstantiationStrategy.instantiate(SimpleInstantiationStrategy.java:185) ~[spring-beans-5.3.21.jar:5.3.21] ... at org.springframework.beans.factory.support.AbstractBeanFactory.getBean(AbstractBeanFactory.java:208) ~[spring-beans-5.3.21.jar:5.3.21] at com.atlassian.plugin.spring.SpringHostComponentProviderFactoryBean$SpringHostComponentProvider.provideBeans(SpringHostComponentProviderFactoryBean.java:159) ~[atlassian-plugins-spring-7.0.6.jar:?] at com.atlassian.plugin.spring.SpringHostComponentProviderFactoryBean$SpringHostComponentProvider.provide(SpringHostComponentProviderFactoryBean.java:137) ~[atlassian-plugins-spring-7.0.6.jar:?] at jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method) ~[?:?] at jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62) ~[?:?] at jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) ~[?:?] at java.lang.reflect.Method.invoke(Method.java:566) ~[?:?] at org.springframework.beans.factory.config.AbstractFactoryBean$EarlySingletonInvocationHandler.invoke(AbstractFactoryBean.java:275) ~[spring-beans-5.3.21.jar:5.3.21] at com.sun.proxy.$Proxy149.provide(Unknown Source) ~[?:?] at com.atlassian.plugin.osgi.container.felix.FelixOsgiContainerManager.collectHostComponents(FelixOsgiContainerManager.java:481) ~[atlassian-plugins-osgi-7.0.6.jar:?] at com.atlassian.plugin.osgi.container.felix.FelixOsgiContainerManager.start(FelixOsgiContainerManager.java:229) ~[atlassian-plugins-osgi-7.0.6.jar:?] at com.atlassian.plugin.osgi.container.felix.FelixOsgiContainerManager.onStart(FelixOsgiContainerManager.java:197) ~[atlassian-plugins-osgi-7.0.6.jar:?] at jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method) ~[?:?] at jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62) ~[?:?] at jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) ~[?:?] at java.lang.reflect.Method.invoke(Method.java:566) ~[?:?] at com.atlassian.event.internal.SingleParameterMethodListenerInvoker.invoke(SingleParameterMethodListenerInvoker.java:42) ~[atlassian-event-5.0.1.jar:?] ... 44 more Caused by: java.lang.IllegalStateException: Unsupported version of PostgreSQL: [PostgreSQL] 9.6.0 (9.6.18) at com.atlassian.bamboo.hibernate.DialectSelector.selectPostgresDialect(DialectSelector.java:66) ~[atlassian-bamboo-persistence-9.0.1.jar:?] at com.atlassian.bamboo.hibernate.DialectSelector.getDialectClass(DialectSelector.java:53) ~[atlassian-bamboo-persistence-9.0.1.jar:?] at com.atlassian.bamboo.hibernate.DialectSelector.getDialect(DialectSelector.java:24) ~[atlassian-bamboo-persistence-9.0.1.jar:?] at com.atlassian.bamboo.hibernate.DialectSelector.getDialect(DialectSelector.java:33) ~[atlassian-bamboo-persistence-9.0.1.jar:?] at com.atlassian.bamboo.hibernate.BambooHibernateConfig.getHibernateProperties(BambooHibernateConfig.java:62) ~[atlassian-bamboo-persistence-9.0.1.jar:?] at com.atlassian.bamboo.utils.db.DbmsBeanFactoryImpl.createDbmsBean(DbmsBeanFactoryImpl.java:25) ~[atlassian-bamboo-persistence-9.0.1.jar:?] at jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method) ~[?:?] at jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62) ~[?:?] at jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) ~[?:?] at java.lang.reflect.Method.invoke(Method.java:566) ~[?:?] at org.springframework.beans.factory.support.SimpleInstantiationStrategy.instantiate(SimpleInstantiationStrategy.java:154) ~[spring-beans-5.3.21.jar:5.3.21] at org.springframework.beans.factory.support.ConstructorResolver.instantiate(ConstructorResolver.java:653) ~[spring-beans-5.3.21.jar:5.3.21] at org.springframework.beans.factory.support.ConstructorResolver.instantiateUsingFactoryMethod(ConstructorResolver.java:486) ~[spring-beans-5.3.21.jar:5.3.21] at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.instantiateUsingFactoryMethod(AbstractAutowireCapableBeanFactory.java:1352) ~[spring-beans-5.3.21.jar:5.3.21] at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.createBeanInstance(AbstractAutowireCapableBeanFactory.java:1195) ~[spring-beans-5.3.21.jar:5.3.21] at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.doCreateBean(AbstractAutowireCapableBeanFactory.java:582) ~[spring-beans-5.3.21.jar:5.3.21] at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.createBean(AbstractAutowireCapableBeanFactory.java:542) ~[spring-beans-5.3.21.jar:5.3.21] at org.springframework.beans.factory.support.AbstractBeanFactory.lambda$doGetBean$0(AbstractBeanFactory.java:335) ~[spring-beans-5.3.21.jar:5.3.21] at org.springframework.beans.factory.support.DefaultSingletonBeanRegistry.getSingleton(DefaultSingletonBeanRegistry.java:234) ~[spring-beans-5.3.21.jar:5.3.21] at org.springframework.beans.factory.support.AbstractBeanFactory.doGetBean(AbstractBeanFactory.java:333) ~[spring-beans-5.3.21.jar:5.3.21] at org.springframework.beans.factory.support.AbstractBeanFactory.getBean(AbstractBeanFactory.java:208) ~[spring-beans-5.3.21.jar:5.3.21] at org.springframework.beans.factory.config.DependencyDescriptor.resolveCandidate(DependencyDescriptor.java:276) ~[spring-beans-5.3.21.jar:5.3.21] at org.springframework.beans.factory.support.DefaultListableBeanFactory.doResolveDependency(DefaultListableBeanFactory.java:1391) ~[spring-beans-5.3.21.jar:5.3.21] at org.springframework.beans.factory.support.DefaultListableBeanFactory.resolveDependency(DefaultListableBeanFactory.java:1311) ~[spring-beans-5.3.21.jar:5.3.21] at org.springframework.beans.factory.support.ConstructorResolver.resolveAutowiredArgument(ConstructorResolver.java:887) ~[spring-beans-5.3.21.jar:5.3.21] at org.springframework.beans.factory.support.ConstructorResolver.createArgumentArray(ConstructorResolver.java:791) ~[spring-beans-5.3.21.jar:5.3.21] at org.springframework.beans.factory.support.ConstructorResolver.autowireConstructor(ConstructorResolver.java:229) ~[spring-beans-5.3.21.jar:5.3.21] at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.autowireConstructor(AbstractAutowireCapableBeanFactory.java:1372) ~[spring-beans-5.3.21.jar:5.3.21] at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.createBeanInstance(AbstractAutowireCapableBeanFactory.java:1222) ~[spring-beans-5.3.21.jar:5.3.21] at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.doCreateBean(AbstractAutowireCapableBeanFactory.java:582) ~[spring-beans-5.3.21.jar:5.3.21] at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.createBean(AbstractAutowireCapableBeanFactory.java:542) ~[spring-beans-5.3.21.jar:5.3.21] at org.springframework.beans.factory.support.AbstractBeanFactory.lambda$doGetBean$0(AbstractBeanFactory.java:335) ~[spring-beans-5.3.21.jar:5.3.21] at org.springframework.beans.factory.support.DefaultSingletonBeanRegistry.getSingleton(DefaultSingletonBeanRegistry.java:234) ~[spring-beans-5.3.21.jar:5.3.21] at org.springframework.beans.factory.support.AbstractBeanFactory.doGetBean(AbstractBeanFactory.java:333) ~[spring-beans-5.3.21.jar:5.3.21] at org.springframework.beans.factory.support.AbstractBeanFactory.getBean(AbstractBeanFactory.java:208) ~[spring-beans-5.3.21.jar:5.3.21] at com.atlassian.plugin.spring.SpringHostComponentProviderFactoryBean$SpringHostComponentProvider.provideBeans(SpringHostComponentProviderFactoryBean.java:159) ~[atlassian-plugins-spring-7.0.6.jar:?] at com.atlassian.plugin.spring.SpringHostComponentProviderFactoryBean$SpringHostComponentProvider.provide(SpringHostComponentProviderFactoryBean.java:137) ~[atlassian-plugins-spring-7.0.6.jar:?] at jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method) ~[?:?] at jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62) ~[?:?] at jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) ~[?:?] at java.lang.reflect.Method.invoke(Method.java:566) ~[?:?] at org.springframework.beans.factory.config.AbstractFactoryBean$EarlySingletonInvocationHandler.invoke(AbstractFactoryBean.java:275) ~[spring-beans-5.3.21.jar:5.3.21] at com.sun.proxy.$Proxy149.provide(Unknown Source) ~[?:?] at com.atlassian.plugin.osgi.container.felix.FelixOsgiContainerManager.collectHostComponents(FelixOsgiContainerManager.java:481) ~[atlassian-plugins-osgi-7.0.6.jar:?] at com.atlassian.plugin.osgi.container.felix.FelixOsgiContainerManager.start(FelixOsgiContainerManager.java:229) ~[atlassian-plugins-osgi-7.0.6.jar:?] at com.atlassian.plugin.osgi.container.felix.FelixOsgiContainerManager.onStart(FelixOsgiContainerManager.java:197) ~[atlassian-plugins-osgi-7.0.6.jar:?] at jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method) ~[?:?] at jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62) ~[?:?] at jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) ~[?:?] at java.lang.reflect.Method.invoke(Method.java:566) ~[?:?] at com.atlassian.event.internal.SingleParameterMethodListenerInvoker.invoke(SingleParameterMethodListenerInvoker.java:42) ~[atlassian-event-5.0.1.jar:?] ... 44 more
Workaround
None, you'll need to reinstall Bamboo using a supported database platform:
- mentioned in
-
Page Failed to load
[BAM-22010] Bamboo setup on an unsupported database such as PostgreSQL 9 fails and does not communicate anything
Remote Link | Original: This issue links to "Page (Confluence)" [ 718733 ] |
Remote Link | New: This issue links to "Page (Confluence)" [ 718733 ] |
Resolution | New: Fixed [ 1 ] | |
Status | Original: Waiting for Release [ 12075 ] | New: Closed [ 6 ] |
Status | Original: In Progress [ 3 ] | New: Waiting for Release [ 12075 ] |
Fix Version/s | New: 9.0.2 [ 103491 ] | |
Fix Version/s | New: 9.1.0 [ 102591 ] |
Remote Link |
New:
This issue links to "+core+ New and Tasty › C Upgrade Builds › bugfix- |
Remote Link |
New:
This issue links to "+core+ Dogfooding › Test Git Branch Detection › bugfix- |
Status | Original: Short Term Backlog [ 12074 ] | New: In Progress [ 3 ] |
Assignee | New: Alexey Chystoprudov [ achystoprudov ] |
Remote Link | New: This issue links to "Page (Confluence)" [ 704889 ] |