diff --git a/core/src/main/java/google/registry/backup/ReplayCommitLogsToSqlAction.java b/core/src/main/java/google/registry/backup/ReplayCommitLogsToSqlAction.java index d19c61e35..f7498c04b 100644 --- a/core/src/main/java/google/registry/backup/ReplayCommitLogsToSqlAction.java +++ b/core/src/main/java/google/registry/backup/ReplayCommitLogsToSqlAction.java @@ -34,6 +34,7 @@ import google.registry.model.server.Lock; import google.registry.model.translators.VKeyTranslatorFactory; import google.registry.persistence.VKey; import google.registry.request.Action; +import google.registry.request.Action.Method; import google.registry.request.Response; import google.registry.request.auth.Auth; import google.registry.schema.replay.DatastoreEntity; @@ -56,7 +57,7 @@ import org.joda.time.Duration; @Action( service = Action.Service.BACKEND, path = ReplayCommitLogsToSqlAction.PATH, - method = Action.Method.POST, + method = Method.POST, automaticallyPrintOk = true, auth = Auth.AUTH_INTERNAL_OR_ADMIN) public class ReplayCommitLogsToSqlAction implements Runnable { diff --git a/core/src/main/java/google/registry/env/alpha/default/WEB-INF/cron.xml b/core/src/main/java/google/registry/env/alpha/default/WEB-INF/cron.xml index 1e320a529..c5c9939b3 100644 --- a/core/src/main/java/google/registry/env/alpha/default/WEB-INF/cron.xml +++ b/core/src/main/java/google/registry/env/alpha/default/WEB-INF/cron.xml @@ -200,7 +200,7 @@ - + Replays recent commit logs from Datastore to the SQL secondary backend. diff --git a/core/src/main/java/google/registry/env/common/backend/WEB-INF/web.xml b/core/src/main/java/google/registry/env/common/backend/WEB-INF/web.xml index 497977db8..65e0ee205 100644 --- a/core/src/main/java/google/registry/env/common/backend/WEB-INF/web.xml +++ b/core/src/main/java/google/registry/env/common/backend/WEB-INF/web.xml @@ -237,6 +237,12 @@ /_dr/task/killCommitLogs + + + backend-servlet + /_dr/task/replayCommitLogsToSql + + mapreduce diff --git a/core/src/main/java/google/registry/env/crash/default/WEB-INF/cron.xml b/core/src/main/java/google/registry/env/crash/default/WEB-INF/cron.xml index fb8dd1f25..4b7210f1e 100644 --- a/core/src/main/java/google/registry/env/crash/default/WEB-INF/cron.xml +++ b/core/src/main/java/google/registry/env/crash/default/WEB-INF/cron.xml @@ -201,7 +201,7 @@ - + Replays recent commit logs from Datastore to the SQL secondary backend. diff --git a/core/src/main/java/google/registry/env/qa/default/WEB-INF/cron.xml b/core/src/main/java/google/registry/env/qa/default/WEB-INF/cron.xml index 324bee367..84596898e 100644 --- a/core/src/main/java/google/registry/env/qa/default/WEB-INF/cron.xml +++ b/core/src/main/java/google/registry/env/qa/default/WEB-INF/cron.xml @@ -101,11 +101,20 @@ - + Replays recent commit logs from Datastore to the SQL secondary backend. every 3 minutes backend + + + + + This job checkpoints the commit log buckets and exports the diff since last checkpoint to GCS. + + every 3 minutes synchronized + backend + diff --git a/core/src/main/java/google/registry/env/sandbox/default/WEB-INF/cron.xml b/core/src/main/java/google/registry/env/sandbox/default/WEB-INF/cron.xml index 37f83b2fb..0a3ba76b4 100644 --- a/core/src/main/java/google/registry/env/sandbox/default/WEB-INF/cron.xml +++ b/core/src/main/java/google/registry/env/sandbox/default/WEB-INF/cron.xml @@ -230,7 +230,7 @@ - + Replays recent commit logs from Datastore to the SQL secondary backend. diff --git a/core/src/main/java/google/registry/module/backend/BackendRequestComponent.java b/core/src/main/java/google/registry/module/backend/BackendRequestComponent.java index c3baab359..09070c12c 100644 --- a/core/src/main/java/google/registry/module/backend/BackendRequestComponent.java +++ b/core/src/main/java/google/registry/module/backend/BackendRequestComponent.java @@ -20,6 +20,7 @@ import google.registry.backup.BackupModule; import google.registry.backup.CommitLogCheckpointAction; import google.registry.backup.DeleteOldCommitLogsAction; import google.registry.backup.ExportCommitLogDiffAction; +import google.registry.backup.ReplayCommitLogsToSqlAction; import google.registry.batch.BatchModule; import google.registry.batch.DeleteContactsAndHostsAction; import google.registry.batch.DeleteExpiredDomainsAction; @@ -186,6 +187,8 @@ interface BackendRequestComponent { RelockDomainAction relockDomainAction(); + ReplayCommitLogsToSqlAction replayCommitLogsToSqlAction(); + ResaveAllEppResourcesAction resaveAllEppResourcesAction(); ResaveEntityAction resaveEntityAction(); diff --git a/core/src/test/resources/google/registry/module/backend/backend_routing.txt b/core/src/test/resources/google/registry/module/backend/backend_routing.txt index 862b842ef..e67f107b0 100644 --- a/core/src/test/resources/google/registry/module/backend/backend_routing.txt +++ b/core/src/test/resources/google/registry/module/backend/backend_routing.txt @@ -34,6 +34,7 @@ PATH CLASS METH /_dr/task/rdeUpload RdeUploadAction POST n INTERNAL,API APP ADMIN /_dr/task/refreshDnsOnHostRename RefreshDnsOnHostRenameAction GET n INTERNAL,API APP ADMIN /_dr/task/relockDomain RelockDomainAction POST y INTERNAL,API APP ADMIN +/_dr/task/replayCommitLogsToSql ReplayCommitLogsToSqlAction POST y INTERNAL,API APP ADMIN /_dr/task/resaveAllEppResources ResaveAllEppResourcesAction GET n INTERNAL,API APP ADMIN /_dr/task/resaveEntity ResaveEntityAction POST n INTERNAL,API APP ADMIN /_dr/task/syncGroupMembers SyncGroupMembersAction POST n INTERNAL,API APP ADMIN