]> source.dussan.org Git - sonarqube.git/commitdiff
SONAR-3107 do not hide initial exception when server components fail to start
authorsimonbrandhof <simon.brandhof@gmail.com>
Tue, 20 Dec 2011 17:05:48 +0000 (18:05 +0100)
committersimonbrandhof <simon.brandhof@gmail.com>
Tue, 20 Dec 2011 17:05:48 +0000 (18:05 +0100)
sonar-server/src/main/java/org/sonar/server/platform/Platform.java

index a67b40b3271b305dbf66ee1e66def4b3092cfd19..c86f5f9347754dacc5ba60ce9dd18d93efab4a13 100644 (file)
@@ -220,30 +220,30 @@ public final class Platform {
 
   private void executeStartupTasks() {
     ComponentContainer startupContainer = servicesContainer.createChild();
-    try {
-      startupContainer.addSingleton(MavenRepository.class);
-      startupContainer.addSingleton(GwtPublisher.class);
-      startupContainer.addSingleton(RegisterMetrics.class);
-      startupContainer.addSingleton(RegisterRules.class);
-      startupContainer.addSingleton(RegisterProvidedProfiles.class);
-      startupContainer.addSingleton(EnableProfiles.class);
-      startupContainer.addSingleton(ActivateDefaultProfiles.class);
-      startupContainer.addSingleton(JdbcDriverDeployer.class);
-      startupContainer.addSingleton(ServerMetadataPersister.class);
-      startupContainer.addSingleton(RegisterQualityModels.class);
-      startupContainer.addSingleton(DeleteDeprecatedMeasures.class);
-      startupContainer.addSingleton(GeneratePluginIndex.class);
-      startupContainer.addSingleton(RegisterNewDashboards.class);
-      startupContainer.addSingleton(IndexProjects.class);
-      startupContainer.startComponents();
+    startupContainer.addSingleton(MavenRepository.class);
+    startupContainer.addSingleton(GwtPublisher.class);
+    startupContainer.addSingleton(RegisterMetrics.class);
+    startupContainer.addSingleton(RegisterRules.class);
+    startupContainer.addSingleton(RegisterProvidedProfiles.class);
+    startupContainer.addSingleton(EnableProfiles.class);
+    startupContainer.addSingleton(ActivateDefaultProfiles.class);
+    startupContainer.addSingleton(JdbcDriverDeployer.class);
+    startupContainer.addSingleton(ServerMetadataPersister.class);
+    startupContainer.addSingleton(RegisterQualityModels.class);
+    startupContainer.addSingleton(DeleteDeprecatedMeasures.class);
+    startupContainer.addSingleton(GeneratePluginIndex.class);
+    startupContainer.addSingleton(RegisterNewDashboards.class);
+    startupContainer.addSingleton(IndexProjects.class);
+    startupContainer.startComponents();
 
-      startupContainer.getComponentByType(ServerLifecycleNotifier.class).notifyStart();
+    startupContainer.getComponentByType(ServerLifecycleNotifier.class).notifyStart();
 
-    } finally {
-      startupContainer.stopComponents();
-      servicesContainer.removeChild();
-      servicesContainer.getComponentByType(DatabaseSessionFactory.class).clear();
-    }
+    // Do not put the following statements in a finally block.
+    // It would hide the possible exception raised during startup
+    // See SONAR-3107
+    startupContainer.stopComponents();
+    servicesContainer.removeChild();
+    servicesContainer.getComponentByType(DatabaseSessionFactory.class).clear();
   }
 
   public void stop() {