diff --git a/core/src/main/java/google/registry/model/contact/ContactHistory.java b/core/src/main/java/google/registry/model/contact/ContactHistory.java index d7238785c..0796d93d9 100644 --- a/core/src/main/java/google/registry/model/contact/ContactHistory.java +++ b/core/src/main/java/google/registry/model/contact/ContactHistory.java @@ -31,8 +31,6 @@ import javax.persistence.Access; import javax.persistence.AccessType; import javax.persistence.Column; import javax.persistence.Entity; -import javax.persistence.GeneratedValue; -import javax.persistence.GenerationType; import javax.persistence.Id; import javax.persistence.IdClass; import javax.persistence.PostLoad; @@ -63,7 +61,6 @@ public class ContactHistory extends HistoryEntry implements SqlEntity { @Id String contactRepoId; @Id - @GeneratedValue(strategy = GenerationType.SEQUENCE, generator = "TempHistorySequenceGenerator") @Column(name = "historyRevisionId") @Access(AccessType.PROPERTY) @Override diff --git a/core/src/main/java/google/registry/model/host/HostHistory.java b/core/src/main/java/google/registry/model/host/HostHistory.java index dc4019be4..af9e2f34e 100644 --- a/core/src/main/java/google/registry/model/host/HostHistory.java +++ b/core/src/main/java/google/registry/model/host/HostHistory.java @@ -32,8 +32,6 @@ import javax.persistence.Access; import javax.persistence.AccessType; import javax.persistence.Column; import javax.persistence.Entity; -import javax.persistence.GeneratedValue; -import javax.persistence.GenerationType; import javax.persistence.Id; import javax.persistence.IdClass; import javax.persistence.PostLoad; @@ -65,7 +63,6 @@ public class HostHistory extends HistoryEntry implements SqlEntity { @Id String hostRepoId; @Id - @GeneratedValue(strategy = GenerationType.SEQUENCE, generator = "TempHistorySequenceGenerator") @Column(name = "historyRevisionId") @Access(AccessType.PROPERTY) @Override diff --git a/core/src/main/resources/META-INF/orm.xml b/core/src/main/resources/META-INF/orm.xml index 0245fc12e..bc3187cdd 100644 --- a/core/src/main/resources/META-INF/orm.xml +++ b/core/src/main/resources/META-INF/orm.xml @@ -11,11 +11,6 @@ - - - - - diff --git a/core/src/test/java/google/registry/model/history/ContactHistoryTest.java b/core/src/test/java/google/registry/model/history/ContactHistoryTest.java index fdb73c29f..62428abe6 100644 --- a/core/src/test/java/google/registry/model/history/ContactHistoryTest.java +++ b/core/src/test/java/google/registry/model/history/ContactHistoryTest.java @@ -48,7 +48,6 @@ public class ContactHistoryTest extends EntityTestCase { VKey contactVKey = contact.createVKey(); ContactResource contactFromDb = jpaTm().transact(() -> jpaTm().load(contactVKey)); ContactHistory contactHistory = createContactHistory(contactFromDb, contact.getRepoId()); - contactHistory.id = null; jpaTm().transact(() -> jpaTm().insert(contactHistory)); jpaTm() .transact( @@ -73,7 +72,6 @@ public class ContactHistoryTest extends EntityTestCase { .asBuilder() .setContactBase(null) .build(); - contactHistory.id = null; jpaTm().transact(() -> jpaTm().insert(contactHistory)); jpaTm() diff --git a/core/src/test/java/google/registry/model/history/HostHistoryTest.java b/core/src/test/java/google/registry/model/history/HostHistoryTest.java index 1fcf83a75..1604ef98d 100644 --- a/core/src/test/java/google/registry/model/history/HostHistoryTest.java +++ b/core/src/test/java/google/registry/model/history/HostHistoryTest.java @@ -49,7 +49,6 @@ public class HostHistoryTest extends EntityTestCase { VKey.create(HostResource.class, "host1", Key.create(HostResource.class, "host1")); HostResource hostFromDb = jpaTm().transact(() -> jpaTm().load(hostVKey)); HostHistory hostHistory = createHostHistory(hostFromDb, host.getRepoId()); - hostHistory.id = null; jpaTm().transact(() -> jpaTm().insert(hostHistory)); jpaTm() .transact( @@ -70,7 +69,6 @@ public class HostHistoryTest extends EntityTestCase { HostResource hostFromDb = jpaTm().transact(() -> jpaTm().load(host.createVKey())); HostHistory hostHistory = createHostHistory(hostFromDb, host.getRepoId()).asBuilder().setHostBase(null).build(); - hostHistory.id = null; jpaTm().transact(() -> jpaTm().insert(hostHistory)); jpaTm() diff --git a/core/src/test/java/google/registry/model/history/LegacyHistoryObjectTest.java b/core/src/test/java/google/registry/model/history/LegacyHistoryObjectTest.java index 75bb6f534..ce454c00b 100644 --- a/core/src/test/java/google/registry/model/history/LegacyHistoryObjectTest.java +++ b/core/src/test/java/google/registry/model/history/LegacyHistoryObjectTest.java @@ -80,7 +80,6 @@ public class LegacyHistoryObjectTest extends EntityTestCase { ContactHistory legacyContactHistory = (ContactHistory) fromObjectify; // Next, save that from-Datastore object in SQL and verify we can load it back in - legacyContactHistory.id = null; jpaTm() .transact( () -> { @@ -160,7 +159,6 @@ public class LegacyHistoryObjectTest extends EntityTestCase { HostHistory legacyHostHistory = (HostHistory) fromObjectify; // Next, save that from-Datastore object in SQL and verify we can load it back in - legacyHostHistory.id = null; jpaTm() .transact( () -> { diff --git a/db/src/main/resources/sql/flyway.txt b/db/src/main/resources/sql/flyway.txt index 2b2aa1098..c87b8ddae 100644 --- a/db/src/main/resources/sql/flyway.txt +++ b/db/src/main/resources/sql/flyway.txt @@ -59,3 +59,4 @@ V58__drop_default_value_and_sequences_for_billing_event.sql V59__use_composite_primary_key_for_contact_and_host_history_table.sql V60__remove_pollmessage_sequence.sql V61__domain_hist_columns.sql +V62__disable_key_auto_generation_for_history_tables.sql diff --git a/db/src/main/resources/sql/flyway/V62__disable_key_auto_generation_for_history_tables.sql b/db/src/main/resources/sql/flyway/V62__disable_key_auto_generation_for_history_tables.sql new file mode 100644 index 000000000..9ee64cf7d --- /dev/null +++ b/db/src/main/resources/sql/flyway/V62__disable_key_auto_generation_for_history_tables.sql @@ -0,0 +1,17 @@ +-- 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. + +drop sequence "history_id_sequence"; + +drop sequence "temp_history_id_sequence"; 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 e629bc448..321f1b3de 100644 --- a/db/src/main/resources/sql/schema/db-schema.sql.generated +++ b/db/src/main/resources/sql/schema/db-schema.sql.generated @@ -11,7 +11,6 @@ -- 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. -create sequence temp_history_id_sequence start 1 increment 50; create table "AllocationToken" ( token text not null, diff --git a/db/src/main/resources/sql/schema/nomulus.golden.sql b/db/src/main/resources/sql/schema/nomulus.golden.sql index aa4ce1bb7..15f19d8dc 100644 --- a/db/src/main/resources/sql/schema/nomulus.golden.sql +++ b/db/src/main/resources/sql/schema/nomulus.golden.sql @@ -931,30 +931,6 @@ CREATE SEQUENCE public."Transaction_id_seq" ALTER SEQUENCE public."Transaction_id_seq" OWNED BY public."Transaction".id; --- --- Name: history_id_sequence; Type: SEQUENCE; Schema: public; Owner: - --- - -CREATE SEQUENCE public.history_id_sequence - START WITH 1 - INCREMENT BY 50 - NO MINVALUE - NO MAXVALUE - CACHE 1; - - --- --- Name: temp_history_id_sequence; Type: SEQUENCE; Schema: public; Owner: - --- - -CREATE SEQUENCE public.temp_history_id_sequence - START WITH 1 - INCREMENT BY 50 - NO MINVALUE - NO MAXVALUE - CACHE 1; - - -- -- Name: ClaimsList revision_id; Type: DEFAULT; Schema: public; Owner: - --