summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorDavid Ostrovsky <david@ostrovsky.org>2020-05-02 08:15:12 +0200
committerDavid Ostrovsky <david@ostrovsky.org>2020-05-03 10:50:45 +0200
commit6e43beda49efaa17832c618546d2147cb3f41ca8 (patch)
tree841563c09de1ac228bd834c2e23379a54eb36b84
parent05635e0042b373021d427b82977e4adbbe47daf6 (diff)
Revert "Keep alive database connection to prevent exceeding wait timeout"
This reverts commit ad52c7ad48cab1418c055f65b730437ee97c8329. Reason for revert: There was a principal refactoring in connection management in schema migration process, so that polling the database connection with dummy SQL statement in Schema 146 is not needed any more. Change-Id: Ib5b2c1a946b35c9a5e8adef01fe45ecd046b4308
-rw-r--r--gerrit-server/src/main/java/com/google/gerrit/server/schema/Schema_146.java25
1 files changed, 3 insertions, 22 deletions
diff --git a/gerrit-server/src/main/java/com/google/gerrit/server/schema/Schema_146.java b/gerrit-server/src/main/java/com/google/gerrit/server/schema/Schema_146.java
index d05c5f560a..64e9123c95 100644
--- a/gerrit-server/src/main/java/com/google/gerrit/server/schema/Schema_146.java
+++ b/gerrit-server/src/main/java/com/google/gerrit/server/schema/Schema_146.java
@@ -23,7 +23,6 @@ import com.google.gerrit.reviewdb.server.ReviewDb;
import com.google.gerrit.server.GerritPersonIdent;
import com.google.gerrit.server.config.AllUsersName;
import com.google.gerrit.server.git.GitRepositoryManager;
-import com.google.gwtorm.jdbc.JdbcSchema;
import com.google.gwtorm.server.OrmException;
import com.google.inject.Inject;
import com.google.inject.Provider;
@@ -105,7 +104,7 @@ public class Schema_146 extends SchemaVersion {
Sets.newHashSet(Iterables.partition(accounts, 500));
ExecutorService pool = createExecutor(ui);
try {
- batches.stream().forEach(batch -> pool.submit(() -> processBatch(db, batch, ui)));
+ batches.stream().forEach(batch -> pool.submit(() -> processBatch(batch, ui)));
pool.shutdown();
pool.awaitTermination(Long.MAX_VALUE, TimeUnit.DAYS);
} catch (InterruptedException e) {
@@ -126,7 +125,7 @@ public class Schema_146 extends SchemaVersion {
return Executors.newFixedThreadPool(threads);
}
- private void processBatch(ReviewDb db, List<Entry<Account.Id, Timestamp>> batch, UpdateUI ui) {
+ private void processBatch(List<Entry<Account.Id, Timestamp>> batch, UpdateUI ui) {
try (Repository repo = repoManager.openRepository(allUsersName);
RevWalk rw = new RevWalk(repo);
ObjectInserter oi = repo.newObjectInserter()) {
@@ -144,28 +143,10 @@ public class Schema_146 extends SchemaVersion {
showProgress(ui, count);
if (count % 1000 == 0) {
gc(repo, true, ui);
- keepAliveDatabaseConnection(db);
}
}
} catch (IOException e) {
throw new UncheckedIOException(e);
- } catch (SQLException e) {
- throw new RuntimeException(e);
- }
- }
-
- private static String dummySelectStatement() {
- // TODO(davido): Gwtorm doesn't expose dummySelectStatement() method for all supported SQL
- // dialects.
- return "SELECT version_nbr FROM schema_version";
- }
-
- private static void keepAliveDatabaseConnection(ReviewDb db) throws SQLException {
- try (Statement stmt = ((JdbcSchema) db).getConnection().createStatement();
- ResultSet rs = stmt.executeQuery(dummySelectStatement())) {
- // No Op.
- // The select is fired to prevent the SQL connection from becoming stale
- // and being closed on the server side during long running batch operation.
}
}
@@ -297,7 +278,7 @@ public class Schema_146 extends SchemaVersion {
return oi.insert(cb);
}
- private static boolean isInitialEmptyCommit(ObjectId emptyTree, RevCommit c) {
+ private boolean isInitialEmptyCommit(ObjectId emptyTree, RevCommit c) {
return c.getParentCount() == 0
&& c.getTree().equals(emptyTree)
&& c.getShortMessage().equals(CREATE_ACCOUNT_MSG);