summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorShawn Pearce <sop@google.com>2013-05-13 22:37:44 -0700
committerShawn Pearce <sop@google.com>2013-05-13 22:37:44 -0700
commitd0e7b198abf0b5d09944f25b8f4c38a86c2a1764 (patch)
tree2a6f25542e6c2b93aa30d5a58834c43efb8a2d8b
parent57b44b0cd9491af415097bf195ef695d45bd9786 (diff)
init: Don't set username on upgrade if database.type is JDBC
The username may already appear in the url and be working correctly from a prior installation. Setting database.username will confuse Gerrit when it tries to connect without a matching database.password. Bug: issue 1870 Change-Id: Ib25b48bd8587562e56613815f497efab850a80e8
-rw-r--r--gerrit-pgm/src/main/java/com/google/gerrit/pgm/init/JDBCInitializer.java3
1 files changed, 2 insertions, 1 deletions
diff --git a/gerrit-pgm/src/main/java/com/google/gerrit/pgm/init/JDBCInitializer.java b/gerrit-pgm/src/main/java/com/google/gerrit/pgm/init/JDBCInitializer.java
index ac3e7287a3..20034c121e 100644
--- a/gerrit-pgm/src/main/java/com/google/gerrit/pgm/init/JDBCInitializer.java
+++ b/gerrit-pgm/src/main/java/com/google/gerrit/pgm/init/JDBCInitializer.java
@@ -21,10 +21,11 @@ import com.google.common.base.Strings;
class JDBCInitializer implements DatabaseConfigInitializer {
@Override
public void initConfig(Section database) {
+ boolean hasUrl = Strings.emptyToNull(database.get("url")) != null;
database.string("URL", "url", null);
guessDriver(database);
database.string("Driver class name", "driver", null);
- database.string("Database username", "username", username());
+ database.string("Database username", "username", hasUrl ? null : username());
database.password("username", "password");
}