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 8a0bbf07f..564445eae 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 - 2023-06-06 17:51:42.337598 + 2023-07-07 17:30:23.191251 last flyway file - V145__add_breakglass_mode_to_tld_table.sql + V146__last_update_time_via_epp.sql @@ -285,7 +285,7 @@ td.section { generated on - 2023-06-06 17:51:42.337598 + 2023-07-07 17:30:23.191251 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 b54521442..bc56d3211 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,20 +261,20 @@ td.section { generated on - 2023-06-06 17:51:40.336636 + 2023-07-07 17:30:21.119627 last flyway file - V145__add_breakglass_mode_to_tld_table.sql + V146__last_update_time_via_epp.sql

 

 

- - + + SchemaCrawler_Diagram - + generated by @@ -285,7 +285,7 @@ td.section { generated on - 2023-06-06 17:51:40.336636 + 2023-07-07 17:30:21.119627 @@ -1123,14 +1123,14 @@ td.section { billingevent_a57d1815:w->domainhistory_a54cc226:e - - - + + + - - - + + + fk_billing_event_domain_history @@ -1149,25 +1149,25 @@ td.section { billingevent_a57d1815:w->domainhistory_a54cc226:e - - - - + + + + - + - + fk_billing_event_recurrence_history billingevent_a57d1815:w->domainhistory_a54cc226:e - - - - + + + + - + fk_billing_event_recurrence_history @@ -1299,406 +1299,406 @@ td.section { billingevent_a57d1815:w->billingrecurrence_5fa2cb01:e - - - - - - - - + + + + + + + + fk_billing_event_cancellation_matching_billing_recurrence_id registrar_6e1503e3 - - + + public.Registrar - - + + [table] - + registrar_id - + - + text not null - + allowed_tlds - + - + _text - + billing_account_map - + - + "hstore" - + block_premium_names - + - + bool not null - + client_certificate - + - + text - + client_certificate_hash - + - + text - + contacts_require_syncing - + - + bool not null - + creation_time - + - + timestamptz not null - + 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 not null - + 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 - + last_expiring_cert_notification_sent_date - + - + timestamptz - + last_expiring_failover_cert_notification_sent_date - + - + timestamptz - + billingevent_a57d1815:w->registrar_6e1503e3:e - + - - - - + + + + fk_billing_event_registrar_id @@ -2298,80 +2298,88 @@ td.section { contact_8de8cb16 - - + + public.Contact - - + + [table] - + repo_id + + + + text not null + + + creation_registrar_id + text not null - creation_registrar_id + creation_time - text not null + timestamptz not null - creation_time + current_sponsor_registrar_id - timestamptz not null + text not null - current_sponsor_registrar_id + deletion_time - text not null + 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 + auth_info_repo_id - _text + text - auth_info_repo_id + auth_info_value @@ -2379,7 +2387,7 @@ td.section { text - auth_info_value + contact_id @@ -2387,23 +2395,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 @@ -2411,7 +2419,7 @@ td.section { bool - disclose_show_fax + disclose_mode_flag @@ -2419,15 +2427,15 @@ td.section { bool - disclose_mode_flag + disclose_types_name - bool + _text - disclose_types_name + disclose_types_org @@ -2435,23 +2443,23 @@ td.section { _text - disclose_types_org + disclose_show_voice - _text + bool - disclose_show_voice + email - bool + text - email + fax_phone_extension @@ -2459,7 +2467,7 @@ td.section { text - fax_phone_extension + fax_phone_number @@ -2467,7 +2475,7 @@ td.section { text - fax_phone_number + addr_i18n_city @@ -2475,7 +2483,7 @@ td.section { text - addr_i18n_city + addr_i18n_country_code @@ -2483,7 +2491,7 @@ td.section { text - addr_i18n_country_code + addr_i18n_state @@ -2491,7 +2499,7 @@ td.section { text - addr_i18n_state + addr_i18n_street_line1 @@ -2499,7 +2507,7 @@ td.section { text - addr_i18n_street_line1 + addr_i18n_street_line2 @@ -2507,7 +2515,7 @@ td.section { text - addr_i18n_street_line2 + addr_i18n_street_line3 @@ -2515,7 +2523,7 @@ td.section { text - addr_i18n_street_line3 + addr_i18n_zip @@ -2523,7 +2531,7 @@ td.section { text - addr_i18n_zip + addr_i18n_name @@ -2531,7 +2539,7 @@ td.section { text - addr_i18n_name + addr_i18n_org @@ -2539,7 +2547,7 @@ td.section { text - addr_i18n_org + addr_i18n_type @@ -2547,23 +2555,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 @@ -2571,7 +2579,7 @@ td.section { text - addr_local_country_code + addr_local_state @@ -2579,7 +2587,7 @@ td.section { text - addr_local_state + addr_local_street_line1 @@ -2587,7 +2595,7 @@ td.section { text - addr_local_street_line1 + addr_local_street_line2 @@ -2595,7 +2603,7 @@ td.section { text - addr_local_street_line2 + addr_local_street_line3 @@ -2603,7 +2611,7 @@ td.section { text - addr_local_street_line3 + addr_local_zip @@ -2611,7 +2619,7 @@ td.section { text - addr_local_zip + addr_local_name @@ -2619,7 +2627,7 @@ td.section { text - addr_local_name + addr_local_org @@ -2627,7 +2635,7 @@ td.section { text - addr_local_org + addr_local_type @@ -2635,7 +2643,7 @@ td.section { text - addr_local_type + search_name @@ -2643,7 +2651,7 @@ td.section { text - search_name + voice_phone_extension @@ -2651,7 +2659,7 @@ td.section { text - voice_phone_extension + voice_phone_number @@ -2659,15 +2667,15 @@ td.section { text - voice_phone_number + transfer_poll_message_id_1 - text + int8 - transfer_poll_message_id_1 + transfer_poll_message_id_2 @@ -2675,15 +2683,15 @@ td.section { int8 - transfer_poll_message_id_2 + transfer_client_txn_id - int8 + text - transfer_client_txn_id + transfer_server_txn_id @@ -2691,7 +2699,7 @@ td.section { text - transfer_server_txn_id + transfer_gaining_registrar_id @@ -2699,7 +2707,7 @@ td.section { text - transfer_gaining_registrar_id + transfer_losing_registrar_id @@ -2707,15 +2715,15 @@ td.section { text - transfer_losing_registrar_id + transfer_pending_expiration_time - text + timestamptz - transfer_pending_expiration_time + transfer_request_time @@ -2723,169 +2731,169 @@ td.section { timestamptz - transfer_request_time + transfer_status - timestamptz + text - transfer_status + update_timestamp - text + 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 - transfer_poll_message_id_3 + last_update_time_via_epp - int8 + timestamptz - + 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 @@ -3255,27 +3263,27 @@ td.section { domain_6c51cffa:w->tld_f1fa57e2:e - - - - - - - - + + + + + + + + fk_domain_tld domainhistory_a54cc226:w->allocationtoken_a08ccbef:e - - - + + + - - - + + + fk_domain_history_current_package_token @@ -3294,13 +3302,13 @@ td.section {
domainhistory_a54cc226:w->registrar_6e1503e3:e - + - - - - + + + + fk_domain_history_registrar_id @@ -3320,14 +3328,14 @@ td.section { billingcancellation_6eedf614:w->domainhistory_a54cc226:e - + - + fk_billing_cancellation_domain_history @@ -3359,13 +3367,13 @@ td.section { billingcancellation_6eedf614:w->registrar_6e1503e3:e - + - - - - + + + + fk_billing_cancellation_registrar_id @@ -3466,40 +3474,40 @@ td.section { 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 @@ -3518,232 +3526,240 @@ td.section { 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 @@ -3751,31 +3767,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 @@ -3783,7 +3799,7 @@ td.section { text - auth_info_value + contact_id @@ -3791,23 +3807,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 @@ -3815,7 +3831,7 @@ td.section { bool - disclose_show_fax + disclose_mode_flag @@ -3823,15 +3839,15 @@ td.section { bool - disclose_mode_flag + disclose_types_name - bool + _text - disclose_types_name + disclose_types_org @@ -3839,23 +3855,23 @@ td.section { _text - disclose_types_org + disclose_show_voice - _text + bool - disclose_show_voice + email - bool + text - email + fax_phone_extension @@ -3863,7 +3879,7 @@ td.section { text - fax_phone_extension + fax_phone_number @@ -3871,7 +3887,7 @@ td.section { text - fax_phone_number + addr_i18n_city @@ -3879,7 +3895,7 @@ td.section { text - addr_i18n_city + addr_i18n_country_code @@ -3887,7 +3903,7 @@ td.section { text - addr_i18n_country_code + addr_i18n_state @@ -3895,7 +3911,7 @@ td.section { text - addr_i18n_state + addr_i18n_street_line1 @@ -3903,7 +3919,7 @@ td.section { text - addr_i18n_street_line1 + addr_i18n_street_line2 @@ -3911,7 +3927,7 @@ td.section { text - addr_i18n_street_line2 + addr_i18n_street_line3 @@ -3919,7 +3935,7 @@ td.section { text - addr_i18n_street_line3 + addr_i18n_zip @@ -3927,7 +3943,7 @@ td.section { text - addr_i18n_zip + addr_i18n_name @@ -3935,7 +3951,7 @@ td.section { text - addr_i18n_name + addr_i18n_org @@ -3943,7 +3959,7 @@ td.section { text - addr_i18n_org + addr_i18n_type @@ -3951,23 +3967,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 @@ -3975,7 +3991,7 @@ td.section { text - addr_local_country_code + addr_local_state @@ -3983,7 +3999,7 @@ td.section { text - addr_local_state + addr_local_street_line1 @@ -3991,7 +4007,7 @@ td.section { text - addr_local_street_line1 + addr_local_street_line2 @@ -3999,7 +4015,7 @@ td.section { text - addr_local_street_line2 + addr_local_street_line3 @@ -4007,7 +4023,7 @@ td.section { text - addr_local_street_line3 + addr_local_zip @@ -4015,7 +4031,7 @@ td.section { text - addr_local_zip + addr_local_name @@ -4023,7 +4039,7 @@ td.section { text - addr_local_name + addr_local_org @@ -4031,7 +4047,7 @@ td.section { text - addr_local_org + addr_local_type @@ -4039,7 +4055,7 @@ td.section { text - addr_local_type + search_name @@ -4047,15 +4063,15 @@ td.section { text - search_name + transfer_poll_message_id_1 - text + int8 - transfer_poll_message_id_1 + transfer_poll_message_id_2 @@ -4063,15 +4079,15 @@ td.section { int8 - transfer_poll_message_id_2 + transfer_client_txn_id - int8 + text - transfer_client_txn_id + transfer_server_txn_id @@ -4079,7 +4095,7 @@ td.section { text - transfer_server_txn_id + transfer_gaining_registrar_id @@ -4087,7 +4103,7 @@ td.section { text - transfer_gaining_registrar_id + transfer_losing_registrar_id @@ -4095,15 +4111,15 @@ td.section { text - transfer_losing_registrar_id + transfer_pending_expiration_time - text + timestamptz - transfer_pending_expiration_time + transfer_request_time @@ -4111,15 +4127,15 @@ td.section { timestamptz - transfer_request_time + transfer_status - timestamptz + text - transfer_status + voice_phone_extension @@ -4127,7 +4143,7 @@ td.section { text - voice_phone_extension + voice_phone_number @@ -4135,7 +4151,7 @@ td.section { text - voice_phone_number + creation_registrar_id @@ -4143,126 +4159,126 @@ 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 - transfer_poll_message_id_3 + last_update_time_via_epp - int8 + timestamptz - + contacthistory_d2964f8a:w->contact_8de8cb16:e - - - - - - - - + + + + + + + + fk_contact_history_contact_repo_id contacthistory_d2964f8a:w->registrar_6e1503e3:e - - - - - - - - + + + + + + + + fk_contact_history_registrar_id @@ -4535,127 +4551,135 @@ td.section { 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 host_f21b78de - - + + public.Host - - + + [table] - + repo_id + + + + text not null + + + creation_registrar_id + - text not null + 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_name - _text + text - host_name + last_superordinate_change - text + timestamptz - last_superordinate_change + last_transfer_time @@ -4663,380 +4687,388 @@ td.section { timestamptz - last_transfer_time + superordinate_domain - timestamptz + text - superordinate_domain + inet_addresses - text + _text - inet_addresses + update_timestamp - _text + timestamptz - update_timestamp + transfer_poll_message_id_3 - timestamptz + int8 - transfer_poll_message_id_3 + last_update_time_via_epp - int8 + timestamptz - + 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 - + - + bool not null - + history_registrar_id - + - + text not null - + 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 - + host_name - + - + text - + inet_addresses - + - + _text - + last_superordinate_change - + - + timestamptz - + last_transfer_time - + - + timestamptz - + superordinate_domain - + - + 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 - + host_repo_id - + - + text not null - + update_timestamp - + - + timestamptz - + transfer_poll_message_id_3 - + - + int8 - + + last_update_time_via_epp + + + + + timestamptz + + 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 @@ -5105,68 +5137,68 @@ td.section { dnsrefreshrequest_4e6affb3 - - + + public.DnsRefreshRequest - - + + [table] - + id - + - + bigserial not null - + - + auto-incremented - + name - + - + text not null - + request_time - + - + timestamptz not null - + tld - + - + text not null - + type - + - + text not null - + last_process_time - + - + timestamptz not null - + domainhost_1ea127c2 @@ -5198,235 +5230,235 @@ td.section { 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 @@ -5505,14 +5537,14 @@ td.section { domaintransactionrecord_6e77ff61:w->domainhistory_a54cc226:e - + - + - + fkcjqe54u72kha71vkibvxhjye7 @@ -5544,422 +5576,422 @@ td.section { graceperiodhistory_40ccc1f1 - - + + public.GracePeriodHistory - - + + [table] - + grace_period_history_revision_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 - + domain_history_revision_id - + - + int8 - + grace_period_id - + - + int8 not null - + 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 - - - - - - - - + + + + + + + + fk_history_registrar_id lock_f21d4861 - - + + public.Lock - - + + [table] - + resource_name - + - + text not null - + "scope" - + - + text not null - + acquired_time - + - + timestamptz not null - + expiration_time - + - + timestamptz not null - + packagepromotion_56aa33 - - + + public.PackagePromotion - - + + [table] - + package_promotion_id - + - + bigserial not null - + - + auto-incremented - + last_notification_sent - + - + timestamptz - + max_creates - + - + int4 not null - + max_domains - + - + int4 not null - + next_billing_date - + - + timestamptz not null - + package_price_amount - + - + numeric(19, 2) not null - + package_price_currency - + - + text not null - + token - + - + 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 @@ -6087,580 +6119,580 @@ 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_time - + - + timestamptz - + lock_request_time - + - + 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_time - + - + timestamptz - + unlock_completion_time - + - + timestamptz - + last_update_time - + - + timestamptz not null - + 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 - + id - + - + int8 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 - + tmchcrl_d282355 - - + + public.TmchCrl - - + + [table] - + certificate_revocations - + - + text not null - + update_timestamp - + - + timestamptz not null - + url - + - + text not null - + id - + - + int8 not null - + user_f2216f01 - - + + public."User" - - + + [table] - + id - + - + bigserial not null - + - + auto-incremented - + email_address - + - + text not null - + gaia_id - + - + text - + registry_lock_password_hash - + - + text - + registry_lock_password_salt - + - + text - + global_role - + - + text not null - + is_admin - + - + bool not null - + registrar_roles - + - + "hstore" not null - + update_timestamp - + - + timestamptz - + @@ -8174,6 +8206,11 @@ td.section { transfer_poll_message_id_3 int8 + + + last_update_time_via_epp + timestamptz + @@ -8756,6 +8793,11 @@ td.section { transfer_poll_message_id_3 int8 + + + last_update_time_via_epp + timestamptz + @@ -11358,6 +11400,11 @@ td.section { transfer_poll_message_id_3 int8 + + + last_update_time_via_epp + timestamptz + @@ -11677,6 +11724,11 @@ td.section { transfer_poll_message_id_3 int8 + + + last_update_time_via_epp + timestamptz + diff --git a/db/src/main/resources/sql/flyway.txt b/db/src/main/resources/sql/flyway.txt index bbe6b4df3..4084fb7fc 100644 --- a/db/src/main/resources/sql/flyway.txt +++ b/db/src/main/resources/sql/flyway.txt @@ -143,3 +143,4 @@ V142__drop_request_log_id.sql V143__idn_per_tld.sql V144__drop_database_migration_state_schedule_table.sql V145__add_breakglass_mode_to_tld_table.sql +V146__last_update_time_via_epp.sql diff --git a/db/src/main/resources/sql/flyway/V146__last_update_time_via_epp.sql b/db/src/main/resources/sql/flyway/V146__last_update_time_via_epp.sql new file mode 100644 index 000000000..a94f3eb77 --- /dev/null +++ b/db/src/main/resources/sql/flyway/V146__last_update_time_via_epp.sql @@ -0,0 +1,20 @@ +-- 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. + +ALTER TABLE "Contact" ADD COLUMN last_update_time_via_epp timestamptz; +ALTER TABLE "ContactHistory" ADD COLUMN last_update_time_via_epp timestamptz; +ALTER TABLE "Domain" ADD COLUMN last_update_time_via_epp timestamptz; +ALTER TABLE "DomainHistory" ADD COLUMN last_update_time_via_epp timestamptz; +ALTER TABLE "Host" ADD COLUMN last_update_time_via_epp timestamptz; +ALTER TABLE "HostHistory" ADD COLUMN last_update_time_via_epp timestamptz; diff --git a/db/src/main/resources/sql/schema/nomulus.golden.sql b/db/src/main/resources/sql/schema/nomulus.golden.sql index 31d6edaaa..c4031462e 100644 --- a/db/src/main/resources/sql/schema/nomulus.golden.sql +++ b/db/src/main/resources/sql/schema/nomulus.golden.sql @@ -226,7 +226,8 @@ CREATE TABLE public."Contact" ( update_timestamp timestamp with time zone, transfer_history_entry_id bigint, transfer_repo_id text, - transfer_poll_message_id_3 bigint + transfer_poll_message_id_3 bigint, + last_update_time_via_epp timestamp with time zone ); @@ -302,7 +303,8 @@ CREATE TABLE public."ContactHistory" ( update_timestamp timestamp with time zone, transfer_history_entry_id bigint, transfer_repo_id text, - transfer_poll_message_id_3 bigint + transfer_poll_message_id_3 bigint, + last_update_time_via_epp timestamp with time zone ); @@ -420,7 +422,8 @@ CREATE TABLE public."Domain" ( transfer_repo_id text, transfer_poll_message_id_3 bigint, current_package_token text, - lordn_phase text DEFAULT 'NONE'::text NOT NULL + lordn_phase text DEFAULT 'NONE'::text NOT NULL, + last_update_time_via_epp timestamp with time zone ); @@ -509,7 +512,8 @@ CREATE TABLE public."DomainHistory" ( transfer_repo_id text, transfer_poll_message_id_3 bigint, current_package_token text, - lordn_phase text DEFAULT 'NONE'::text NOT NULL + lordn_phase text DEFAULT 'NONE'::text NOT NULL, + last_update_time_via_epp timestamp with time zone ); @@ -619,7 +623,8 @@ CREATE TABLE public."Host" ( superordinate_domain text, inet_addresses text[], update_timestamp timestamp with time zone, - transfer_poll_message_id_3 bigint + transfer_poll_message_id_3 bigint, + last_update_time_via_epp timestamp with time zone ); @@ -652,7 +657,8 @@ CREATE TABLE public."HostHistory" ( statuses text[], host_repo_id text NOT NULL, update_timestamp timestamp with time zone, - transfer_poll_message_id_3 bigint + transfer_poll_message_id_3 bigint, + last_update_time_via_epp timestamp with time zone );