diff --git a/core/src/main/java/google/registry/model/EntityClasses.java b/core/src/main/java/google/registry/model/EntityClasses.java index 78f2f9dad..fd504b5cb 100644 --- a/core/src/main/java/google/registry/model/EntityClasses.java +++ b/core/src/main/java/google/registry/model/EntityClasses.java @@ -32,8 +32,6 @@ import google.registry.model.index.ForeignKeyIndex; import google.registry.model.poll.PollMessage; import google.registry.model.rde.RdeRevision; import google.registry.model.registrar.Registrar; -import google.registry.model.replay.LastSqlTransaction; -import google.registry.model.replay.ReplayGap; import google.registry.model.reporting.HistoryEntry; import google.registry.model.server.Lock; import google.registry.model.server.ServerSecret; @@ -64,14 +62,12 @@ public final class EntityClasses { HistoryEntry.class, HostHistory.class, HostResource.class, - LastSqlTransaction.class, Lock.class, PollMessage.class, PollMessage.Autorenew.class, PollMessage.OneTime.class, RdeRevision.class, Registrar.class, - ReplayGap.class, ServerSecret.class); private EntityClasses() {} diff --git a/core/src/main/java/google/registry/model/replay/LastSqlTransaction.java b/core/src/main/java/google/registry/model/replay/LastSqlTransaction.java deleted file mode 100644 index 51a1a503a..000000000 --- a/core/src/main/java/google/registry/model/replay/LastSqlTransaction.java +++ /dev/null @@ -1,73 +0,0 @@ -// Copyright 2021 The Nomulus Authors. All Rights Reserved. -// -// Licensed under the Apache License, Version 2.0 (the "License"); -// you may not use this file except in compliance with the License. -// You may obtain a copy of the License at -// -// http://www.apache.org/licenses/LICENSE-2.0 -// -// Unless required by applicable law or agreed to in writing, software -// distributed under the License is distributed on an "AS IS" BASIS, -// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -// See the License for the specific language governing permissions and -// limitations under the License. - -package google.registry.model.replay; - -import static com.google.common.base.Preconditions.checkArgument; -import static google.registry.model.ofy.ObjectifyService.auditedOfy; - -import com.google.common.annotations.VisibleForTesting; -import com.googlecode.objectify.Key; -import com.googlecode.objectify.annotation.Entity; -import com.googlecode.objectify.annotation.Id; -import google.registry.model.ImmutableObject; -import google.registry.model.annotations.DeleteAfterMigration; - -/** Datastore entity to keep track of the last SQL transaction imported into the datastore. */ -@Entity -@DeleteAfterMigration -public class LastSqlTransaction extends ImmutableObject { - - /** The key for this singleton. */ - public static final Key KEY = Key.create(LastSqlTransaction.class, 1); - - @SuppressWarnings("unused") - @Id - private long id = 1; - - private long transactionId; - - LastSqlTransaction() {} - - @VisibleForTesting - LastSqlTransaction(long newTransactionId) { - transactionId = newTransactionId; - } - - LastSqlTransaction cloneWithNewTransactionId(long transactionId) { - checkArgument( - transactionId > this.transactionId, - "New transaction id (%s) must be greater than the current transaction id (%s)", - transactionId, - this.transactionId); - return new LastSqlTransaction(transactionId); - } - - long getTransactionId() { - return transactionId; - } - - /** - * Loads the instance. - * - *

Must be called within an Ofy transaction. - * - *

Creates a new instance of the singleton if it is not already present in Cloud Datastore, - */ - static LastSqlTransaction load() { - auditedOfy().assertInTransaction(); - LastSqlTransaction result = auditedOfy().load().key(KEY).now(); - return result == null ? new LastSqlTransaction() : result; - } -} diff --git a/core/src/main/java/google/registry/model/replay/ReplayGap.java b/core/src/main/java/google/registry/model/replay/ReplayGap.java deleted file mode 100644 index a850b54e4..000000000 --- a/core/src/main/java/google/registry/model/replay/ReplayGap.java +++ /dev/null @@ -1,60 +0,0 @@ -// Copyright 2022 The Nomulus Authors. All Rights Reserved. -// -// Licensed under the Apache License, Version 2.0 (the "License"); -// you may not use this file except in compliance with the License. -// You may obtain a copy of the License at -// -// http://www.apache.org/licenses/LICENSE-2.0 -// -// Unless required by applicable law or agreed to in writing, software -// distributed under the License is distributed on an "AS IS" BASIS, -// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -// See the License for the specific language governing permissions and -// limitations under the License. - -package google.registry.model.replay; - -import static google.registry.model.annotations.NotBackedUp.Reason.TRANSIENT; - -import com.googlecode.objectify.annotation.Entity; -import com.googlecode.objectify.annotation.Id; -import google.registry.model.ImmutableObject; -import google.registry.model.annotations.DeleteAfterMigration; -import google.registry.model.annotations.NotBackedUp; -import org.joda.time.DateTime; - -/** - * Tracks gaps in transaction ids when replicating from SQL to datastore. - * - *

SQL -> DS replication uses a Transaction table indexed by a SEQUENCE column, which normally - * increments monotonically for each committed transaction. Gaps in this sequence can occur when a - * transaction is rolled back or when a transaction has been initiated but not committed to the - * table at the time of a query. To protect us from the latter scenario, we need to keep track of - * these gaps and replay any of them that have been filled in since we processed their batch. - */ -@DeleteAfterMigration -@NotBackedUp(reason = TRANSIENT) -@Entity -public class ReplayGap extends ImmutableObject { - @Id long transactionId; - - // We can't use a CreateAutoTimestamp here because this ends up getting persisted in an ofy - // transaction that happens in JPA mode, so we don't end up getting an active transaction manager - // when the timestamp needs to be set. - DateTime timestamp; - - ReplayGap() {} - - ReplayGap(DateTime timestamp, long transactionId) { - this.timestamp = timestamp; - this.transactionId = transactionId; - } - - long getTransactionId() { - return transactionId; - } - - DateTime getTimestamp() { - return timestamp; - } -} diff --git a/core/src/main/java/google/registry/model/replay/SqlReplayCheckpoint.java b/core/src/main/java/google/registry/model/replay/SqlReplayCheckpoint.java deleted file mode 100644 index 5ec529e3d..000000000 --- a/core/src/main/java/google/registry/model/replay/SqlReplayCheckpoint.java +++ /dev/null @@ -1,48 +0,0 @@ -// Copyright 2020 The Nomulus Authors. All Rights Reserved. -// -// Licensed under the Apache License, Version 2.0 (the "License"); -// you may not use this file except in compliance with the License. -// You may obtain a copy of the License at -// -// http://www.apache.org/licenses/LICENSE-2.0 -// -// Unless required by applicable law or agreed to in writing, software -// distributed under the License is distributed on an "AS IS" BASIS, -// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -// See the License for the specific language governing permissions and -// limitations under the License. - -package google.registry.model.replay; - -import static google.registry.persistence.transaction.TransactionManagerFactory.jpaTm; -import static google.registry.util.DateTimeUtils.START_OF_TIME; - -import google.registry.model.annotations.DeleteAfterMigration; -import google.registry.model.common.CrossTldSingleton; -import javax.persistence.Column; -import javax.persistence.Entity; -import org.joda.time.DateTime; - -@Entity -@DeleteAfterMigration -public class SqlReplayCheckpoint extends CrossTldSingleton { - - @Column(nullable = false) - private DateTime lastReplayTime; - - public static DateTime get() { - jpaTm().assertInTransaction(); - return jpaTm() - .loadSingleton(SqlReplayCheckpoint.class) - .map(checkpoint -> checkpoint.lastReplayTime) - .orElse(START_OF_TIME); - } - - public static void set(DateTime lastReplayTime) { - jpaTm().assertInTransaction(); - SqlReplayCheckpoint checkpoint = new SqlReplayCheckpoint(); - checkpoint.lastReplayTime = lastReplayTime; - // this will overwrite the existing object due to the constant revisionId - jpaTm().put(checkpoint); - } -} diff --git a/core/src/main/java/google/registry/persistence/transaction/TransactionEntity.java b/core/src/main/java/google/registry/persistence/transaction/TransactionEntity.java deleted file mode 100644 index 4b9022544..000000000 --- a/core/src/main/java/google/registry/persistence/transaction/TransactionEntity.java +++ /dev/null @@ -1,56 +0,0 @@ -// Copyright 2020 The Nomulus Authors. All Rights Reserved. -// -// Licensed under the Apache License, Version 2.0 (the "License"); -// you may not use this file except in compliance with the License. -// You may obtain a copy of the License at -// -// http://www.apache.org/licenses/LICENSE-2.0 -// -// Unless required by applicable law or agreed to in writing, software -// distributed under the License is distributed on an "AS IS" BASIS, -// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -// See the License for the specific language governing permissions and -// limitations under the License. - -package google.registry.persistence.transaction; - -import com.google.common.annotations.VisibleForTesting; -import google.registry.model.ImmutableObject; -import google.registry.model.annotations.DeleteAfterMigration; -import javax.persistence.Entity; -import javax.persistence.GeneratedValue; -import javax.persistence.GenerationType; -import javax.persistence.Id; -import javax.persistence.Table; - -/** - * Object to be stored in the transaction table. - * - *

This consists of a sequential identifier and a serialized {@code Tranaction} object. - */ -@Entity -@Table(name = "Transaction") -@DeleteAfterMigration -public class TransactionEntity extends ImmutableObject { - - @Id - @GeneratedValue(strategy = GenerationType.IDENTITY) - private long id; - - private byte[] contents; - - TransactionEntity() {} - - @VisibleForTesting - public TransactionEntity(byte[] contents) { - this.contents = contents; - } - - public long getId() { - return id; - } - - public byte[] getContents() { - return contents; - } -} diff --git a/core/src/main/java/google/registry/tools/RegistryTool.java b/core/src/main/java/google/registry/tools/RegistryTool.java index 068b5fc08..3a2d4fdab 100644 --- a/core/src/main/java/google/registry/tools/RegistryTool.java +++ b/core/src/main/java/google/registry/tools/RegistryTool.java @@ -97,7 +97,6 @@ public final class RegistryTool { .put("save_sql_credential", SaveSqlCredentialCommand.class) .put("send_escrow_report_to_icann", SendEscrowReportToIcannCommand.class) .put("set_num_instances", SetNumInstancesCommand.class) - .put("set_sql_replay_checkpoint", SetSqlReplayCheckpointCommand.class) .put("setup_ote", SetupOteCommand.class) .put("uniform_rapid_suspension", UniformRapidSuspensionCommand.class) .put("unlock_domain", UnlockDomainCommand.class) diff --git a/core/src/main/java/google/registry/tools/RegistryToolComponent.java b/core/src/main/java/google/registry/tools/RegistryToolComponent.java index 3c69fdfd6..c6b50b0a3 100644 --- a/core/src/main/java/google/registry/tools/RegistryToolComponent.java +++ b/core/src/main/java/google/registry/tools/RegistryToolComponent.java @@ -142,8 +142,6 @@ interface RegistryToolComponent { void inject(SetNumInstancesCommand command); - void inject(SetSqlReplayCheckpointCommand command); - void inject(SetupOteCommand command); void inject(UnlockDomainCommand command); diff --git a/core/src/main/java/google/registry/tools/SetSqlReplayCheckpointCommand.java b/core/src/main/java/google/registry/tools/SetSqlReplayCheckpointCommand.java deleted file mode 100644 index e36e23798..000000000 --- a/core/src/main/java/google/registry/tools/SetSqlReplayCheckpointCommand.java +++ /dev/null @@ -1,48 +0,0 @@ -// Copyright 2020 The Nomulus Authors. All Rights Reserved. -// -// Licensed under the Apache License, Version 2.0 (the "License"); -// you may not use this file except in compliance with the License. -// You may obtain a copy of the License at -// -// http://www.apache.org/licenses/LICENSE-2.0 -// -// Unless required by applicable law or agreed to in writing, software -// distributed under the License is distributed on an "AS IS" BASIS, -// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -// See the License for the specific language governing permissions and -// limitations under the License. - -package google.registry.tools; - -import static com.google.common.base.Preconditions.checkArgument; -import static google.registry.persistence.transaction.TransactionManagerFactory.jpaTm; - -import com.beust.jcommander.Parameter; -import com.beust.jcommander.Parameters; -import com.google.common.collect.Iterables; -import google.registry.model.replay.SqlReplayCheckpoint; -import java.util.List; -import org.joda.time.DateTime; - -/** Command to set {@link SqlReplayCheckpoint} to a particular, post-initial-population time. */ -@Parameters(separators = " =", commandDescription = "Set SqlReplayCheckpoint to a particular time") -public class SetSqlReplayCheckpointCommand extends ConfirmingCommand - implements CommandWithRemoteApi { - - @Parameter(description = "Time to which SqlReplayCheckpoint will be set", required = true) - List mainParameters; - - @Override - protected String prompt() { - checkArgument(mainParameters.size() == 1, "Must provide exactly one DateTime to set"); - return String.format( - "Set SqlReplayCheckpoint to %s?", Iterables.getOnlyElement(mainParameters)); - } - - @Override - protected String execute() { - DateTime dateTime = Iterables.getOnlyElement(mainParameters); - jpaTm().transact(() -> SqlReplayCheckpoint.set(dateTime)); - return String.format("Set SqlReplayCheckpoint time to %s", dateTime); - } -} diff --git a/core/src/main/resources/META-INF/persistence.xml b/core/src/main/resources/META-INF/persistence.xml index fe10bd245..0851f5652 100644 --- a/core/src/main/resources/META-INF/persistence.xml +++ b/core/src/main/resources/META-INF/persistence.xml @@ -73,9 +73,7 @@ google.registry.model.tmch.ClaimsList google.registry.model.tmch.ClaimsEntry google.registry.model.tmch.TmchCrl - google.registry.persistence.transaction.TransactionEntity google.registry.model.domain.RegistryLock - google.registry.model.replay.SqlReplayCheckpoint google.registry.persistence.converter.AllocationTokenStatusTransitionConverter diff --git a/core/src/test/java/google/registry/model/common/ClassPathManagerTest.java b/core/src/test/java/google/registry/model/common/ClassPathManagerTest.java index e1480811e..fcb337ce0 100644 --- a/core/src/test/java/google/registry/model/common/ClassPathManagerTest.java +++ b/core/src/test/java/google/registry/model/common/ClassPathManagerTest.java @@ -34,8 +34,6 @@ import google.registry.model.index.ForeignKeyIndex.ForeignKeyHostIndex; import google.registry.model.poll.PollMessage; import google.registry.model.rde.RdeRevision; import google.registry.model.registrar.Registrar; -import google.registry.model.replay.LastSqlTransaction; -import google.registry.model.replay.ReplayGap; import google.registry.model.reporting.HistoryEntry; import google.registry.model.server.Lock; import google.registry.model.server.ServerSecret; @@ -64,10 +62,8 @@ public class ClassPathManagerTest { assertThat(ClassPathManager.getClass("HostResource")).isEqualTo(HostResource.class); assertThat(ClassPathManager.getClass("Recurring")).isEqualTo(Recurring.class); assertThat(ClassPathManager.getClass("Registrar")).isEqualTo(Registrar.class); - assertThat(ClassPathManager.getClass("ReplayGap")).isEqualTo(ReplayGap.class); assertThat(ClassPathManager.getClass("ContactResource")).isEqualTo(ContactResource.class); assertThat(ClassPathManager.getClass("Cancellation")).isEqualTo(Cancellation.class); - assertThat(ClassPathManager.getClass("LastSqlTransaction")).isEqualTo(LastSqlTransaction.class); assertThat(ClassPathManager.getClass("GaeUserIdConverter")).isEqualTo(GaeUserIdConverter.class); assertThat(ClassPathManager.getClass("EppResourceIndexBucket")) .isEqualTo(EppResourceIndexBucket.class); @@ -121,11 +117,8 @@ public class ClassPathManagerTest { assertThat(ClassPathManager.getClassName(HostResource.class)).isEqualTo("HostResource"); assertThat(ClassPathManager.getClassName(Recurring.class)).isEqualTo("Recurring"); assertThat(ClassPathManager.getClassName(Registrar.class)).isEqualTo("Registrar"); - assertThat(ClassPathManager.getClassName(ReplayGap.class)).isEqualTo("ReplayGap"); assertThat(ClassPathManager.getClassName(ContactResource.class)).isEqualTo("ContactResource"); assertThat(ClassPathManager.getClassName(Cancellation.class)).isEqualTo("Cancellation"); - assertThat(ClassPathManager.getClassName(LastSqlTransaction.class)) - .isEqualTo("LastSqlTransaction"); assertThat(ClassPathManager.getClassName(GaeUserIdConverter.class)) .isEqualTo("GaeUserIdConverter"); assertThat(ClassPathManager.getClassName(EppResourceIndexBucket.class)) diff --git a/core/src/test/java/google/registry/model/replay/SqlReplayCheckpointTest.java b/core/src/test/java/google/registry/model/replay/SqlReplayCheckpointTest.java deleted file mode 100644 index f9cfa30a0..000000000 --- a/core/src/test/java/google/registry/model/replay/SqlReplayCheckpointTest.java +++ /dev/null @@ -1,60 +0,0 @@ -// Copyright 2020 The Nomulus Authors. All Rights Reserved. -// -// Licensed under the Apache License, Version 2.0 (the "License"); -// you may not use this file except in compliance with the License. -// You may obtain a copy of the License at -// -// http://www.apache.org/licenses/LICENSE-2.0 -// -// Unless required by applicable law or agreed to in writing, software -// distributed under the License is distributed on an "AS IS" BASIS, -// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -// See the License for the specific language governing permissions and -// limitations under the License. - -package google.registry.model.replay; - -import static com.google.common.truth.Truth.assertThat; -import static google.registry.persistence.transaction.TransactionManagerFactory.jpaTm; -import static google.registry.util.DateTimeUtils.START_OF_TIME; - -import google.registry.model.EntityTestCase; -import org.joda.time.DateTime; -import org.junit.jupiter.api.Test; - -/** Tests for {@link SqlReplayCheckpoint}. */ -public class SqlReplayCheckpointTest extends EntityTestCase { - - SqlReplayCheckpointTest() { - super(JpaEntityCoverageCheck.ENABLED); - } - - @Test - void testEmpty_startOfTime() { - assertThat(jpaTm().transact(SqlReplayCheckpoint::get)).isEqualTo(START_OF_TIME); - } - - @Test - void testSuccess_writes() { - DateTime dateTime = DateTime.parse("2012-02-29T00:00:00Z"); - jpaTm().transact(() -> SqlReplayCheckpoint.set(dateTime)); - assertThat(jpaTm().transact(SqlReplayCheckpoint::get)).isEqualTo(dateTime); - } - - @Test - void testSuccess_multipleWrites() { - DateTime firstTime = DateTime.parse("2012-02-29T00:00:00Z"); - jpaTm().transact(() -> SqlReplayCheckpoint.set(firstTime)); - DateTime secondTime = DateTime.parse("2013-02-28T00:00:00Z"); - jpaTm().transact(() -> SqlReplayCheckpoint.set(secondTime)); - assertThat(jpaTm().transact(SqlReplayCheckpoint::get)).isEqualTo(secondTime); - jpaTm() - .transact( - () -> - assertThat( - jpaTm() - .query("SELECT COUNT(*) FROM SqlReplayCheckpoint", Long.class) - .getSingleResult()) - .isEqualTo(1L)); - } -} diff --git a/core/src/test/java/google/registry/persistence/transaction/JpaEntityCoverageExtension.java b/core/src/test/java/google/registry/persistence/transaction/JpaEntityCoverageExtension.java index e1745ad61..c9cb434ab 100644 --- a/core/src/test/java/google/registry/persistence/transaction/JpaEntityCoverageExtension.java +++ b/core/src/test/java/google/registry/persistence/transaction/JpaEntityCoverageExtension.java @@ -45,9 +45,7 @@ public class JpaEntityCoverageExtension implements BeforeEachCallback, AfterEach // needs to remove it in order to avoid affecting any other tests running in the same JVM. // TODO(gbrodman): remove this when we implement proper read-only modes for the // transaction managers. - "DatabaseMigrationStateSchedule", - // TransactionEntity is trivial; its persistence is tested in TransactionTest. - "TransactionEntity"); + "DatabaseMigrationStateSchedule"); public static final ImmutableSet> ALL_JPA_ENTITIES = PersistenceXmlUtility.getManagedClasses().stream() diff --git a/core/src/test/java/google/registry/schema/integration/SqlIntegrationTestSuite.java b/core/src/test/java/google/registry/schema/integration/SqlIntegrationTestSuite.java index 9ee54c3f5..e0c9942dd 100644 --- a/core/src/test/java/google/registry/schema/integration/SqlIntegrationTestSuite.java +++ b/core/src/test/java/google/registry/schema/integration/SqlIntegrationTestSuite.java @@ -26,7 +26,6 @@ import google.registry.model.history.DomainHistoryTest; import google.registry.model.history.HostHistoryTest; import google.registry.model.poll.PollMessageTest; import google.registry.model.rde.RdeRevisionTest; -import google.registry.model.replay.SqlReplayCheckpointTest; import google.registry.model.reporting.Spec11ThreatMatchTest; import google.registry.model.server.LockTest; import google.registry.model.server.ServerSecretTest; @@ -99,7 +98,6 @@ import org.junit.runner.RunWith; ServerSecretTest.class, SignedMarkRevocationListDaoTest.class, Spec11ThreatMatchTest.class, - SqlReplayCheckpointTest.class, TmchCrlTest.class, // AfterSuiteTest must be the last entry. See class javadoc for details. AfterSuiteTest.class diff --git a/core/src/test/java/google/registry/tools/SetSqlReplayCheckpointCommandTest.java b/core/src/test/java/google/registry/tools/SetSqlReplayCheckpointCommandTest.java deleted file mode 100644 index 61b57eb5b..000000000 --- a/core/src/test/java/google/registry/tools/SetSqlReplayCheckpointCommandTest.java +++ /dev/null @@ -1,42 +0,0 @@ -// Copyright 2020 The Nomulus Authors. All Rights Reserved. -// -// Licensed under the Apache License, Version 2.0 (the "License"); -// you may not use this file except in compliance with the License. -// You may obtain a copy of the License at -// -// http://www.apache.org/licenses/LICENSE-2.0 -// -// Unless required by applicable law or agreed to in writing, software -// distributed under the License is distributed on an "AS IS" BASIS, -// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -// See the License for the specific language governing permissions and -// limitations under the License. - -package google.registry.tools; - -import static com.google.common.truth.Truth.assertThat; -import static google.registry.persistence.transaction.TransactionManagerFactory.jpaTm; -import static google.registry.util.DateTimeUtils.START_OF_TIME; -import static org.junit.Assert.assertThrows; - -import google.registry.model.replay.SqlReplayCheckpoint; -import org.joda.time.DateTime; -import org.junit.jupiter.api.Test; - -class SetSqlReplayCheckpointCommandTest extends CommandTestCase { - - @Test - void testSuccess() throws Exception { - assertThat(jpaTm().transact(SqlReplayCheckpoint::get)).isEqualTo(START_OF_TIME); - DateTime timeToSet = DateTime.parse("2000-06-06T22:00:00.0Z"); - runCommandForced(timeToSet.toString()); - assertThat(jpaTm().transact(SqlReplayCheckpoint::get)).isEqualTo(timeToSet); - } - - @Test - void testFailure_multipleParams() { - DateTime one = DateTime.parse("2000-06-06T22:00:00.0Z"); - DateTime two = DateTime.parse("2001-06-06T22:00:00.0Z"); - assertThrows(IllegalArgumentException.class, () -> runCommand(one.toString(), two.toString())); - } -} diff --git a/core/src/test/resources/google/registry/export/backup_kinds.txt b/core/src/test/resources/google/registry/export/backup_kinds.txt index f56b1d160..a6383d3ad 100644 --- a/core/src/test/resources/google/registry/export/backup_kinds.txt +++ b/core/src/test/resources/google/registry/export/backup_kinds.txt @@ -9,7 +9,6 @@ ForeignKeyDomainIndex ForeignKeyHostIndex HistoryEntry HostResource -LastSqlTransaction Modification OneTime PollMessage diff --git a/core/src/test/resources/google/registry/model/schema.txt b/core/src/test/resources/google/registry/model/schema.txt index 0547b1eb4..127d1281d 100644 --- a/core/src/test/resources/google/registry/model/schema.txt +++ b/core/src/test/resources/google/registry/model/schema.txt @@ -553,14 +553,6 @@ class google.registry.model.registrar.RegistrarAddress { java.lang.String zip; java.util.List street; } -class google.registry.model.replay.LastSqlTransaction { - @Id long id; - long transactionId; -} -class google.registry.model.replay.ReplayGap { - @Id long transactionId; - org.joda.time.DateTime timestamp; -} class google.registry.model.reporting.DomainTransactionRecord { google.registry.model.reporting.DomainTransactionRecord$TransactionReportField reportField; java.lang.Integer reportAmount; diff --git a/db/src/main/resources/sql/er_diagram/brief_er_diagram.html b/db/src/main/resources/sql/er_diagram/brief_er_diagram.html index 1ecd798ea..ff246fa1a 100644 --- a/db/src/main/resources/sql/er_diagram/brief_er_diagram.html +++ b/db/src/main/resources/sql/er_diagram/brief_er_diagram.html @@ -261,7 +261,7 @@ td.section { generated on - 2022-07-01 21:39:06.50205 + 2022-07-06 18:25:44.018541 last flyway file @@ -274,19 +274,19 @@ td.section { SchemaCrawler_Diagram - + generated by - + SchemaCrawler 16.10.1 - + generated on - - 2022-07-01 21:39:06.50205 + + 2022-07-06 18:25:44.018541 - + allocationtoken_a08ccbef diff --git a/db/src/main/resources/sql/er_diagram/full_er_diagram.html b/db/src/main/resources/sql/er_diagram/full_er_diagram.html index 1e3ba912b..9da9e1adc 100644 --- a/db/src/main/resources/sql/er_diagram/full_er_diagram.html +++ b/db/src/main/resources/sql/er_diagram/full_er_diagram.html @@ -261,7 +261,7 @@ td.section {
generated on - 2022-07-01 21:39:02.483121 + 2022-07-06 18:25:39.145212
last flyway file @@ -284,7 +284,7 @@ td.section { generated on
- 2022-07-01 21:39:02.483121 + 2022-07-06 18:25:39.145212 diff --git a/db/src/main/resources/sql/schema/db-schema.sql.generated b/db/src/main/resources/sql/schema/db-schema.sql.generated index 27739c968..2e1f5d495 100644 --- a/db/src/main/resources/sql/schema/db-schema.sql.generated +++ b/db/src/main/resources/sql/schema/db-schema.sql.generated @@ -682,12 +682,6 @@ primary key (id) ); - create table "SqlReplayCheckpoint" ( - id int8 not null, - last_replay_time timestamptz not null, - primary key (id) - ); - create table "Tld" ( tld_name text not null, add_grace_period_length interval not null, @@ -737,12 +731,6 @@ url text not null, primary key (id) ); - - create table "Transaction" ( - id bigserial not null, - contents bytea, - primary key (id) - ); create index allocation_token_domain_name_idx on "AllocationToken" (domain_name); create index IDX9g3s7mjv1yn4t06nqid39whss on "AllocationToken" (token_type); create index IDXtmlqd31dpvvd2g1h9i7erw6aj on "AllocationToken" (redemption_domain_repo_id);