From d0b688d3ad3c72b6a07627ca689fade3a6257471 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Sa=C5=A1a=20=C5=BDivkov?= Date: Tue, 13 Jun 2017 12:49:42 +0200 Subject: [PATCH] Fix cyclic dependency when using site_path from system_config table The starting mode where site_path is not specified (as a system property) and Gerrit first connects to the database using the ReviewDb JNDI property from the servlet container was broken since I60f585f5ef due to a cyclic dependency in Guice bindings. Make sure to inject the non-wrapped SchemaFactory in the SitePathFromSystemConfigProvider. Change-Id: Ie283a5498e981642a82aac1fcb8b33b0c881fc84 --- .../google/gerrit/httpd/SitePathFromSystemConfigProvider.java | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/gerrit-war/src/main/java/com/google/gerrit/httpd/SitePathFromSystemConfigProvider.java b/gerrit-war/src/main/java/com/google/gerrit/httpd/SitePathFromSystemConfigProvider.java index 33f9ae34bf..5a97d20665 100644 --- a/gerrit-war/src/main/java/com/google/gerrit/httpd/SitePathFromSystemConfigProvider.java +++ b/gerrit-war/src/main/java/com/google/gerrit/httpd/SitePathFromSystemConfigProvider.java @@ -17,6 +17,7 @@ package com.google.gerrit.httpd; import com.google.gerrit.reviewdb.client.SystemConfig; import com.google.gerrit.reviewdb.server.ReviewDb; import com.google.gerrit.server.config.SitePath; +import com.google.gerrit.server.schema.ReviewDbFactory; import com.google.gwtorm.server.OrmException; import com.google.gwtorm.server.SchemaFactory; import com.google.inject.Inject; @@ -31,7 +32,7 @@ class SitePathFromSystemConfigProvider implements Provider { private final Path path; @Inject - SitePathFromSystemConfigProvider(SchemaFactory schemaFactory) + SitePathFromSystemConfigProvider(@ReviewDbFactory SchemaFactory schemaFactory) throws OrmException { path = read(schemaFactory); }