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 32e023697..757f25026 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 @@ -257,433 +257,433 @@ td.section { generated by - SchemaCrawler 17.10.2 + SchemaCrawler 17.11.1 generated on - 2026-05-01 18:52:49 + 2026-06-23 01:40:35 last flyway file - V222__remove_contact.sql + V223__tld_change_xap_enabled_to_transitions.sql

 

 

- - - SchemaCrawler_Diagram generated by SchemaCrawler 17.10.2 generated on 2026-05-01 18:52:49 + + + SchemaCrawler_Diagram generated by SchemaCrawler 17.11.1 generated on 2026-06-23 01:40:35 - allocationtoken_a08ccbef public."AllocationToken" [table] token text not null domain_name text redemption_domain_repo_id text token_type text + allocationtoken_a08ccbef public."AllocationToken" [table] token text not null domain_name text redemption_domain_repo_id text token_type text - 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 allocation_token text billing_time timestamptz cancellation_matching_billing_recurrence_id int8 synthetic_creation_time timestamptz recurrence_history_revision_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 allocation_token text billing_time timestamptz cancellation_matching_billing_recurrence_id int8 synthetic_creation_time timestamptz recurrence_history_revision_id int8 - billingevent_a57d1815:w->allocationtoken_a08ccbef:e fk_billing_event_allocation_token + 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 recurrence_end_time timestamptz recurrence_time_of_year text recurrence_last_expansion timestamptz not null + 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 recurrence_end_time timestamptz recurrence_time_of_year text recurrence_last_expansion timestamptz not null - billingevent_a57d1815:w->billingrecurrence_5fa2cb01:e fk_billing_event_cancellation_matching_billing_recurrence_id + billingevent_a57d1815:w->billingrecurrence_5fa2cb01:e fk_billing_event_cancellation_matching_billing_recurrence_id - registrar_6e1503e3 public."Registrar" [table] registrar_id text not null iana_identifier int8 registrar_name text not null + registrar_6e1503e3 public."Registrar" [table] registrar_id text not null iana_identifier int8 registrar_name text not null - billingevent_a57d1815:w->registrar_6e1503e3:e fk_billing_event_registrar_id + billingevent_a57d1815:w->registrar_6e1503e3:e fk_billing_event_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 domain_name text tld text admin_contact text billing_contact text registrant_contact text tech_contact text transfer_billing_cancellation_id int8 transfer_billing_event_id int8 transfer_billing_recurrence_id int8 transfer_gaining_registrar_id text transfer_losing_registrar_id text billing_recurrence_id int8 autorenew_end_time timestamptz current_package_token text lordn_phase text not null + 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 domain_name text tld text admin_contact text billing_contact text registrant_contact text tech_contact text transfer_billing_cancellation_id int8 transfer_billing_event_id int8 transfer_billing_recurrence_id int8 transfer_gaining_registrar_id text transfer_losing_registrar_id text billing_recurrence_id int8 autorenew_end_time timestamptz current_package_token text lordn_phase text not null - domain_6c51cffa:w->allocationtoken_a08ccbef:e fk_domain_current_package_token + domain_6c51cffa:w->allocationtoken_a08ccbef:e fk_domain_current_package_token - domain_6c51cffa:w->billingevent_a57d1815:e fk_domain_transfer_billing_event_id + domain_6c51cffa:w->billingevent_a57d1815:e fk_domain_transfer_billing_event_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 billing_time timestamptz billing_event_id int8 billing_recurrence_id int8 + 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 billing_time timestamptz billing_event_id int8 billing_recurrence_id int8 - domain_6c51cffa:w->billingcancellation_6eedf614:e fk_domain_transfer_billing_cancellation_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_billing_recurrence_id - domain_6c51cffa:w->billingrecurrence_5fa2cb01:e fk_domain_transfer_billing_recurrence_id + domain_6c51cffa:w->billingrecurrence_5fa2cb01:e fk_domain_transfer_billing_recurrence_id - domain_6c51cffa:w->registrar_6e1503e3:e fk2jc69qyg2tv9hhnmif6oa1cx1 + domain_6c51cffa:w->registrar_6e1503e3:e fk2jc69qyg2tv9hhnmif6oa1cx1 - domain_6c51cffa:w->registrar_6e1503e3:e fk2u3srsfbei272093m3b3xwj23 + domain_6c51cffa:w->registrar_6e1503e3:e fk2u3srsfbei272093m3b3xwj23 - domain_6c51cffa:w->registrar_6e1503e3:e fkjc0r9r5y1lfbt4gpbqw4wsuvq + 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_gaining_registrar_id - domain_6c51cffa:w->registrar_6e1503e3:e fk_domain_transfer_losing_registrar_id + domain_6c51cffa:w->registrar_6e1503e3:e fk_domain_transfer_losing_registrar_id - tld_f1fa57e2 public."Tld" [table] tld_name text not null + tld_f1fa57e2 public."Tld" [table] tld_name text not null - domain_6c51cffa:w->tld_f1fa57e2:e fk_domain_tld + domain_6c51cffa:w->tld_f1fa57e2:e fk_domain_tld - domainhistory_a54cc226 public."DomainHistory" [table] history_revision_id int8 not null history_registrar_id text history_modification_time timestamptz not null history_type text not null creation_time timestamptz domain_repo_id text not null current_package_token text + domainhistory_a54cc226 public."DomainHistory" [table] history_revision_id int8 not null history_registrar_id text history_modification_time timestamptz not null history_type text not null creation_time timestamptz domain_repo_id text not null current_package_token text - domainhistory_a54cc226:w->allocationtoken_a08ccbef:e fk_domain_history_current_package_token + domainhistory_a54cc226:w->allocationtoken_a08ccbef:e fk_domain_history_current_package_token - domainhistory_a54cc226:w->domain_6c51cffa:e fk_domain_history_domain_repo_id + domainhistory_a54cc226:w->domain_6c51cffa:e fk_domain_history_domain_repo_id - domainhistory_a54cc226:w->registrar_6e1503e3:e fk_domain_history_registrar_id + domainhistory_a54cc226:w->registrar_6e1503e3:e fk_domain_history_registrar_id - billingcancellation_6eedf614:w->billingevent_a57d1815:e fk_billing_cancellation_billing_event_id + 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->billingrecurrence_5fa2cb01:e fk_billing_cancellation_billing_recurrence_id - billingcancellation_6eedf614:w->registrar_6e1503e3:e fk_billing_cancellation_registrar_id + billingcancellation_6eedf614:w->registrar_6e1503e3:e fk_billing_cancellation_registrar_id - 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 + 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 - graceperiod_cd3b2e8f:w->billingevent_a57d1815:e fk_grace_period_billing_event_id + 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->domain_6c51cffa:e fk_grace_period_domain_repo_id - graceperiod_cd3b2e8f:w->billingrecurrence_5fa2cb01:e fk_grace_period_billing_recurrence_id + graceperiod_cd3b2e8f:w->billingrecurrence_5fa2cb01:e fk_grace_period_billing_recurrence_id - graceperiod_cd3b2e8f:w->registrar_6e1503e3:e fk_grace_period_registrar_id + graceperiod_cd3b2e8f:w->registrar_6e1503e3:e fk_grace_period_registrar_id - billingrecurrence_5fa2cb01:w->registrar_6e1503e3:e fk_billing_recurrence_registrar_id + billingrecurrence_5fa2cb01:w->registrar_6e1503e3:e fk_billing_recurrence_registrar_id - bsadomainrefresh_c8f4c45d public."BsaDomainRefresh" [table] job_id bigserial not null auto-incremented + bsadomainrefresh_c8f4c45d public."BsaDomainRefresh" [table] job_id bigserial not null auto-incremented - bsadownload_98d031ce public."BsaDownload" [table] job_id bigserial not null auto-incremented creation_time timestamptz not null + bsadownload_98d031ce public."BsaDownload" [table] job_id bigserial not null auto-incremented creation_time timestamptz not null - bsalabel_2755e1da public."BsaLabel" [table] label text not null + bsalabel_2755e1da public."BsaLabel" [table] label text not null - bsaunblockabledomain_b739a38 public."BsaUnblockableDomain" [table] label text not null tld text not null + bsaunblockabledomain_b739a38 public."BsaUnblockableDomain" [table] label text not null tld text not null - bsaunblockabledomain_b739a38:w->bsalabel_2755e1da:e fkbsaunblockabledomainlabel + bsaunblockabledomain_b739a38:w->bsalabel_2755e1da:e fkbsaunblockabledomainlabel - claimsentry_105da9f1 public."ClaimsEntry" [table] revision_id int8 not null domain_label text not null + claimsentry_105da9f1 public."ClaimsEntry" [table] revision_id int8 not null domain_label text not null - claimslist_3d49bc2b public."ClaimsList" [table] revision_id bigserial not null auto-incremented + claimslist_3d49bc2b public."ClaimsList" [table] revision_id bigserial not null auto-incremented - claimsentry_105da9f1:w->claimslist_3d49bc2b:e fk6sc6at5hedffc0nhdcab6ivuq + claimsentry_105da9f1:w->claimslist_3d49bc2b:e fk6sc6at5hedffc0nhdcab6ivuq - consoleeppactionhistory_bcc2a2c6 public."ConsoleEppActionHistory" [table] history_revision_id int8 not null repo_id text not null revision_id int8 not null history_acting_user text not null + consoleeppactionhistory_bcc2a2c6 public."ConsoleEppActionHistory" [table] history_revision_id int8 not null repo_id text not null revision_id int8 not null history_acting_user text not null - consoleupdatehistory_5237b2aa public."ConsoleUpdateHistory" [table] revision_id int8 not null modification_time timestamptz not null type text not null acting_user text not null + consoleupdatehistory_5237b2aa public."ConsoleUpdateHistory" [table] revision_id int8 not null modification_time timestamptz not null type text not null acting_user text not null - user_f2216f01 public."User" [table] email_address text not null + user_f2216f01 public."User" [table] email_address text not null - consoleupdatehistory_5237b2aa:w->user_f2216f01:e fk_console_update_history_acting_user + consoleupdatehistory_5237b2aa:w->user_f2216f01:e fk_console_update_history_acting_user - cursor_6af40e8c public."Cursor" [table] "scope" text not null type text not null + cursor_6af40e8c public."Cursor" [table] "scope" text not null type text 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 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 + delegationsignerdata_e542a872:w->domain_6c51cffa:e fktr24j9v14ph2mfuw2gsmt12kq - dnsrefreshrequest_4e6affb3 public."DnsRefreshRequest" [table] id bigserial not null auto-incremented request_time timestamptz not null last_process_time timestamptz not null + dnsrefreshrequest_4e6affb3 public."DnsRefreshRequest" [table] id bigserial not null auto-incremented request_time timestamptz not null last_process_time timestamptz not null - domainhost_1ea127c2 public."DomainHost" [table] domain_repo_id text not null host_repo_id text + 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->domain_6c51cffa:e fkfmi7bdink53swivs390m2btxg - 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 host_name text superordinate_domain text inet_addresses _text + 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 host_name text superordinate_domain text inet_addresses _text - domainhost_1ea127c2:w->host_f21b78de:e fk_domainhost_host_valid + domainhost_1ea127c2:w->host_f21b78de:e fk_domainhost_host_valid - host_f21b78de:w->domain_6c51cffa:e fk_host_superordinate_domain + 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_creation_registrar_id - host_f21b78de:w->registrar_6e1503e3:e fk_host_current_sponsor_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 + host_f21b78de:w->registrar_6e1503e3:e fk_host_last_epp_update_registrar_id - pollmessage_614a523e public."PollMessage" [table] poll_message_id int8 not null registrar_id text not null domain_repo_id text domain_history_revision_id int8 event_time timestamptz not null host_repo_id text host_history_revision_id int8 transfer_response_gaining_registrar_id text transfer_response_losing_registrar_id text + pollmessage_614a523e public."PollMessage" [table] poll_message_id int8 not null registrar_id text not null domain_repo_id text domain_history_revision_id int8 event_time timestamptz not null host_repo_id text host_history_revision_id int8 transfer_response_gaining_registrar_id text transfer_response_losing_registrar_id text - pollmessage_614a523e:w->domain_6c51cffa:e fk_poll_message_domain_repo_id + pollmessage_614a523e:w->domain_6c51cffa:e fk_poll_message_domain_repo_id - pollmessage_614a523e:w->host_f21b78de:e fk_poll_message_host_repo_id + pollmessage_614a523e:w->host_f21b78de:e fk_poll_message_host_repo_id - hosthistory_56210c2 public."HostHistory" [table] history_revision_id int8 not null history_registrar_id text not null history_modification_time timestamptz not null history_type text not null host_name text creation_time timestamptz host_repo_id text not null + hosthistory_56210c2 public."HostHistory" [table] history_revision_id int8 not null history_registrar_id text not null history_modification_time timestamptz not null history_type text not null host_name text creation_time timestamptz host_repo_id text not null - 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->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_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_gaining_registrar_id - pollmessage_614a523e:w->registrar_6e1503e3:e fk_poll_message_transfer_response_losing_registrar_id + pollmessage_614a523e:w->registrar_6e1503e3:e fk_poll_message_transfer_response_losing_registrar_id - domaindsdatahistory_995b060d public."DomainDsDataHistory" [table] ds_data_history_revision_id int8 not null domain_history_revision_id int8 not null domain_repo_id text + domaindsdatahistory_995b060d public."DomainDsDataHistory" [table] ds_data_history_revision_id int8 not null domain_history_revision_id int8 not null domain_repo_id text - 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 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 - 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 tld text not null domain_repo_id text history_revision_id int8 + domaintransactionrecord_6e77ff61 public."DomainTransactionRecord" [table] id bigserial not null auto-incremented tld text not null domain_repo_id text history_revision_id int8 - domaintransactionrecord_6e77ff61:w->tld_f1fa57e2:e fk_domain_transaction_record_tld + domaintransactionrecord_6e77ff61:w->tld_f1fa57e2:e fk_domain_transaction_record_tld - featureflag_3ee43a78 public."FeatureFlag" [table] feature_name text not null + featureflag_3ee43a78 public."FeatureFlag" [table] feature_name text not null - graceperiodhistory_40ccc1f1 public."GracePeriodHistory" [table] grace_period_history_revision_id int8 not null domain_repo_id text not null domain_history_revision_id int8 + graceperiodhistory_40ccc1f1 public."GracePeriodHistory" [table] grace_period_history_revision_id int8 not null domain_repo_id text not null domain_history_revision_id int8 - hosthistory_56210c2:w->host_f21b78de:e fk_hosthistory_host + hosthistory_56210c2:w->host_f21b78de:e fk_hosthistory_host - hosthistory_56210c2:w->registrar_6e1503e3:e fk_history_registrar_id + hosthistory_56210c2:w->registrar_6e1503e3:e fk_history_registrar_id - lock_f21d4861 public."Lock" [table] resource_name text not null "scope" text not null + lock_f21d4861 public."Lock" [table] resource_name text not null "scope" text not null - packagepromotion_56aa33 public."PackagePromotion" [table] package_promotion_id bigserial not null auto-incremented token text not null + packagepromotion_56aa33 public."PackagePromotion" [table] package_promotion_id bigserial not null auto-incremented token text not null - passwordresetrequest_8484e7b1 public."PasswordResetRequest" [table] verification_code text not null + passwordresetrequest_8484e7b1 public."PasswordResetRequest" [table] verification_code text not null - premiumentry_b0060b91 public."PremiumEntry" [table] revision_id int8 not null domain_label text not null + premiumentry_b0060b91 public."PremiumEntry" [table] revision_id int8 not null domain_label text not null - premiumlist_7c3ea68b public."PremiumList" [table] revision_id bigserial not null auto-incremented name text not null + premiumlist_7c3ea68b public."PremiumList" [table] revision_id bigserial not null auto-incremented name text not null - premiumentry_b0060b91:w->premiumlist_7c3ea68b:e fko0gw90lpo1tuee56l0nb6y6g5 + premiumentry_b0060b91:w->premiumlist_7c3ea68b:e fko0gw90lpo1tuee56l0nb6y6g5 - rderevision_83396864 public."RdeRevision" [table] tld text not null mode text not null "date" date not null + rderevision_83396864 public."RdeRevision" [table] tld text not null mode text not null "date" date not null - registrarpoc_ab47054d public."RegistrarPoc" [table] email_address text not null registrar_id text not null + registrarpoc_ab47054d public."RegistrarPoc" [table] email_address text not null registrar_id text not null - registrarpoc_ab47054d:w->registrar_6e1503e3:e fk_registrar_poc_registrar_id + registrarpoc_ab47054d:w->registrar_6e1503e3:e fk_registrar_poc_registrar_id - registrarupdatehistory_8a38bed4 public."RegistrarUpdateHistory" [table] history_revision_id int8 not null registrar_id text not null history_acting_user text not null + registrarupdatehistory_8a38bed4 public."RegistrarUpdateHistory" [table] history_revision_id int8 not null registrar_id text not null history_acting_user text not null - registrarupdatehistory_8a38bed4:w->registrar_6e1503e3:e fkregistrarupdatehistoryregistrarid + registrarupdatehistory_8a38bed4:w->registrar_6e1503e3:e fkregistrarupdatehistoryregistrarid - registrarpocupdatehistory_31e5d9aa public."RegistrarPocUpdateHistory" [table] history_revision_id int8 not null email_address text not null registrar_id text not null history_acting_user text not null + registrarpocupdatehistory_31e5d9aa public."RegistrarPocUpdateHistory" [table] history_revision_id int8 not null email_address text not null registrar_id text not null history_acting_user text not null - registrarpocupdatehistory_31e5d9aa:w->registrarpoc_ab47054d:e fkregistrarpocupdatehistoryemailaddress + registrarpocupdatehistory_31e5d9aa:w->registrarpoc_ab47054d:e fkregistrarpocupdatehistoryemailaddress - registrarpocupdatehistory_31e5d9aa:w->registrarpoc_ab47054d:e fkregistrarpocupdatehistoryemailaddress + registrarpocupdatehistory_31e5d9aa:w->registrarpoc_ab47054d:e fkregistrarpocupdatehistoryemailaddress - registrylock_ac88663e public."RegistryLock" [table] revision_id bigserial not null auto-incremented registrar_id text not null repo_id text not null verification_code text not null relock_revision_id int8 + registrylock_ac88663e public."RegistryLock" [table] revision_id bigserial not null auto-incremented registrar_id text not null repo_id text not null verification_code text not null relock_revision_id int8 - registrylock_ac88663e:w->registrylock_ac88663e:e fk2lhcwpxlnqijr96irylrh1707 + registrylock_ac88663e:w->registrylock_ac88663e:e fk2lhcwpxlnqijr96irylrh1707 - reservedentry_1a7b8520 public."ReservedEntry" [table] revision_id int8 not null domain_label text not null + reservedentry_1a7b8520 public."ReservedEntry" [table] revision_id int8 not null domain_label text not null - reservedlist_b97c3f1c public."ReservedList" [table] revision_id bigserial not null auto-incremented name text not null + reservedlist_b97c3f1c public."ReservedList" [table] revision_id bigserial not null auto-incremented name text not null - reservedentry_1a7b8520:w->reservedlist_b97c3f1c:e fkgq03rk0bt1hb915dnyvd3vnfc + reservedentry_1a7b8520:w->reservedlist_b97c3f1c:e fkgq03rk0bt1hb915dnyvd3vnfc - serversecret_6cc90f09 public."ServerSecret" [table] id int8 not null + serversecret_6cc90f09 public."ServerSecret" [table] id int8 not null - signedmarkrevocationentry_99c39721 public."SignedMarkRevocationEntry" [table] revision_id int8 not null smd_id text not null + signedmarkrevocationentry_99c39721 public."SignedMarkRevocationEntry" [table] revision_id int8 not null smd_id text not null - signedmarkrevocationlist_c5d968fb public."SignedMarkRevocationList" [table] revision_id bigserial not null auto-incremented + signedmarkrevocationlist_c5d968fb public."SignedMarkRevocationList" [table] revision_id bigserial not null auto-incremented - signedmarkrevocationentry_99c39721:w->signedmarkrevocationlist_c5d968fb:e fk5ivlhvs3121yx2li5tqh54u4 + signedmarkrevocationentry_99c39721:w->signedmarkrevocationlist_c5d968fb:e fk5ivlhvs3121yx2li5tqh54u4 - spec11threatmatch_a61228a6 public."Spec11ThreatMatch" [table] id bigserial not null auto-incremented check_date date not null registrar_id text not null tld text not null + spec11threatmatch_a61228a6 public."Spec11ThreatMatch" [table] id bigserial not null auto-incremented check_date date not null registrar_id text not null tld text not null - tmchcrl_d282355 public."TmchCrl" [table] id int8 not null + tmchcrl_d282355 public."TmchCrl" [table] id int8 not null - userupdatehistory_24efd476 public."UserUpdateHistory" [table] history_revision_id int8 not null email_address text not null history_acting_user text not null + userupdatehistory_24efd476 public."UserUpdateHistory" [table] history_revision_id int8 not null email_address text not null history_acting_user text not null 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 720615b83..3c92ea897 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 @@ -257,433 +257,433 @@ td.section {
generated by - SchemaCrawler 17.10.2 + SchemaCrawler 17.11.1
generated on - 2026-05-01 18:52:47 + 2026-06-23 01:40:34
last flyway file - V222__remove_contact.sql + V223__tld_change_xap_enabled_to_transitions.sql

 

 

- - - SchemaCrawler_Diagram generated by SchemaCrawler 17.10.2 generated on 2026-05-01 18:52:47 + + + SchemaCrawler_Diagram generated by SchemaCrawler 17.11.1 generated on 2026-06-23 01:40:34 - 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 renewal_price_behavior text not null registration_behavior text not null allowed_epp_actions _text renewal_price_amount numeric(19, 2) renewal_price_currency text discount_price_amount numeric(19, 2) discount_price_currency text + 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 renewal_price_behavior text not null registration_behavior text not null allowed_epp_actions _text renewal_price_amount numeric(19, 2) renewal_price_currency text discount_price_amount numeric(19, 2) discount_price_currency text - 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 recurrence_history_revision_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 recurrence_history_revision_id int8 - billingevent_a57d1815:w->allocationtoken_a08ccbef:e fk_billing_event_allocation_token + 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 renewal_price_behavior text not null renewal_price_currency text renewal_price_amount numeric(19, 2) recurrence_last_expansion timestamptz not null + 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 renewal_price_behavior text not null renewal_price_currency text renewal_price_amount numeric(19, 2) recurrence_last_expansion timestamptz not null - billingevent_a57d1815:w->billingrecurrence_5fa2cb01:e fk_billing_event_cancellation_matching_billing_recurrence_id + 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 last_poc_verification_date timestamptz + 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 last_poc_verification_date timestamptz - billingevent_a57d1815:w->registrar_6e1503e3:e fk_billing_event_registrar_id + billingevent_a57d1815:w->registrar_6e1503e3:e fk_billing_event_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 transfer_autorenew_poll_message_history_id int8 transfer_history_entry_id int8 transfer_repo_id text transfer_poll_message_id_3 int8 current_package_token text lordn_phase text not null last_update_time_via_epp timestamptz + 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 transfer_autorenew_poll_message_history_id int8 transfer_history_entry_id int8 transfer_repo_id text transfer_poll_message_id_3 int8 current_package_token text lordn_phase text not null last_update_time_via_epp timestamptz - domain_6c51cffa:w->allocationtoken_a08ccbef:e fk_domain_current_package_token + domain_6c51cffa:w->allocationtoken_a08ccbef:e fk_domain_current_package_token - domain_6c51cffa:w->billingevent_a57d1815:e fk_domain_transfer_billing_event_id + domain_6c51cffa:w->billingevent_a57d1815:e fk_domain_transfer_billing_event_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 + 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 - domain_6c51cffa:w->billingcancellation_6eedf614:e fk_domain_transfer_billing_cancellation_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_billing_recurrence_id - domain_6c51cffa:w->billingrecurrence_5fa2cb01:e fk_domain_transfer_billing_recurrence_id + domain_6c51cffa:w->billingrecurrence_5fa2cb01:e fk_domain_transfer_billing_recurrence_id - domain_6c51cffa:w->registrar_6e1503e3:e fk2jc69qyg2tv9hhnmif6oa1cx1 + domain_6c51cffa:w->registrar_6e1503e3:e fk2jc69qyg2tv9hhnmif6oa1cx1 - domain_6c51cffa:w->registrar_6e1503e3:e fk2u3srsfbei272093m3b3xwj23 + domain_6c51cffa:w->registrar_6e1503e3:e fk2u3srsfbei272093m3b3xwj23 - domain_6c51cffa:w->registrar_6e1503e3:e fkjc0r9r5y1lfbt4gpbqw4wsuvq + 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_gaining_registrar_id - domain_6c51cffa:w->registrar_6e1503e3:e fk_domain_transfer_losing_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 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 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 default_promo_tokens _text dns_a_plus_aaaa_ttl interval dns_ds_ttl interval dns_ns_ttl interval idn_tables _text breakglass_mode bool not null bsa_enroll_start_time timestamptz create_billing_cost_transitions hstore not null expiry_access_period_enabled bool not null + tld_f1fa57e2 public."Tld" [table] tld_name text not null add_grace_period_length interval not null allowed_fully_qualified_host_names _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 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 default_promo_tokens _text dns_a_plus_aaaa_ttl interval dns_ds_ttl interval dns_ns_ttl interval idn_tables _text breakglass_mode bool not null bsa_enroll_start_time timestamptz create_billing_cost_transitions hstore not null expiry_access_period_transitions hstore not null - domain_6c51cffa:w->tld_f1fa57e2:e fk_domain_tld + domain_6c51cffa:w->tld_f1fa57e2:e fk_domain_tld - 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 autorenew_poll_message_history_id int8 transfer_autorenew_poll_message_history_id int8 transfer_history_entry_id int8 transfer_repo_id text transfer_poll_message_id_3 int8 current_package_token text lordn_phase text not null last_update_time_via_epp timestamptz + 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 autorenew_poll_message_history_id int8 transfer_autorenew_poll_message_history_id int8 transfer_history_entry_id int8 transfer_repo_id text transfer_poll_message_id_3 int8 current_package_token text lordn_phase text not null last_update_time_via_epp timestamptz - domainhistory_a54cc226:w->allocationtoken_a08ccbef:e fk_domain_history_current_package_token + domainhistory_a54cc226:w->allocationtoken_a08ccbef:e fk_domain_history_current_package_token - domainhistory_a54cc226:w->domain_6c51cffa:e fk_domain_history_domain_repo_id + domainhistory_a54cc226:w->domain_6c51cffa:e fk_domain_history_domain_repo_id - domainhistory_a54cc226:w->registrar_6e1503e3:e fk_domain_history_registrar_id + domainhistory_a54cc226:w->registrar_6e1503e3:e fk_domain_history_registrar_id - billingcancellation_6eedf614:w->billingevent_a57d1815:e fk_billing_cancellation_billing_event_id + 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->billingrecurrence_5fa2cb01:e fk_billing_cancellation_billing_recurrence_id - billingcancellation_6eedf614:w->registrar_6e1503e3:e fk_billing_cancellation_registrar_id + billingcancellation_6eedf614:w->registrar_6e1503e3:e fk_billing_cancellation_registrar_id - 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 + 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 - graceperiod_cd3b2e8f:w->billingevent_a57d1815:e fk_grace_period_billing_event_id + 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->domain_6c51cffa:e fk_grace_period_domain_repo_id - graceperiod_cd3b2e8f:w->billingrecurrence_5fa2cb01:e fk_grace_period_billing_recurrence_id + graceperiod_cd3b2e8f:w->billingrecurrence_5fa2cb01:e fk_grace_period_billing_recurrence_id - graceperiod_cd3b2e8f:w->registrar_6e1503e3:e fk_grace_period_registrar_id + graceperiod_cd3b2e8f:w->registrar_6e1503e3:e fk_grace_period_registrar_id - billingrecurrence_5fa2cb01:w->registrar_6e1503e3:e fk_billing_recurrence_registrar_id + billingrecurrence_5fa2cb01:w->registrar_6e1503e3:e fk_billing_recurrence_registrar_id - bsadomainrefresh_c8f4c45d public."BsaDomainRefresh" [table] job_id bigserial not null auto-incremented creation_time timestamptz not null stage text not null update_timestamp timestamptz + bsadomainrefresh_c8f4c45d public."BsaDomainRefresh" [table] job_id bigserial not null auto-incremented creation_time timestamptz not null stage text not null update_timestamp timestamptz - bsadownload_98d031ce public."BsaDownload" [table] job_id bigserial not null auto-incremented block_list_checksums text not null creation_time timestamptz not null stage text not null update_timestamp timestamptz + bsadownload_98d031ce public."BsaDownload" [table] job_id bigserial not null auto-incremented block_list_checksums text not null creation_time timestamptz not null stage text not null update_timestamp timestamptz - bsalabel_2755e1da public."BsaLabel" [table] label text not null creation_time timestamptz not null + bsalabel_2755e1da public."BsaLabel" [table] label text not null creation_time timestamptz not null - bsaunblockabledomain_b739a38 public."BsaUnblockableDomain" [table] label text not null tld text not null creation_time timestamptz not null reason text not null + bsaunblockabledomain_b739a38 public."BsaUnblockableDomain" [table] label text not null tld text not null creation_time timestamptz not null reason text not null - bsaunblockabledomain_b739a38:w->bsalabel_2755e1da:e fkbsaunblockabledomainlabel + bsaunblockabledomain_b739a38:w->bsalabel_2755e1da:e fkbsaunblockabledomainlabel - claimsentry_105da9f1 public."ClaimsEntry" [table] revision_id int8 not null claim_key text not null domain_label text not null + 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 + 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 + claimsentry_105da9f1:w->claimslist_3d49bc2b:e fk6sc6at5hedffc0nhdcab6ivuq - consoleeppactionhistory_bcc2a2c6 public."ConsoleEppActionHistory" [table] history_revision_id int8 not null history_modification_time timestamptz not null history_method text not null history_request_body text history_type text not null history_url text not null history_entry_class text not null repo_id text not null revision_id int8 not null history_acting_user text not null + consoleeppactionhistory_bcc2a2c6 public."ConsoleEppActionHistory" [table] history_revision_id int8 not null history_modification_time timestamptz not null history_method text not null history_request_body text history_type text not null history_url text not null history_entry_class text not null repo_id text not null revision_id int8 not null history_acting_user text not null - consoleupdatehistory_5237b2aa public."ConsoleUpdateHistory" [table] revision_id int8 not null modification_time timestamptz not null "method" text not null type text not null url text not null description text acting_user text not null + consoleupdatehistory_5237b2aa public."ConsoleUpdateHistory" [table] revision_id int8 not null modification_time timestamptz not null "method" text not null type text not null url text not null description text acting_user text not null - user_f2216f01 public."User" [table] email_address text not null 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 registry_lock_email_address text + user_f2216f01 public."User" [table] email_address text not null 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 registry_lock_email_address text - consoleupdatehistory_5237b2aa:w->user_f2216f01:e fk_console_update_history_acting_user + consoleupdatehistory_5237b2aa:w->user_f2216f01:e fk_console_update_history_acting_user - cursor_6af40e8c public."Cursor" [table] "scope" text not null type text not null cursor_time timestamptz not null last_update_time timestamptz not null + 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 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 + delegationsignerdata_e542a872:w->domain_6c51cffa:e fktr24j9v14ph2mfuw2gsmt12kq - 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 + 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 public."DomainHost" [table] domain_repo_id text not null host_repo_id text + 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->domain_6c51cffa:e fkfmi7bdink53swivs390m2btxg - 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 last_update_time_via_epp timestamptz + 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 last_update_time_via_epp timestamptz - domainhost_1ea127c2:w->host_f21b78de:e fk_domainhost_host_valid + domainhost_1ea127c2:w->host_f21b78de:e fk_domainhost_host_valid - host_f21b78de:w->domain_6c51cffa:e fk_host_superordinate_domain + 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_creation_registrar_id - host_f21b78de:w->registrar_6e1503e3:e fk_host_current_sponsor_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 + host_f21b78de:w->registrar_6e1503e3:e fk_host_last_epp_update_registrar_id - pollmessage_614a523e public."PollMessage" [table] type text not null poll_message_id int8 not null registrar_id text not null contact_repo_id text contact_history_revision_id int8 domain_repo_id text domain_history_revision_id int8 event_time timestamptz not null host_repo_id text host_history_revision_id int8 message text transfer_response_contact_id text transfer_response_domain_expiration_time timestamptz transfer_response_domain_name text pending_action_response_action_result bool pending_action_response_name_or_id text pending_action_response_processed_date timestamptz pending_action_response_client_txn_id text pending_action_response_server_txn_id text transfer_response_gaining_registrar_id text transfer_response_losing_registrar_id text transfer_response_pending_transfer_expiration_time timestamptz transfer_response_transfer_request_time timestamptz transfer_response_transfer_status text autorenew_end_time timestamptz autorenew_domain_name text transfer_response_host_id text + pollmessage_614a523e public."PollMessage" [table] type text not null poll_message_id int8 not null registrar_id text not null contact_repo_id text contact_history_revision_id int8 domain_repo_id text domain_history_revision_id int8 event_time timestamptz not null host_repo_id text host_history_revision_id int8 message text transfer_response_contact_id text transfer_response_domain_expiration_time timestamptz transfer_response_domain_name text pending_action_response_action_result bool pending_action_response_name_or_id text pending_action_response_processed_date timestamptz pending_action_response_client_txn_id text pending_action_response_server_txn_id text transfer_response_gaining_registrar_id text transfer_response_losing_registrar_id text transfer_response_pending_transfer_expiration_time timestamptz transfer_response_transfer_request_time timestamptz transfer_response_transfer_status text autorenew_end_time timestamptz autorenew_domain_name text transfer_response_host_id text - pollmessage_614a523e:w->domain_6c51cffa:e fk_poll_message_domain_repo_id + pollmessage_614a523e:w->domain_6c51cffa:e fk_poll_message_domain_repo_id - pollmessage_614a523e:w->host_f21b78de:e fk_poll_message_host_repo_id + 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 + 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->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_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_gaining_registrar_id - pollmessage_614a523e:w->registrar_6e1503e3:e fk_poll_message_transfer_response_losing_registrar_id + pollmessage_614a523e:w->registrar_6e1503e3:e fk_poll_message_transfer_response_losing_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 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 - 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 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 - 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 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->tld_f1fa57e2:e fk_domain_transaction_record_tld + domaintransactionrecord_6e77ff61:w->tld_f1fa57e2:e fk_domain_transaction_record_tld - featureflag_3ee43a78 public."FeatureFlag" [table] feature_name text not null status hstore not null + featureflag_3ee43a78 public."FeatureFlag" [table] feature_name text not null status hstore not null - 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 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 - hosthistory_56210c2:w->host_f21b78de:e fk_hosthistory_host + hosthistory_56210c2:w->host_f21b78de:e fk_hosthistory_host - hosthistory_56210c2:w->registrar_6e1503e3:e fk_history_registrar_id + 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 + 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 + 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 - passwordresetrequest_8484e7b1 public."PasswordResetRequest" [table] type text not null request_time timestamptz not null requester text not null fulfillment_time timestamptz destination_email text not null verification_code text not null registrar_id text not null + passwordresetrequest_8484e7b1 public."PasswordResetRequest" [table] type text not null request_time timestamptz not null requester text not null fulfillment_time timestamptz destination_email text not null verification_code text not null registrar_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 + 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 + 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 + 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 + 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 public."RegistrarPoc" [table] email_address text not null allowed_to_set_registry_lock_password bool fax_number text name text phone_number text registry_lock_password_hash text registry_lock_password_salt text types _text visible_in_domain_whois_as_abuse bool not null visible_in_whois_as_admin bool not null visible_in_whois_as_tech bool not null registry_lock_email_address text registrar_id text not null id bigserial not null auto-incremented + registrarpoc_ab47054d public."RegistrarPoc" [table] email_address text not null allowed_to_set_registry_lock_password bool fax_number text name text phone_number text registry_lock_password_hash text registry_lock_password_salt text types _text visible_in_domain_whois_as_abuse bool not null visible_in_whois_as_admin bool not null visible_in_whois_as_tech bool not null registry_lock_email_address text registrar_id text not null id bigserial not null auto-incremented - registrarpoc_ab47054d:w->registrar_6e1503e3:e fk_registrar_poc_registrar_id + registrarpoc_ab47054d:w->registrar_6e1503e3:e fk_registrar_poc_registrar_id - registrarupdatehistory_8a38bed4 public."RegistrarUpdateHistory" [table] history_revision_id int8 not null history_modification_time timestamptz not null history_method text not null history_request_body text history_type text not null history_url 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_expiring_cert_notification_sent_date timestamptz last_expiring_failover_cert_notification_sent_date 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 update_timestamp timestamptz registrar_id text not null history_acting_user text not null + registrarupdatehistory_8a38bed4 public."RegistrarUpdateHistory" [table] history_revision_id int8 not null history_modification_time timestamptz not null history_method text not null history_request_body text history_type text not null history_url 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_expiring_cert_notification_sent_date timestamptz last_expiring_failover_cert_notification_sent_date 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 update_timestamp timestamptz registrar_id text not null history_acting_user text not null - registrarupdatehistory_8a38bed4:w->registrar_6e1503e3:e fkregistrarupdatehistoryregistrarid + registrarupdatehistory_8a38bed4:w->registrar_6e1503e3:e fkregistrarupdatehistoryregistrarid - registrarpocupdatehistory_31e5d9aa public."RegistrarPocUpdateHistory" [table] history_revision_id int8 not null history_modification_time timestamptz not null history_method text not null history_request_body text history_type text not null history_url text not null email_address text not null registrar_id text not null allowed_to_set_registry_lock_password bool not null fax_number text login_email_address text name text phone_number text registry_lock_email_address text registry_lock_password_hash text registry_lock_password_salt text types _text visible_in_domain_whois_as_abuse bool not null visible_in_whois_as_admin bool not null visible_in_whois_as_tech bool not null history_acting_user text not null + registrarpocupdatehistory_31e5d9aa public."RegistrarPocUpdateHistory" [table] history_revision_id int8 not null history_modification_time timestamptz not null history_method text not null history_request_body text history_type text not null history_url text not null email_address text not null registrar_id text not null allowed_to_set_registry_lock_password bool not null fax_number text login_email_address text name text phone_number text registry_lock_email_address text registry_lock_password_hash text registry_lock_password_salt text types _text visible_in_domain_whois_as_abuse bool not null visible_in_whois_as_admin bool not null visible_in_whois_as_tech bool not null history_acting_user text not null - registrarpocupdatehistory_31e5d9aa:w->registrarpoc_ab47054d:e fkregistrarpocupdatehistoryemailaddress + registrarpocupdatehistory_31e5d9aa:w->registrarpoc_ab47054d:e fkregistrarpocupdatehistoryemailaddress - registrarpocupdatehistory_31e5d9aa:w->registrarpoc_ab47054d:e fkregistrarpocupdatehistoryemailaddress + registrarpocupdatehistory_31e5d9aa:w->registrarpoc_ab47054d:e fkregistrarpocupdatehistoryemailaddress - 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 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 + 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 + 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 + reservedlist_b97c3f1c public."ReservedList" [table] revision_id bigserial not null auto-incremented creation_timestamp timestamptz not null name text not null - reservedentry_1a7b8520:w->reservedlist_b97c3f1c:e fkgq03rk0bt1hb915dnyvd3vnfc + reservedentry_1a7b8520:w->reservedlist_b97c3f1c:e fkgq03rk0bt1hb915dnyvd3vnfc - serversecret_6cc90f09 public."ServerSecret" [table] secret uuid not null id int8 not null + 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 + 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 + signedmarkrevocationlist_c5d968fb public."SignedMarkRevocationList" [table] revision_id bigserial not null auto-incremented creation_time timestamptz - signedmarkrevocationentry_99c39721:w->signedmarkrevocationlist_c5d968fb:e fk5ivlhvs3121yx2li5tqh54u4 + 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 + 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 + tmchcrl_d282355 public."TmchCrl" [table] certificate_revocations text not null update_timestamp timestamptz not null url text not null id int8 not null - userupdatehistory_24efd476 public."UserUpdateHistory" [table] history_revision_id int8 not null history_modification_time timestamptz not null history_method text not null history_request_body text history_type text not null history_url text not null email_address text not null registry_lock_password_hash text registry_lock_password_salt text global_role text not null is_admin bool not null registrar_roles hstore update_timestamp timestamptz history_acting_user text not null registry_lock_email_address text + userupdatehistory_24efd476 public."UserUpdateHistory" [table] history_revision_id int8 not null history_modification_time timestamptz not null history_method text not null history_request_body text history_type text not null history_url text not null email_address text not null registry_lock_password_hash text registry_lock_password_salt text global_role text not null is_admin bool not null registrar_roles hstore update_timestamp timestamptz history_acting_user text not null registry_lock_email_address text @@ -8786,13 +8786,13 @@ td.section {
- expiry_access_period_enabled - bool not null + expiry_access_period_transitions + hstore not null
- default false + default '"1970-01-01T00:00:00.000Z"=>"DISABLED"'::hstore
diff --git a/db/src/main/resources/sql/flyway.txt b/db/src/main/resources/sql/flyway.txt index 358974578..8cfc53dcb 100644 --- a/db/src/main/resources/sql/flyway.txt +++ b/db/src/main/resources/sql/flyway.txt @@ -220,3 +220,4 @@ V219__domain_history_package_token_idx.sql V220__domain_package_token_idx.sql V221__remove_contact_history.sql V222__remove_contact.sql +V223__tld_change_xap_enabled_to_transitions.sql diff --git a/db/src/main/resources/sql/flyway/V223__tld_change_xap_enabled_to_transitions.sql b/db/src/main/resources/sql/flyway/V223__tld_change_xap_enabled_to_transitions.sql new file mode 100644 index 000000000..22f08a153 --- /dev/null +++ b/db/src/main/resources/sql/flyway/V223__tld_change_xap_enabled_to_transitions.sql @@ -0,0 +1,25 @@ +-- Copyright 2026 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 the old unused boolean column. Since it was never mapped in Tld.java +-- on master, no running servers map or use it, making it completely safe to drop. +ALTER TABLE "Tld" DROP COLUMN expiry_access_period_enabled; + +-- Add the new transitions column as NOT NULL with a temporary DEFAULT value to +-- ensure backward compatibility with the running servers (old Java code) during +-- the transition phase of the deployment. +-- TODO(mcilwain): Drop this DEFAULT constraint in a subsequent schema release +-- once the Java code mapping this column has been fully deployed. +ALTER TABLE "Tld" ADD COLUMN expiry_access_period_transitions hstore + DEFAULT '"1970-01-01T00:00:00.000Z"=>"DISABLED"'::hstore 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 ca538453f..d45bf2060 100644 --- a/db/src/main/resources/sql/schema/nomulus.golden.sql +++ b/db/src/main/resources/sql/schema/nomulus.golden.sql @@ -1205,7 +1205,7 @@ CREATE TABLE public."Tld" ( breakglass_mode boolean DEFAULT false NOT NULL, bsa_enroll_start_time timestamp with time zone, create_billing_cost_transitions public.hstore NOT NULL, - expiry_access_period_enabled boolean DEFAULT false NOT NULL + expiry_access_period_transitions public.hstore DEFAULT '"1970-01-01T00:00:00.000Z"=>"DISABLED"'::public.hstore NOT NULL );