From 5f1ba8bef4d7bcfbffaf94d44cc83303abb9f661 Mon Sep 17 00:00:00 2001 From: gbrodman Date: Thu, 25 Feb 2021 17:22:53 -0500 Subject: [PATCH] Add a third poll message column in TransferData for domain transfers (#974) Because we don't store serverApproveEntities specifically as a set in the SQL world, we need to make sure that the entities are all separated and stored if they exist. For domain transfers, there exist three separate poll messages (client losing, client gaining, autorenew) so we need to store and retrieve that one. Founnd this while converting domain transfer flows to SQL. --- .../registry/model/transfer/TransferData.java | 16 +- .../sql/er_diagram/brief_er_diagram.html | 6 +- .../sql/er_diagram/full_er_diagram.html | 4806 +++++++++-------- db/src/main/resources/sql/flyway.txt | 1 + .../sql/flyway/V86__third_poll_message.sql | 20 + .../sql/schema/db-schema.sql.generated | 4 + .../resources/sql/schema/nomulus.golden.sql | 18 +- 7 files changed, 2497 insertions(+), 2374 deletions(-) create mode 100644 db/src/main/resources/sql/flyway/V86__third_poll_message.sql diff --git a/core/src/main/java/google/registry/model/transfer/TransferData.java b/core/src/main/java/google/registry/model/transfer/TransferData.java index b6b1cbcb8..c42f60948 100644 --- a/core/src/main/java/google/registry/model/transfer/TransferData.java +++ b/core/src/main/java/google/registry/model/transfer/TransferData.java @@ -15,7 +15,6 @@ package google.registry.model.transfer; import static com.google.common.collect.ImmutableList.toImmutableList; -import static google.registry.model.ImmutableObject.DoNotCompare; import static google.registry.util.CollectionUtils.isNullOrEmpty; import static google.registry.util.CollectionUtils.nullToEmpty; import static google.registry.util.CollectionUtils.nullToEmptyImmutableCopy; @@ -95,6 +94,9 @@ public abstract class TransferData< // the transfer request flow, when the instance is loaded from Datastore, we cannot make this // distinction because they are just VKeys. Also, the only way we use serverApproveEntities is to // just delete all the entities referenced by the VKeys, so we don't need to make the distinction. + // + // In addition, there may be a third poll message for the autorenew poll message on domain + // transfer if applicable. @Ignore @Column(name = "transfer_poll_message_id_1") Long pollMessageId1; @@ -103,6 +105,10 @@ public abstract class TransferData< @Column(name = "transfer_poll_message_id_2") Long pollMessageId2; + @Ignore + @Column(name = "transfer_poll_message_id_3") + Long pollMessageId3; + public abstract boolean isEmpty(); @Nullable @@ -177,6 +183,10 @@ public abstract class TransferData< Key ofyKey = Key.create(historyEntryKey, PollMessage.class, pollMessageId2); entityKeysBuilder.add(PollMessage.createVKey(ofyKey)); } + if (pollMessageId3 != null) { + Key ofyKey = Key.create(historyEntryKey, PollMessage.class, pollMessageId3); + entityKeysBuilder.add(PollMessage.createVKey(ofyKey)); + } serverApproveEntities = entityKeysBuilder.build(); } @@ -189,6 +199,7 @@ public abstract class TransferData< transferData.repoId = null; transferData.pollMessageId1 = null; transferData.pollMessageId2 = null; + transferData.pollMessageId3 = null; return; } // Each element in serverApproveEntities should have the exact same Key as its @@ -204,6 +215,9 @@ public abstract class TransferData< if (sortedPollMessageIds.size() >= 2) { transferData.pollMessageId2 = sortedPollMessageIds.get(1); } + if (sortedPollMessageIds.size() >= 3) { + transferData.pollMessageId3 = sortedPollMessageIds.get(2); + } } /** 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 b269f7961..5b814152e 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,11 +261,11 @@ td.section { generated on - 2021-01-21 00:11:27.19594 + 2021-02-25 19:33:39.25711 last flyway file - V85__add_required_columns_in_transfer_data.sql + V86__third_poll_message.sql @@ -284,7 +284,7 @@ td.section { generated on - 2021-01-21 00:11:27.19594 + 2021-02-25 19:33:39.25711 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 bb299a5cf..cb48aaaf3 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,19 +261,19 @@ td.section { generated on - 2021-01-21 00:11:25.41194 + 2021-02-25 19:33:37.35689 last flyway file - V85__add_required_columns_in_transfer_data.sql + V86__third_poll_message.sql

 

 

- + SchemaCrawler_Diagram - + generated by @@ -284,3347 +284,3379 @@ td.section { generated on - 2021-01-21 00:11:25.41194 + 2021-02-25 19:33:37.35689 allocationtoken_a08ccbef - - + + public.AllocationToken - - + + [table] - + token - + - + text not null - + update_timestamp - + - + timestamptz - + allowed_registrar_ids - + - + _text - + allowed_tlds - + - + _text - + creation_time - + - + timestamptz not null - + discount_fraction - + - + float8(17, 17) not null - + discount_premiums - + - + bool not null - + discount_years - + - + int4 not null - + domain_name - + - + text - + redemption_domain_repo_id - + - + text - + token_status_transitions - + - + "hstore" - + token_type - + - + text - + redemption_domain_history_id - + - + int8 - + billingevent_a57d1815 - - + + public.BillingEvent - - + + [table] - + billing_event_id - + - + int8 not null - + registrar_id - + - + text not null - + domain_history_revision_id - + - + int8 not null - + domain_repo_id - + - + text not null - + event_time - + - + timestamptz not null - + flags - + - + _text - + reason - + - + text not null - + domain_name - + - + text not null - + allocation_token - + - + text - + billing_time - + - + timestamptz - + cancellation_matching_billing_recurrence_id - + - + int8 - + cost_amount - + - + numeric(19, 2) - + cost_currency - + - + text - + period_years - + - + int4 - + synthetic_creation_time - + - + timestamptz - + billingevent_a57d1815:w->allocationtoken_a08ccbef:e - - - - - - - - + + + + + + + + fk_billing_event_allocation_token billingrecurrence_5fa2cb01 - - + + public.BillingRecurrence - - + + [table] - + billing_recurrence_id - + - + int8 not null - + registrar_id - + - + text not null - + domain_history_revision_id - + - + int8 not null - + domain_repo_id - + - + text not null - + event_time - + - + timestamptz not null - + flags - + - + _text - + reason - + - + text not null - + domain_name - + - + text not null - + recurrence_end_time - + - + timestamptz - + recurrence_time_of_year - + - + text - + billingevent_a57d1815:w->billingrecurrence_5fa2cb01:e - - - - - - - - + + + + + + + + fk_billing_event_cancellation_matching_billing_recurrence_id domainhistory_a54cc226 - - + + public.DomainHistory - - + + [table] - + history_revision_id - + - + int8 not null - + history_by_superuser - + - + bool not null - + history_registrar_id - + - + text - + history_modification_time - + - + timestamptz not null - + history_reason - + - + text - + history_requested_by_registrar - + - + bool - + history_client_transaction_id - + - + text - + history_server_transaction_id - + - + text - + history_type - + - + text not null - + history_xml_bytes - + - + bytea - + admin_contact - + - + text - + auth_info_repo_id - + - + text - + auth_info_value - + - + text - + billing_recurrence_id - + - + int8 - + autorenew_poll_message_id - + - + int8 - + billing_contact - + - + text - + deletion_poll_message_id - + - + int8 - + domain_name - + - + text - + idn_table_name - + - + text - + last_transfer_time - + - + timestamptz - + launch_notice_accepted_time - + - + timestamptz - + launch_notice_expiration_time - + - + timestamptz - + launch_notice_tcn_id - + - + text - + launch_notice_validator_id - + - + text - + registrant_contact - + - + text - + registration_expiration_time - + - + timestamptz - + smd_id - + - + text - + subordinate_hosts - + - + _text - + tech_contact - + - + text - + tld - + - + text - + transfer_billing_cancellation_id - + - + int8 - + transfer_billing_recurrence_id - + - + int8 - + transfer_autorenew_poll_message_id - + - + int8 - + transfer_billing_event_id - + - + int8 - + transfer_renew_period_unit - + - + text - + transfer_renew_period_value - + - + int4 - + transfer_registration_expiration_time - + - + timestamptz - + transfer_poll_message_id_1 - + - + int8 - + transfer_poll_message_id_2 - + - + int8 - + transfer_client_txn_id - + - + text - + transfer_server_txn_id - + - + text - + transfer_gaining_registrar_id - + - + text - + transfer_losing_registrar_id - + - + text - + transfer_pending_expiration_time - + - + timestamptz - + transfer_request_time - + - + timestamptz - + transfer_status - + - + text - + creation_registrar_id - + - + text - + creation_time - + - + timestamptz - + current_sponsor_registrar_id - + - + text - + deletion_time - + - + timestamptz - + last_epp_update_registrar_id - + - + text - + last_epp_update_time - + - + timestamptz - + statuses - + - + _text - + update_timestamp - + - + timestamptz - + domain_repo_id - + - + text not null - + autorenew_end_time - + - + timestamptz - + history_other_registrar_id - + - + text - + history_period_unit - + - + text - + history_period_value - + - + int4 - + billing_recurrence_history_id - + - + int8 - + autorenew_poll_message_history_id - + - + int8 - + deletion_poll_message_history_id - + - + int8 - + transfer_billing_recurrence_history_id - + - + int8 - + transfer_autorenew_poll_message_history_id - + - + int8 - + transfer_billing_event_history_id - + - + int8 - + transfer_history_entry_id - + - + int8 - + transfer_repo_id - + - + text - + + transfer_poll_message_id_3 + + + + + int8 + + billingevent_a57d1815:w->domainhistory_a54cc226:e - - - - - - - - + + + + + + + + fk_billing_event_domain_history billingevent_a57d1815:w->domainhistory_a54cc226:e - - - - - - - - + + + + + + + + fk_billing_event_domain_history registrar_6e1503e3 - - + + public.Registrar - - + + [table] - + registrar_id - + - + text not null - + allowed_tlds - + - + _text - + billing_account_map - + - + "hstore" - + billing_identifier - + - + int8 - + block_premium_names - + - + bool not null - + client_certificate - + - + text - + client_certificate_hash - + - + text - + contacts_require_syncing - + - + bool not null - + creation_time - + - + timestamptz - + drive_folder_id - + - + text - + email_address - + - + text - + failover_client_certificate - + - + text - + failover_client_certificate_hash - + - + text - + fax_number - + - + text - + iana_identifier - + - + int8 - + icann_referral_email - + - + text - + i18n_address_city - + - + text - + i18n_address_country_code - + - + text - + i18n_address_state - + - + text - + i18n_address_street_line1 - + - + text - + i18n_address_street_line2 - + - + text - + i18n_address_street_line3 - + - + text - + i18n_address_zip - + - + text - + ip_address_allow_list - + - + _text - + last_certificate_update_time - + - + timestamptz - + last_update_time - + - + timestamptz - + localized_address_city - + - + text - + localized_address_country_code - + - + text - + localized_address_state - + - + text - + localized_address_street_line1 - + - + text - + localized_address_street_line2 - + - + text - + localized_address_street_line3 - + - + text - + localized_address_zip - + - + text - + password_hash - + - + text - + phone_number - + - + text - + phone_passcode - + - + text - + po_number - + - + text - + rdap_base_urls - + - + _text - + registrar_name - + - + text not null - + registry_lock_allowed - + - + bool not null - + password_salt - + - + text - + state - + - + text - + type - + - + text not null - + url - + - + text - + whois_server - + - + text - + billingevent_a57d1815:w->registrar_6e1503e3:e - - - - - - - - + + + + + + + + fk_billing_event_registrar_id billingcancellation_6eedf614 - - + + public.BillingCancellation - - + + [table] - + billing_cancellation_id - + - + int8 not null - + registrar_id - + - + text not null - + domain_history_revision_id - + - + int8 not null - + domain_repo_id - + - + text not null - + event_time - + - + timestamptz not null - + flags - + - + _text - + reason - + - + text not null - + domain_name - + - + text not null - + billing_time - + - + timestamptz - + billing_event_id - + - + int8 - + billing_recurrence_id - + - + int8 - + billing_event_history_id - + - + int8 - + billing_event_domain_repo_id - + - + text - + billing_recurrence_history_id - + - + int8 - + billing_recurrence_domain_repo_id - + - + text - + billingcancellation_6eedf614:w->billingevent_a57d1815:e - - - - - - - - + + + + + + + + fk_billing_cancellation_billing_event_id billingcancellation_6eedf614:w->billingrecurrence_5fa2cb01:e - - - - - - - - + + + + + + + + fk_billing_cancellation_billing_recurrence_id billingcancellation_6eedf614:w->domainhistory_a54cc226:e - - - - - - - - + + + + + + + + fk_billing_cancellation_domain_history billingcancellation_6eedf614:w->domainhistory_a54cc226:e - - - - - - - - + + + + + + + + fk_billing_cancellation_domain_history billingcancellation_6eedf614:w->registrar_6e1503e3:e - - - - - - - - + + + + + + + + fk_billing_cancellation_registrar_id domain_6c51cffa - - + + public.Domain - - + + [table] - + repo_id - + - + text not null - + creation_registrar_id - + - + text not null - + creation_time - + - + timestamptz not null - + current_sponsor_registrar_id - + - + text not null - + deletion_time - + - + timestamptz - + last_epp_update_registrar_id - + - + text - + last_epp_update_time - + - + timestamptz - + statuses - + - + _text - + auth_info_repo_id - + - + text - + auth_info_value - + - + text - + domain_name - + - + text - + idn_table_name - + - + text - + last_transfer_time - + - + timestamptz - + launch_notice_accepted_time - + - + timestamptz - + launch_notice_expiration_time - + - + timestamptz - + launch_notice_tcn_id - + - + text - + launch_notice_validator_id - + - + text - + registration_expiration_time - + - + timestamptz - + smd_id - + - + text - + subordinate_hosts - + - + _text - + tld - + - + text - + admin_contact - + - + text - + billing_contact - + - + text - + registrant_contact - + - + text - + tech_contact - + - + text - + transfer_poll_message_id_1 - + - + int8 - + transfer_poll_message_id_2 - + - + int8 - + transfer_billing_cancellation_id - + - + int8 - + transfer_billing_event_id - + - + int8 - + transfer_billing_recurrence_id - + - + int8 - + transfer_autorenew_poll_message_id - + - + int8 - + transfer_renew_period_unit - + - + text - + transfer_renew_period_value - + - + int4 - + transfer_client_txn_id - + - + text - + transfer_server_txn_id - + - + text - + transfer_registration_expiration_time - + - + timestamptz - + transfer_gaining_registrar_id - + - + text - + transfer_losing_registrar_id - + - + text - + transfer_pending_expiration_time - + - + timestamptz - + transfer_request_time - + - + timestamptz - + transfer_status - + - + text - + update_timestamp - + - + timestamptz - + billing_recurrence_id - + - + int8 - + autorenew_poll_message_id - + - + int8 - + deletion_poll_message_id - + - + int8 - + autorenew_end_time - + - + timestamptz - + billing_recurrence_history_id - + - + int8 - + autorenew_poll_message_history_id - + - + int8 - + deletion_poll_message_history_id - + - + int8 - + transfer_billing_recurrence_history_id - + - + int8 - + transfer_autorenew_poll_message_history_id - + - + int8 - + transfer_billing_event_history_id - + - + int8 - + transfer_history_entry_id - + - + int8 - + transfer_repo_id - + - + text - + + transfer_poll_message_id_3 + + + + + int8 + + domain_6c51cffa:w->billingevent_a57d1815:e - - - - - - - - + + + + + + + + fk_domain_transfer_billing_event_id domain_6c51cffa:w->billingcancellation_6eedf614:e - - - - - - - - + + + + + + + + fk_domain_transfer_billing_cancellation_id domain_6c51cffa:w->billingrecurrence_5fa2cb01:e - - - - - - - - + + + + + + + + fk_domain_billing_recurrence_id domain_6c51cffa:w->billingrecurrence_5fa2cb01:e - - - - - - - - + + + + + + + + fk_domain_transfer_billing_recurrence_id contact_8de8cb16 - - + + public.Contact - - + + [table] - + repo_id - + - + text not null - + creation_registrar_id - + - + text not null - + creation_time - + - + timestamptz not null - + current_sponsor_registrar_id - + - + text not null - + deletion_time - + - + timestamptz - + last_epp_update_registrar_id - + - + text - + last_epp_update_time - + - + timestamptz - + statuses - + - + _text - + auth_info_repo_id - + - + text - + auth_info_value - + - + text - + contact_id - + - + text - + disclose_types_addr - + - + _text - + disclose_show_email - + - + bool - + disclose_show_fax - + - + bool - + disclose_mode_flag - + - + bool - + disclose_types_name - + - + _text - + disclose_types_org - + - + _text - + disclose_show_voice - + - + bool - + email - + - + text - + fax_phone_extension - + - + text - + fax_phone_number - + - + text - + addr_i18n_city - + - + text - + addr_i18n_country_code - + - + text - + addr_i18n_state - + - + text - + addr_i18n_street_line1 - + - + text - + addr_i18n_street_line2 - + - + text - + addr_i18n_street_line3 - + - + text - + addr_i18n_zip - + - + text - + addr_i18n_name - + - + text - + addr_i18n_org - + - + text - + addr_i18n_type - + - + text - + last_transfer_time - + - + timestamptz - + addr_local_city - + - + text - + addr_local_country_code - + - + text - + addr_local_state - + - + text - + addr_local_street_line1 - + - + text - + addr_local_street_line2 - + - + text - + addr_local_street_line3 - + - + text - + addr_local_zip - + - + text - + addr_local_name - + - + text - + addr_local_org - + - + text - + addr_local_type - + - + text - + search_name - + - + text - + voice_phone_extension - + - + text - + voice_phone_number - + - + text - + transfer_poll_message_id_1 - + - + int8 - + transfer_poll_message_id_2 - + - + int8 - + transfer_client_txn_id - + - + text - + transfer_server_txn_id - + - + text - + transfer_gaining_registrar_id - + - + text - + transfer_losing_registrar_id - + - + text - + transfer_pending_expiration_time - + - + timestamptz - + transfer_request_time - + - + timestamptz - + transfer_status - + - + text - + update_timestamp - + - + timestamptz - + transfer_history_entry_id - + - + int8 - + transfer_repo_id - + - + text - + + transfer_poll_message_id_3 + + + + + int8 + + domain_6c51cffa:w->contact_8de8cb16:e - - - - - - - - + + + + + + + + fk_domain_admin_contact domain_6c51cffa:w->contact_8de8cb16:e - - - - - - - - + + + + + + + + fk_domain_billing_contact domain_6c51cffa:w->contact_8de8cb16:e - - - - - - - - + + + + + + + + fk_domain_registrant_contact domain_6c51cffa:w->contact_8de8cb16:e - - - - - - - - + + + + + + + + fk_domain_tech_contact domain_6c51cffa:w->registrar_6e1503e3:e - - - - - - - - + + + + + + + + fk2jc69qyg2tv9hhnmif6oa1cx1 domain_6c51cffa:w->registrar_6e1503e3:e - - - - - - - - + + + + + + + + fk2u3srsfbei272093m3b3xwj23 domain_6c51cffa:w->registrar_6e1503e3:e - - - - - - - - + + + + + + + + fkjc0r9r5y1lfbt4gpbqw4wsuvq domain_6c51cffa:w->registrar_6e1503e3:e - - - - - - - - + + + + + + + + fk_domain_transfer_gaining_registrar_id domain_6c51cffa:w->registrar_6e1503e3:e - - - - - - - + + + + + + + fk_domain_transfer_losing_registrar_id tld_f1fa57e2 - - + + public.Tld - - + + [table] - + tld_name - + - + text not null - + add_grace_period_length - + - + interval not null - + allowed_fully_qualified_host_names - + - + _text - + allowed_registrant_contact_ids - + - + _text - + anchor_tenant_add_grace_period_length - + - + interval not null - + auto_renew_grace_period_length - + - + interval not null - + automatic_transfer_length - + - + interval not null - + claims_period_end - + - + timestamptz not null - + create_billing_cost_amount - + - + numeric(19, 2) - + create_billing_cost_currency - + - + text - + creation_time - + - + timestamptz not null - + currency - + - + text not null - + dns_paused - + - + bool not null - + dns_writers - + - + _text not null - + drive_folder_id - + - + text - + eap_fee_schedule - + - + "hstore" not null - + escrow_enabled - + - + bool not null - + invoicing_enabled - + - + bool not null - + lordn_username - + - + text - + num_dns_publish_locks - + - + int4 not null - + pending_delete_length - + - + interval not null - + premium_list_name - + - + text - + pricing_engine_class_name - + - + text - + redemption_grace_period_length - + - + interval not null - + registry_lock_or_unlock_cost_amount - + - + numeric(19, 2) - + registry_lock_or_unlock_cost_currency - + - + text - + renew_billing_cost_transitions - + - + "hstore" not null - + renew_grace_period_length - + - + interval not null - + reserved_list_names - + - + _text - + restore_billing_cost_amount - + - + numeric(19, 2) - + restore_billing_cost_currency - + - + text - + roid_suffix - + - + text - + server_status_change_billing_cost_amount - + - + numeric(19, 2) - + server_status_change_billing_cost_currency - + - + text - + tld_state_transitions - + - + "hstore" not null - + tld_type - + - + text not null - + tld_unicode - + - + text not null - + transfer_grace_period_length - + - + interval not null - + domain_6c51cffa:w->tld_f1fa57e2:e - - - - - - - - + + + + + + + + fk_domain_tld graceperiod_cd3b2e8f - - + + public.GracePeriod - - + + [table] - + grace_period_id - + - + int8 not null - + billing_event_id - + - + int8 - + billing_recurrence_id - + - + int8 - + registrar_id - + - + text not null - + domain_repo_id - + - + text not null - + expiration_time - + - + timestamptz not null - + type - + - + text not null - + billing_event_history_id - + - + int8 - + billing_recurrence_history_id - + - + int8 - + billing_event_domain_repo_id - + - + text - + billing_recurrence_domain_repo_id - + - + text - + graceperiod_cd3b2e8f:w->billingevent_a57d1815:e - - - - - - - - + + + + + + + + fk_grace_period_billing_event_id graceperiod_cd3b2e8f:w->domain_6c51cffa:e - - - - - - - - + + + + + + + + fk_grace_period_domain_repo_id graceperiod_cd3b2e8f:w->billingrecurrence_5fa2cb01:e - - - - - - - - + + + + + + + + fk_grace_period_billing_recurrence_id graceperiod_cd3b2e8f:w->registrar_6e1503e3:e - - - - - - - - + + + + + + + + fk_grace_period_registrar_id billingrecurrence_5fa2cb01:w->domainhistory_a54cc226:e - - - - - - - - + + + + + + + + fk_billing_recurrence_domain_history billingrecurrence_5fa2cb01:w->domainhistory_a54cc226:e - - - - - - - - + + + + + + + + fk_billing_recurrence_domain_history billingrecurrence_5fa2cb01:w->registrar_6e1503e3:e - - - - - - - - + + + + + + + + fk_billing_recurrence_registrar_id claimsentry_105da9f1 - - + + public.ClaimsEntry - - + + [table] - + revision_id - + - + int8 not null - + claim_key - + - + text not null - + domain_label - + - + text not null - + claimslist_3d49bc2b - - + + public.ClaimsList - - + + [table] - + revision_id - + - + bigserial not null - + - + auto-incremented - + creation_timestamp - + - + timestamptz not null - + tmdb_generation_time - + - + timestamptz not null - + claimsentry_105da9f1:w->claimslist_3d49bc2b:e - - - - - - - - + + + + + + + + fk6sc6at5hedffc0nhdcab6ivuq contact_8de8cb16:w->registrar_6e1503e3:e - - - - - - - - + + + + + + + + fk1sfyj7o7954prbn1exk7lpnoe contact_8de8cb16:w->registrar_6e1503e3:e - - - - - - - - + + + + + + + + fk93c185fx7chn68uv7nl6uv2s0 contact_8de8cb16:w->registrar_6e1503e3:e - - - - - - - - + + + + + + + + fkmb7tdiv85863134w1wogtxrb2 contact_8de8cb16:w->registrar_6e1503e3:e - - - - - - - - + + + + + + + + fk_contact_transfer_gaining_registrar_id contact_8de8cb16:w->registrar_6e1503e3:e - - - - - - - - + + + + + + + + fk_contact_transfer_losing_registrar_id contacthistory_d2964f8a - - + + public.ContactHistory - - + + [table] - + history_revision_id + + + + int8 not null + + + history_by_superuser + - int8 not null + bool not null - history_by_superuser + history_registrar_id - bool not null + text - history_registrar_id + history_modification_time - text + timestamptz not null - history_modification_time + history_reason - timestamptz not null + text - history_reason + history_requested_by_registrar - text + bool - history_requested_by_registrar + history_client_transaction_id - bool + text - history_client_transaction_id + history_server_transaction_id @@ -3632,31 +3664,31 @@ td.section { text - history_server_transaction_id + history_type - text + text not null - history_type + history_xml_bytes - text not null + bytea - history_xml_bytes + auth_info_repo_id - bytea + text - auth_info_repo_id + auth_info_value @@ -3664,7 +3696,7 @@ td.section { text - auth_info_value + contact_id @@ -3672,23 +3704,23 @@ td.section { text - contact_id + disclose_types_addr - text + _text - disclose_types_addr + disclose_show_email - _text + bool - disclose_show_email + disclose_show_fax @@ -3696,7 +3728,7 @@ td.section { bool - disclose_show_fax + disclose_mode_flag @@ -3704,15 +3736,15 @@ td.section { bool - disclose_mode_flag + disclose_types_name - bool + _text - disclose_types_name + disclose_types_org @@ -3720,23 +3752,23 @@ td.section { _text - disclose_types_org + disclose_show_voice - _text + bool - disclose_show_voice + email - bool + text - email + fax_phone_extension @@ -3744,7 +3776,7 @@ td.section { text - fax_phone_extension + fax_phone_number @@ -3752,7 +3784,7 @@ td.section { text - fax_phone_number + addr_i18n_city @@ -3760,7 +3792,7 @@ td.section { text - addr_i18n_city + addr_i18n_country_code @@ -3768,7 +3800,7 @@ td.section { text - addr_i18n_country_code + addr_i18n_state @@ -3776,7 +3808,7 @@ td.section { text - addr_i18n_state + addr_i18n_street_line1 @@ -3784,7 +3816,7 @@ td.section { text - addr_i18n_street_line1 + addr_i18n_street_line2 @@ -3792,7 +3824,7 @@ td.section { text - addr_i18n_street_line2 + addr_i18n_street_line3 @@ -3800,7 +3832,7 @@ td.section { text - addr_i18n_street_line3 + addr_i18n_zip @@ -3808,7 +3840,7 @@ td.section { text - addr_i18n_zip + addr_i18n_name @@ -3816,7 +3848,7 @@ td.section { text - addr_i18n_name + addr_i18n_org @@ -3824,7 +3856,7 @@ td.section { text - addr_i18n_org + addr_i18n_type @@ -3832,23 +3864,23 @@ td.section { text - addr_i18n_type + last_transfer_time - text + timestamptz - last_transfer_time + addr_local_city - timestamptz + text - addr_local_city + addr_local_country_code @@ -3856,7 +3888,7 @@ td.section { text - addr_local_country_code + addr_local_state @@ -3864,7 +3896,7 @@ td.section { text - addr_local_state + addr_local_street_line1 @@ -3872,7 +3904,7 @@ td.section { text - addr_local_street_line1 + addr_local_street_line2 @@ -3880,7 +3912,7 @@ td.section { text - addr_local_street_line2 + addr_local_street_line3 @@ -3888,7 +3920,7 @@ td.section { text - addr_local_street_line3 + addr_local_zip @@ -3896,7 +3928,7 @@ td.section { text - addr_local_zip + addr_local_name @@ -3904,7 +3936,7 @@ td.section { text - addr_local_name + addr_local_org @@ -3912,7 +3944,7 @@ td.section { text - addr_local_org + addr_local_type @@ -3920,7 +3952,7 @@ td.section { text - addr_local_type + search_name @@ -3928,15 +3960,15 @@ td.section { text - search_name + transfer_poll_message_id_1 - text + int8 - transfer_poll_message_id_1 + transfer_poll_message_id_2 @@ -3944,15 +3976,15 @@ td.section { int8 - transfer_poll_message_id_2 + transfer_client_txn_id - int8 + text - transfer_client_txn_id + transfer_server_txn_id @@ -3960,7 +3992,7 @@ td.section { text - transfer_server_txn_id + transfer_gaining_registrar_id @@ -3968,7 +4000,7 @@ td.section { text - transfer_gaining_registrar_id + transfer_losing_registrar_id @@ -3976,15 +4008,15 @@ td.section { text - transfer_losing_registrar_id + transfer_pending_expiration_time - text + timestamptz - transfer_pending_expiration_time + transfer_request_time @@ -3992,15 +4024,15 @@ td.section { timestamptz - transfer_request_time + transfer_status - timestamptz + text - transfer_status + voice_phone_extension @@ -4008,7 +4040,7 @@ td.section { text - voice_phone_extension + voice_phone_number @@ -4016,7 +4048,7 @@ td.section { text - voice_phone_number + creation_registrar_id @@ -4024,213 +4056,221 @@ td.section { text - creation_registrar_id + creation_time - text + timestamptz - creation_time + current_sponsor_registrar_id - timestamptz + text - current_sponsor_registrar_id + deletion_time - text + timestamptz - deletion_time + last_epp_update_registrar_id - timestamptz + text - last_epp_update_registrar_id + last_epp_update_time - text + timestamptz - last_epp_update_time + statuses - timestamptz + _text - - statuses + + contact_repo_id - _text + text not null - - contact_repo_id + + update_timestamp - text not null + timestamptz - update_timestamp + transfer_history_entry_id - timestamptz + int8 - transfer_history_entry_id + transfer_repo_id - int8 + text - transfer_repo_id + transfer_poll_message_id_3 - text + int8 - + contacthistory_d2964f8a:w->contact_8de8cb16:e - - - - - - - - + + + + + + + + fk_contact_history_contact_repo_id contacthistory_d2964f8a:w->registrar_6e1503e3:e - - - - - - - - + + + + + + + + fk_contact_history_registrar_id pollmessage_614a523e - - + + public.PollMessage - - + + [table] - + type + + + + text not null + + + poll_message_id + - text not null + int8 not null - - poll_message_id + + registrar_id - int8 not null + text not null - registrar_id + contact_repo_id - text not null + text - contact_repo_id + contact_history_revision_id - text + int8 - contact_history_revision_id + domain_repo_id - int8 + text - domain_repo_id + domain_history_revision_id - text + int8 - domain_history_revision_id + event_time - int8 + timestamptz not null - event_time + host_repo_id - timestamptz not null + text - host_repo_id + host_history_revision_id - text + int8 - host_history_revision_id + message - int8 + text - message + transfer_response_contact_id @@ -4238,55 +4278,55 @@ td.section { text - transfer_response_contact_id + transfer_response_domain_expiration_time - text + timestamptz - transfer_response_domain_expiration_time + transfer_response_domain_name - timestamptz + text - transfer_response_domain_name + pending_action_response_action_result - text + bool - pending_action_response_action_result + pending_action_response_name_or_id - bool + text - pending_action_response_name_or_id + pending_action_response_processed_date - text + timestamptz - pending_action_response_processed_date + pending_action_response_client_txn_id - timestamptz + text - pending_action_response_client_txn_id + pending_action_response_server_txn_id @@ -4294,7 +4334,7 @@ td.section { text - pending_action_response_server_txn_id + transfer_response_gaining_registrar_id @@ -4302,7 +4342,7 @@ td.section { text - transfer_response_gaining_registrar_id + transfer_response_losing_registrar_id @@ -4310,15 +4350,15 @@ td.section { text - transfer_response_losing_registrar_id + transfer_response_pending_transfer_expiration_time - text + timestamptz - transfer_response_pending_transfer_expiration_time + transfer_response_transfer_request_time @@ -4326,314 +4366,322 @@ td.section { timestamptz - transfer_response_transfer_request_time + transfer_response_transfer_status - timestamptz + text - transfer_response_transfer_status + autorenew_end_time - text + timestamptz - autorenew_end_time + autorenew_domain_name - timestamptz - - - autorenew_domain_name - - - - text - + pollmessage_614a523e:w->domain_6c51cffa:e - - - - - - - - + + + + + + + + fk_poll_message_domain_repo_id pollmessage_614a523e:w->contact_8de8cb16:e - - - - - - - - + + + + + + + + fk_poll_message_contact_repo_id pollmessage_614a523e:w->contacthistory_d2964f8a:e - - - - - - - - + + + + + + + + fk_poll_message_contact_history pollmessage_614a523e:w->contacthistory_d2964f8a:e - - - - - - - - + + + + + + + + fk_poll_message_contact_history pollmessage_614a523e:w->domainhistory_a54cc226:e - - - - - - - - + + + + + + + + fk_poll_message_domain_history pollmessage_614a523e:w->domainhistory_a54cc226:e - - - - - - - - + + + + + + + + fk_poll_message_domain_history host_f21b78de - - + + public.Host - - + + [table] - + repo_id - + - + text not null - + creation_registrar_id - + - + text - + creation_time - + - + timestamptz - + current_sponsor_registrar_id - + - + text - + deletion_time - + - + timestamptz - + last_epp_update_registrar_id - + - + text - + last_epp_update_time - + - + timestamptz - + statuses - + - + _text - + host_name - + - + text - + last_superordinate_change - + - + timestamptz - + last_transfer_time - + - + timestamptz - + superordinate_domain - + - + text - + inet_addresses - + - + _text - + update_timestamp - + - + timestamptz - + + transfer_poll_message_id_3 + + + + + int8 + + pollmessage_614a523e:w->host_f21b78de:e - - - - - - - - + + + + + + + + fk_poll_message_host_repo_id hosthistory_56210c2 - - + + public.HostHistory - - + + [table] - + history_revision_id + + + + int8 not null + + + history_by_superuser + - int8 not null + bool not null - history_by_superuser + history_registrar_id - bool not null + text not null - history_registrar_id + history_modification_time - text not null + timestamptz not null - history_modification_time + history_reason - timestamptz not null + text - history_reason + history_requested_by_registrar - text + bool - history_requested_by_registrar + history_client_transaction_id - bool + text - history_client_transaction_id + history_server_transaction_id @@ -4641,47 +4689,47 @@ td.section { text - history_server_transaction_id + history_type - text + text not null - history_type + history_xml_bytes - text not null + bytea - history_xml_bytes + host_name - bytea + text - host_name + inet_addresses - text + _text - inet_addresses + last_superordinate_change - _text + timestamptz - last_superordinate_change + last_transfer_time @@ -4689,15 +4737,15 @@ td.section { timestamptz - last_transfer_time + superordinate_domain - timestamptz + text - superordinate_domain + creation_registrar_id @@ -4705,1082 +4753,1082 @@ td.section { text - creation_registrar_id + creation_time - text + timestamptz - creation_time + current_sponsor_registrar_id - timestamptz + text - current_sponsor_registrar_id + deletion_time - text + timestamptz - deletion_time + last_epp_update_registrar_id - timestamptz + text - last_epp_update_registrar_id + last_epp_update_time - text + timestamptz - last_epp_update_time + statuses - timestamptz + _text - - statuses + + host_repo_id - _text + text not null - - host_repo_id + + update_timestamp - text not null + timestamptz - update_timestamp + transfer_poll_message_id_3 - timestamptz + int8 - + pollmessage_614a523e:w->hosthistory_56210c2:e - - - - - - - - + + + + + + + + fk_poll_message_host_history pollmessage_614a523e:w->hosthistory_56210c2:e - - - - - - - - + + + + + + + + fk_poll_message_host_history pollmessage_614a523e:w->registrar_6e1503e3:e - - - - - - - - + + + + + + + + fk_poll_message_registrar_id pollmessage_614a523e:w->registrar_6e1503e3:e - - - - - - - + + + + + + + fk_poll_message_transfer_response_gaining_registrar_id pollmessage_614a523e:w->registrar_6e1503e3:e - - - - - - - + + + + + + + fk_poll_message_transfer_response_losing_registrar_id cursor_6af40e8c - - + + public."Cursor" - - + + [table] - + "scope" - + - + text not null - + type - + - + text not null - + cursor_time - + - + timestamptz not null - + last_update_time - + - + timestamptz not null - + delegationsignerdata_e542a872 - - + + public.DelegationSignerData - - + + [table] - + domain_repo_id - + - + text not null - + key_tag - + - + int4 not null - + algorithm - + - + int4 not null - + digest - + - + bytea not null - + digest_type - + - + int4 not null - + delegationsignerdata_e542a872:w->domain_6c51cffa:e - - - - - - - - + + + + + + + + fktr24j9v14ph2mfuw2gsmt12kq domainhistory_a54cc226:w->domain_6c51cffa:e - - - - - - - - + + + + + + + + fk_domain_history_domain_repo_id domainhistory_a54cc226:w->registrar_6e1503e3:e - - - - - - - - + + + + + + + + fk_domain_history_registrar_id domainhost_1ea127c2 - - + + public.DomainHost - - + + [table] - + domain_repo_id - + - + text not null - + host_repo_id - + - + text - + domainhost_1ea127c2:w->domain_6c51cffa:e - - - - - - - - + + + + + + + + fkfmi7bdink53swivs390m2btxg domainhost_1ea127c2:w->host_f21b78de:e - - - - - - - - + + + + + + + + fk_domainhost_host_valid host_f21b78de:w->domain_6c51cffa:e - - - - - - - - + + + + + + + + fk_host_superordinate_domain host_f21b78de:w->registrar_6e1503e3:e - - - - - - - - + + + + + + + + fk_host_creation_registrar_id host_f21b78de:w->registrar_6e1503e3:e - - - - - - - - + + + + + + + + fk_host_current_sponsor_registrar_id host_f21b78de:w->registrar_6e1503e3:e - - - - - - - - + + + + + + + + fk_host_last_epp_update_registrar_id domaindsdatahistory_995b060d - - + + public.DomainDsDataHistory - - + + [table] - + ds_data_history_revision_id - + - + int8 not null - + algorithm - + - + int4 not null - + digest - + - + bytea not null - + digest_type - + - + int4 not null - + domain_history_revision_id - + - + int8 not null - + key_tag - + - + int4 not null - + domain_repo_id - + - + text - + domaindsdatahistory_995b060d:w->domainhistory_a54cc226:e - - - - - - - - + + + + + + + + fko4ilgyyfnvppbpuivus565i0j domaindsdatahistory_995b060d:w->domainhistory_a54cc226:e - - - - - - - - + + + + + + + + fko4ilgyyfnvppbpuivus565i0j domainhistoryhost_9f3f23ee - - + + public.DomainHistoryHost - - + + [table] - + domain_history_history_revision_id - + - + int8 not null - + host_repo_id - + - + text - + domain_history_domain_repo_id - + - + text not null - + domainhistoryhost_9f3f23ee:w->domainhistory_a54cc226:e - - - - - - - - + + + + + + + + fka9woh3hu8gx5x0vly6bai327n domainhistoryhost_9f3f23ee:w->domainhistory_a54cc226:e - - - - - - - - + + + + + + + + fka9woh3hu8gx5x0vly6bai327n domaintransactionrecord_6e77ff61 - - + + public.DomainTransactionRecord - - + + [table] - + id - + - + bigserial not null - + - + auto-incremented - + report_amount - + - + int4 not null - + report_field - + - + text not null - + reporting_time - + - + timestamptz not null - + tld - + - + text not null - + domain_repo_id - + - + text - + history_revision_id - + - + int8 - + domaintransactionrecord_6e77ff61:w->domainhistory_a54cc226:e - - - - - - - - + + + + + + + + fkcjqe54u72kha71vkibvxhjye7 domaintransactionrecord_6e77ff61:w->domainhistory_a54cc226:e - - - - - - - - + + + + + + + + fkcjqe54u72kha71vkibvxhjye7 domaintransactionrecord_6e77ff61:w->tld_f1fa57e2:e - - - - - - - - + + + + + + + + fk_domain_transaction_record_tld graceperiodhistory_40ccc1f1 - - + + public.GracePeriodHistory - - + + [table] - + grace_period_history_revision_id - + - + int8 not null - + billing_event_id - + - + int8 - + billing_event_history_id - + - + int8 - + billing_recurrence_id - + - + int8 - + billing_recurrence_history_id - + - + int8 - + registrar_id - + - + text not null - + domain_repo_id - + - + text not null - + expiration_time - + - + timestamptz not null - + type - + - + text not null - + domain_history_revision_id - + - + int8 - + grace_period_id - + - + int8 not null - + billing_event_domain_repo_id - + - + text - + billing_recurrence_domain_repo_id - + - + text - + graceperiodhistory_40ccc1f1:w->domainhistory_a54cc226:e - - - - - - - - + + + + + + + + fk7w3cx8d55q8bln80e716tr7b8 graceperiodhistory_40ccc1f1:w->domainhistory_a54cc226:e - - - - - - - - + + + + + + + + fk7w3cx8d55q8bln80e716tr7b8 hosthistory_56210c2:w->host_f21b78de:e - - - - - - - + + + + + + + fk_hosthistory_host hosthistory_56210c2:w->registrar_6e1503e3:e - - - - - - - + + + + + + + fk3d09knnmxrt6iniwnp8j2ykga kmssecret_f3b28857 - - + + public.KmsSecret - - + + [table] - + revision_id - + - + int8 not null - + creation_time - + - + timestamptz not null - + encrypted_value - + - + text not null - + crypto_key_version_name - + - + text not null - + secret_name - + - + text not null - + lock_f21d4861 - - + + public.Lock - - + + [table] - + resource_name - + - + text not null - + tld - + - + text not null - + acquired_time - + - + timestamptz not null - + expiration_time - + - + timestamptz not null - + request_log_id - + - + text not null - + premiumentry_b0060b91 - - + + public.PremiumEntry - - + + [table] - + revision_id - + - + int8 not null - + price - + - + numeric(19, 2) not null - + domain_label - + - + text not null - + premiumlist_7c3ea68b - - + + public.PremiumList - - + + [table] - + revision_id - + - + bigserial not null - + - + auto-incremented - + creation_timestamp - + - + timestamptz - + name - + - + text not null - + bloom_filter - + - + bytea not null - + currency - + - + text not null - + premiumentry_b0060b91:w->premiumlist_7c3ea68b:e - - - - - - - - + + + + + + + + fko0gw90lpo1tuee56l0nb6y6g5 rderevision_83396864 - - + + public.RdeRevision - - + + [table] - + tld - + - + text not null - + mode - + - + text not null - + "date" - + - + date not null - + update_timestamp - + - + timestamptz - + revision - + - + int4 not null - + registrarpoc_ab47054d @@ -5908,536 +5956,536 @@ td.section { registrarpoc_ab47054d:w->registrar_6e1503e3:e - + - - - - + + + + fk_registrar_poc_registrar_id registrylock_ac88663e - - + + public.RegistryLock - - + + [table] - + revision_id - + - + bigserial not null - + - + auto-incremented - + lock_completion_timestamp - + - + timestamptz - + lock_request_timestamp - + - + timestamptz not null - + domain_name - + - + text not null - + is_superuser - + - + bool not null - + registrar_id - + - + text not null - + registrar_poc_id - + - + text - + repo_id - + - + text not null - + verification_code - + - + text not null - + unlock_request_timestamp - + - + timestamptz - + unlock_completion_timestamp - + - + timestamptz - + last_update_timestamp - + - + timestamptz - + relock_revision_id - + - + int8 - + relock_duration - + - + interval - + registrylock_ac88663e:w->registrylock_ac88663e:e - - - - - - - - + + + + + + + + fk2lhcwpxlnqijr96irylrh1707 reservedentry_1a7b8520 - - + + public.ReservedEntry - - + + [table] - + revision_id - + - + int8 not null - + comment - + - + text - + reservation_type - + - + int4 not null - + domain_label - + - + text not null - + reservedlist_b97c3f1c - - + + public.ReservedList - - + + [table] - + revision_id - + - + bigserial not null - + - + auto-incremented - + creation_timestamp - + - + timestamptz not null - + name - + - + text not null - + should_publish - + - + bool not null - + reservedentry_1a7b8520:w->reservedlist_b97c3f1c:e - - - - - - - - + + + + + + + + fkgq03rk0bt1hb915dnyvd3vnfc serversecret_6cc90f09 - - + + public.ServerSecret - - + + [table] - + secret - + - + uuid not null - + signedmarkrevocationentry_99c39721 - - + + public.SignedMarkRevocationEntry - - + + [table] - + revision_id - + - + int8 not null - + revocation_time - + - + timestamptz not null - + smd_id - + - + text not null - + signedmarkrevocationlist_c5d968fb - - + + public.SignedMarkRevocationList - - + + [table] - + revision_id - + - + bigserial not null - + - + auto-incremented - + creation_time - + - + timestamptz - + signedmarkrevocationentry_99c39721:w->signedmarkrevocationlist_c5d968fb:e - - - - - - - - + + + + + + + + fk5ivlhvs3121yx2li5tqh54u4 spec11threatmatch_a61228a6 - - + + public.Spec11ThreatMatch - - + + [table] - + id - + - + bigserial not null - + - + auto-incremented - + check_date - + - + date not null - + domain_name - + - + text not null - + domain_repo_id - + - + text not null - + registrar_id - + - + text not null - + threat_types - + - + _text not null - + tld - + - + text not null - + sqlreplaycheckpoint_342081b3 - - + + public.SqlReplayCheckpoint - - + + [table] - + revision_id - + - + int8 not null - + last_replay_time - + - + timestamptz not null - + tmchcrl_d282355 - - + + public.TmchCrl - - + + [table] - + certificate_revocations - + - + text not null - + update_timestamp - + - + timestamptz not null - + url - + - + text not null - + transaction_d50389d4 - - + + public.Transaction - - + + [table] - + id - + - + bigserial not null - + - + auto-incremented - + contents - + - + bytea - + @@ -7770,6 +7818,11 @@ td.section { transfer_repo_id text +
+ + transfer_poll_message_id_3 + int8 +
@@ -8346,6 +8399,11 @@ td.section { transfer_repo_id text +
+ + transfer_poll_message_id_3 + int8 +
@@ -8975,6 +9033,11 @@ td.section { transfer_repo_id text +
+ + transfer_poll_message_id_3 + int8 +
@@ -9772,6 +9835,11 @@ td.section { transfer_repo_id text +
+ + transfer_poll_message_id_3 + int8 +
@@ -10677,6 +10745,11 @@ td.section { update_timestamp timestamptz +
+ + transfer_poll_message_id_3 + int8 +
@@ -10930,6 +11003,11 @@ td.section { update_timestamp timestamptz +
+ + transfer_poll_message_id_3 + int8 +
diff --git a/db/src/main/resources/sql/flyway.txt b/db/src/main/resources/sql/flyway.txt index 6927056be..c5e90092b 100644 --- a/db/src/main/resources/sql/flyway.txt +++ b/db/src/main/resources/sql/flyway.txt @@ -83,3 +83,4 @@ V82__add_columns_to_restore_symmetric_billing_vkey.sql V83__add_indexes_on_domainhost.sql V84__add_vkey_columns_in_billing_cancellation.sql V85__add_required_columns_in_transfer_data.sql +V86__third_poll_message.sql diff --git a/db/src/main/resources/sql/flyway/V86__third_poll_message.sql b/db/src/main/resources/sql/flyway/V86__third_poll_message.sql new file mode 100644 index 000000000..5cdc61bc6 --- /dev/null +++ b/db/src/main/resources/sql/flyway/V86__third_poll_message.sql @@ -0,0 +1,20 @@ +-- 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. + +ALTER TABLE "Contact" ADD COLUMN IF NOT EXISTS "transfer_poll_message_id_3" bigint; +ALTER TABLE "ContactHistory" ADD COLUMN IF NOT EXISTS "transfer_poll_message_id_3" bigint; +ALTER TABLE "Domain" ADD COLUMN IF NOT EXISTS "transfer_poll_message_id_3" bigint; +ALTER TABLE "DomainHistory" ADD COLUMN IF NOT EXISTS "transfer_poll_message_id_3" bigint; +ALTER TABLE "Host" ADD COLUMN IF NOT EXISTS "transfer_poll_message_id_3" bigint; +ALTER TABLE "HostHistory" ADD COLUMN IF NOT EXISTS "transfer_poll_message_id_3" bigint; 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 0adc93e9d..74f284d5f 100644 --- a/db/src/main/resources/sql/schema/db-schema.sql.generated +++ b/db/src/main/resources/sql/schema/db-schema.sql.generated @@ -143,6 +143,7 @@ transfer_history_entry_id int8, transfer_poll_message_id_1 int8, transfer_poll_message_id_2 int8, + transfer_poll_message_id_3 int8, transfer_repo_id text, transfer_client_txn_id text, transfer_server_txn_id text, @@ -206,6 +207,7 @@ transfer_history_entry_id int8, transfer_poll_message_id_1 int8, transfer_poll_message_id_2 int8, + transfer_poll_message_id_3 int8, transfer_repo_id text, transfer_client_txn_id text, transfer_server_txn_id text, @@ -291,6 +293,7 @@ transfer_history_entry_id int8, transfer_poll_message_id_1 int8, transfer_poll_message_id_2 int8, + transfer_poll_message_id_3 int8, transfer_repo_id text, transfer_client_txn_id text, transfer_server_txn_id text, @@ -362,6 +365,7 @@ transfer_history_entry_id int8, transfer_poll_message_id_1 int8, transfer_poll_message_id_2 int8, + transfer_poll_message_id_3 int8, transfer_repo_id text, transfer_client_txn_id text, transfer_server_txn_id text, diff --git a/db/src/main/resources/sql/schema/nomulus.golden.sql b/db/src/main/resources/sql/schema/nomulus.golden.sql index 119a8db20..4cee96a79 100644 --- a/db/src/main/resources/sql/schema/nomulus.golden.sql +++ b/db/src/main/resources/sql/schema/nomulus.golden.sql @@ -221,7 +221,8 @@ CREATE TABLE public."Contact" ( transfer_status text, update_timestamp timestamp with time zone, transfer_history_entry_id bigint, - transfer_repo_id text + transfer_repo_id text, + transfer_poll_message_id_3 bigint ); @@ -296,7 +297,8 @@ CREATE TABLE public."ContactHistory" ( contact_repo_id text NOT NULL, update_timestamp timestamp with time zone, transfer_history_entry_id bigint, - transfer_repo_id text + transfer_repo_id text, + transfer_poll_message_id_3 bigint ); @@ -383,7 +385,8 @@ CREATE TABLE public."Domain" ( transfer_autorenew_poll_message_history_id bigint, transfer_billing_event_history_id bigint, transfer_history_entry_id bigint, - transfer_repo_id text + transfer_repo_id text, + transfer_poll_message_id_3 bigint ); @@ -473,7 +476,8 @@ CREATE TABLE public."DomainHistory" ( transfer_autorenew_poll_message_history_id bigint, transfer_billing_event_history_id bigint, transfer_history_entry_id bigint, - transfer_repo_id text + transfer_repo_id text, + transfer_poll_message_id_3 bigint ); @@ -590,7 +594,8 @@ CREATE TABLE public."Host" ( last_transfer_time timestamp with time zone, superordinate_domain text, inet_addresses text[], - update_timestamp timestamp with time zone + update_timestamp timestamp with time zone, + transfer_poll_message_id_3 bigint ); @@ -622,7 +627,8 @@ CREATE TABLE public."HostHistory" ( last_epp_update_time timestamp with time zone, statuses text[], host_repo_id text NOT NULL, - update_timestamp timestamp with time zone + update_timestamp timestamp with time zone, + transfer_poll_message_id_3 bigint );