diff --git a/core/src/test/resources/google/registry/webdriver/goldens/chrome-linux/ConsoleScreenshotTest_dums_mainPage_actionsButtonClicked.png b/core/src/test/resources/google/registry/webdriver/goldens/chrome-linux/ConsoleScreenshotTest_dums_mainPage_actionsButtonClicked.png index 24ae8ca93..659db91e7 100644 Binary files a/core/src/test/resources/google/registry/webdriver/goldens/chrome-linux/ConsoleScreenshotTest_dums_mainPage_actionsButtonClicked.png and b/core/src/test/resources/google/registry/webdriver/goldens/chrome-linux/ConsoleScreenshotTest_dums_mainPage_actionsButtonClicked.png differ diff --git a/core/src/test/resources/google/registry/webdriver/goldens/chrome-linux/ConsoleScreenshotTest_dums_mainPage_registrarSelected.png b/core/src/test/resources/google/registry/webdriver/goldens/chrome-linux/ConsoleScreenshotTest_dums_mainPage_registrarSelected.png index 9a2bdd6e7..97cf3ad82 100644 Binary files a/core/src/test/resources/google/registry/webdriver/goldens/chrome-linux/ConsoleScreenshotTest_dums_mainPage_registrarSelected.png and b/core/src/test/resources/google/registry/webdriver/goldens/chrome-linux/ConsoleScreenshotTest_dums_mainPage_registrarSelected.png differ diff --git a/db/src/main/java/google/registry/persistence/NomulusPostgreSql.java b/db/src/main/java/google/registry/persistence/NomulusPostgreSql.java index 65ef933ac..c4986930a 100644 --- a/db/src/main/java/google/registry/persistence/NomulusPostgreSql.java +++ b/db/src/main/java/google/registry/persistence/NomulusPostgreSql.java @@ -23,7 +23,7 @@ public class NomulusPostgreSql { /** The current PostgreSql version in Cloud SQL. */ // TODO(weiminyu): setup periodic checks to detect version changes in Cloud SQL. - private static final String TARGET_VERSION = "11.21-alpine"; + private static final String TARGET_VERSION = "17-alpine"; /** * Returns the docker image of the targeted Postgresql server version. 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 dc6b0d8fa..17c514263 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,11 +257,11 @@ td.section { generated by - SchemaCrawler 16.23.2 + SchemaCrawler 16.25.2 generated on - 2024-12-09 22:31:09 + 2025-02-16 20:10:13 last flyway file @@ -278,9 +278,9 @@ td.section { generated by - SchemaCrawler 16.23.2 + SchemaCrawler 16.25.2 generated on - 2024-12-09 22:31:09 + 2025-02-16 20:10:13 @@ -2716,6 +2716,11 @@ td.section { <td class="minwidth">recurrence_last_expansion</td> <td class="minwidth">timestamptz not null</td> </tr> + <tr> + <td class="spacer"></td> + <td class="minwidth"></td> + <td class="minwidth">default '2021-05-31 20:00:00-04'::timestamp with time zone</td> + </tr> <tr> <td colspan="3"></td> </tr> @@ -2825,6 +2830,11 @@ td.section { <td class="minwidth"><b><i>job_id</i></b></td> <td class="minwidth">bigserial not null</td> </tr> + <tr> + <td class="spacer"></td> + <td class="minwidth"></td> + <td class="minwidth">default nextval('"BsaDomainRefresh_job_id_seq"'::regclass)</td> + </tr> <tr> <td class="spacer"></td> <td class="minwidth"></td> @@ -2861,6 +2871,11 @@ td.section { <td class="minwidth"><b><i>job_id</i></b></td> <td class="minwidth">bigserial not null</td> </tr> + <tr> + <td class="spacer"></td> + <td class="minwidth"></td> + <td class="minwidth">default nextval('"BsaDownload_job_id_seq"'::regclass)</td> + </tr> <tr> <td class="spacer"></td> <td class="minwidth"></td> @@ -3069,6 +3084,11 @@ td.section { <td class="minwidth"><b><i>revision_id</i></b></td> <td class="minwidth">bigserial not null</td> </tr> + <tr> + <td class="spacer"></td> + <td class="minwidth"></td> + <td class="minwidth">default nextval('"ClaimsList_revision_id_seq"'::regclass)</td> + </tr> <tr> <td class="spacer"></td> <td class="minwidth"></td> @@ -3639,6 +3659,11 @@ td.section { <td class="minwidth"><b><i>id</i></b></td> <td class="minwidth">bigserial not null</td> </tr> + <tr> + <td class="spacer"></td> + <td class="minwidth"></td> + <td class="minwidth">default nextval('"DnsRefreshRequest_id_seq"'::regclass)</td> + </tr> <tr> <td class="spacer"></td> <td class="minwidth"></td> @@ -3785,6 +3810,11 @@ td.section { <td class="minwidth">lordn_phase</td> <td class="minwidth">text not null</td> </tr> + <tr> + <td class="spacer"></td> + <td class="minwidth"></td> + <td class="minwidth">default 'NONE'::text</td> + </tr> <tr> <td colspan="3"></td> </tr> @@ -4334,6 +4364,11 @@ td.section { <td class="minwidth"><b><i>id</i></b></td> <td class="minwidth">bigserial not null</td> </tr> + <tr> + <td class="spacer"></td> + <td class="minwidth"></td> + <td class="minwidth">default nextval('"DomainTransactionRecord_id_seq"'::regclass)</td> + </tr> <tr> <td class="spacer"></td> <td class="minwidth"></td> @@ -4895,6 +4930,11 @@ td.section { <td class="minwidth"><b><i>package_promotion_id</i></b></td> <td class="minwidth">bigserial not null</td> </tr> + <tr> + <td class="spacer"></td> + <td class="minwidth"></td> + <td class="minwidth">default nextval('"Package_promotion_id_seq"'::regclass)</td> + </tr> <tr> <td class="spacer"></td> <td class="minwidth"></td> @@ -5188,6 +5228,11 @@ td.section { <td class="minwidth"><b><i>revision_id</i></b></td> <td class="minwidth">bigserial not null</td> </tr> + <tr> + <td class="spacer"></td> + <td class="minwidth"></td> + <td class="minwidth">default nextval('"PremiumList_revision_id_seq"'::regclass)</td> + </tr> <tr> <td class="spacer"></td> <td class="minwidth"></td> @@ -5873,6 +5918,11 @@ td.section { <td class="minwidth"><b><i>revision_id</i></b></td> <td class="minwidth">bigserial not null</td> </tr> + <tr> + <td class="spacer"></td> + <td class="minwidth"></td> + <td class="minwidth">default nextval('"RegistryLock_revision_id_seq"'::regclass)</td> + </tr> <tr> <td class="spacer"></td> <td class="minwidth"></td> @@ -6006,6 +6056,11 @@ td.section { <td class="minwidth"><b><i>revision_id</i></b></td> <td class="minwidth">bigserial not null</td> </tr> + <tr> + <td class="spacer"></td> + <td class="minwidth"></td> + <td class="minwidth">default nextval('"ReservedList_revision_id_seq"'::regclass)</td> + </tr> <tr> <td class="spacer"></td> <td class="minwidth"></td> @@ -6065,6 +6120,11 @@ td.section { <td class="minwidth"><b><i>id</i></b></td> <td class="minwidth">int8 not null</td> </tr> + <tr> + <td class="spacer"></td> + <td class="minwidth"></td> + <td class="minwidth">default 1</td> + </tr> <tr> <td colspan="3"></td> </tr> @@ -6155,6 +6215,11 @@ td.section { <td class="minwidth"><b><i>revision_id</i></b></td> <td class="minwidth">bigserial not null</td> </tr> + <tr> + <td class="spacer"></td> + <td class="minwidth"></td> + <td class="minwidth">default nextval('"SignedMarkRevocationList_revision_id_seq"'::regclass)</td> + </tr> <tr> <td class="spacer"></td> <td class="minwidth"></td> @@ -6209,6 +6274,11 @@ td.section { <td class="minwidth"><b><i>id</i></b></td> <td class="minwidth">bigserial not null</td> </tr> + <tr> + <td class="spacer"></td> + <td class="minwidth"></td> + <td class="minwidth">default nextval('"SafeBrowsingThreat_id_seq"'::regclass)</td> + </tr> <tr> <td class="spacer"></td> <td class="minwidth"></td> @@ -6321,6 +6391,11 @@ td.section { <td class="minwidth"><b><i>id</i></b></td> <td class="minwidth">int8 not null</td> </tr> + <tr> + <td class="spacer"></td> + <td class="minwidth"></td> + <td class="minwidth">default 1</td> + </tr> <tr> <td colspan="3"></td> </tr> 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 dc21dc17b..db3367e48 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,11 +257,11 @@ td.section { <tbody> <tr> <td class="property_name">generated by</td> - <td class="property_value">SchemaCrawler 16.23.2</td> + <td class="property_value">SchemaCrawler 16.25.2</td> </tr> <tr> <td class="property_name">generated on</td> - <td class="property_value">2024-12-09 22:31:07</td> + <td class="property_value">2025-02-16 20:10:10</td> </tr> <tr> <td class="property_name">last flyway file</td> @@ -278,9 +278,9 @@ td.section { generated by - SchemaCrawler 16.23.2 + SchemaCrawler 16.25.2 generated on - 2024-12-09 22:31:07 + 2025-02-16 20:10:10 @@ -3986,11 +3986,21 @@ td.section { <td class="minwidth">renewal_price_behavior</td> <td class="minwidth">text not null</td> </tr> + <tr> + <td class="spacer"></td> + <td class="minwidth"></td> + <td class="minwidth">default 'DEFAULT'::text</td> + </tr> <tr> <td class="spacer"></td> <td class="minwidth">registration_behavior</td> <td class="minwidth">text not null</td> </tr> + <tr> + <td class="spacer"></td> + <td class="minwidth"></td> + <td class="minwidth">default 'DEFAULT'::text</td> + </tr> <tr> <td class="spacer"></td> <td class="minwidth">allowed_epp_actions</td> @@ -4755,6 +4765,11 @@ td.section { <td class="minwidth">renewal_price_behavior</td> <td class="minwidth">text not null</td> </tr> + <tr> + <td class="spacer"></td> + <td class="minwidth"></td> + <td class="minwidth">default 'DEFAULT'::text</td> + </tr> <tr> <td class="spacer"></td> <td class="minwidth">renewal_price_currency</td> @@ -4770,6 +4785,11 @@ td.section { <td class="minwidth">recurrence_last_expansion</td> <td class="minwidth">timestamptz not null</td> </tr> + <tr> + <td class="spacer"></td> + <td class="minwidth"></td> + <td class="minwidth">default '2021-05-31 20:00:00-04'::timestamp with time zone</td> + </tr> <tr> <td colspan="3"></td> </tr> @@ -4986,6 +5006,11 @@ td.section { <td class="minwidth"><b><i>job_id</i></b></td> <td class="minwidth">bigserial not null</td> </tr> + <tr> + <td class="spacer"></td> + <td class="minwidth"></td> + <td class="minwidth">default nextval('"BsaDomainRefresh_job_id_seq"'::regclass)</td> + </tr> <tr> <td class="spacer"></td> <td class="minwidth"></td> @@ -5055,6 +5080,11 @@ td.section { <td class="minwidth"><b><i>job_id</i></b></td> <td class="minwidth">bigserial not null</td> </tr> + <tr> + <td class="spacer"></td> + <td class="minwidth"></td> + <td class="minwidth">default nextval('"BsaDownload_job_id_seq"'::regclass)</td> + </tr> <tr> <td class="spacer"></td> <td class="minwidth"></td> @@ -5392,6 +5422,11 @@ td.section { <td class="minwidth"><b><i>revision_id</i></b></td> <td class="minwidth">bigserial not null</td> </tr> + <tr> + <td class="spacer"></td> + <td class="minwidth"></td> + <td class="minwidth">default nextval('"ClaimsList_revision_id_seq"'::regclass)</td> + </tr> <tr> <td class="spacer"></td> <td class="minwidth"></td> @@ -6866,6 +6901,11 @@ td.section { <td class="minwidth"><b><i>id</i></b></td> <td class="minwidth">bigserial not null</td> </tr> + <tr> + <td class="spacer"></td> + <td class="minwidth"></td> + <td class="minwidth">default nextval('"DnsRefreshRequest_id_seq"'::regclass)</td> + </tr> <tr> <td class="spacer"></td> <td class="minwidth"></td> @@ -7224,6 +7264,11 @@ td.section { <td class="minwidth">lordn_phase</td> <td class="minwidth">text not null</td> </tr> + <tr> + <td class="spacer"></td> + <td class="minwidth"></td> + <td class="minwidth">default 'NONE'::text</td> + </tr> <tr> <td class="spacer"></td> <td class="minwidth">last_update_time_via_epp</td> @@ -8154,6 +8199,11 @@ td.section { <td class="minwidth">lordn_phase</td> <td class="minwidth">text not null</td> </tr> + <tr> + <td class="spacer"></td> + <td class="minwidth"></td> + <td class="minwidth">default 'NONE'::text</td> + </tr> <tr> <td class="spacer"></td> <td class="minwidth">last_update_time_via_epp</td> @@ -8494,6 +8544,11 @@ td.section { <td class="minwidth"><b><i>id</i></b></td> <td class="minwidth">bigserial not null</td> </tr> + <tr> + <td class="spacer"></td> + <td class="minwidth"></td> + <td class="minwidth">default nextval('"DomainTransactionRecord_id_seq"'::regclass)</td> + </tr> <tr> <td class="spacer"></td> <td class="minwidth"></td> @@ -9622,6 +9677,11 @@ td.section { <td class="minwidth"><b><i>package_promotion_id</i></b></td> <td class="minwidth">bigserial not null</td> </tr> + <tr> + <td class="spacer"></td> + <td class="minwidth"></td> + <td class="minwidth">default nextval('"Package_promotion_id_seq"'::regclass)</td> + </tr> <tr> <td class="spacer"></td> <td class="minwidth"></td> @@ -10154,6 +10214,11 @@ td.section { <td class="minwidth"><b><i>revision_id</i></b></td> <td class="minwidth">bigserial not null</td> </tr> + <tr> + <td class="spacer"></td> + <td class="minwidth"></td> + <td class="minwidth">default nextval('"PremiumList_revision_id_seq"'::regclass)</td> + </tr> <tr> <td class="spacer"></td> <td class="minwidth"></td> @@ -11688,6 +11753,11 @@ td.section { <td class="minwidth"><b><i>revision_id</i></b></td> <td class="minwidth">bigserial not null</td> </tr> + <tr> + <td class="spacer"></td> + <td class="minwidth"></td> + <td class="minwidth">default nextval('"RegistryLock_revision_id_seq"'::regclass)</td> + </tr> <tr> <td class="spacer"></td> <td class="minwidth"></td> @@ -11958,6 +12028,11 @@ td.section { <td class="minwidth"><b><i>revision_id</i></b></td> <td class="minwidth">bigserial not null</td> </tr> + <tr> + <td class="spacer"></td> + <td class="minwidth"></td> + <td class="minwidth">default nextval('"ReservedList_revision_id_seq"'::regclass)</td> + </tr> <tr> <td class="spacer"></td> <td class="minwidth"></td> @@ -12057,6 +12132,11 @@ td.section { <td class="minwidth"><b><i>id</i></b></td> <td class="minwidth">int8 not null</td> </tr> + <tr> + <td class="spacer"></td> + <td class="minwidth"></td> + <td class="minwidth">default 1</td> + </tr> <tr> <td colspan="3"></td> </tr> @@ -12193,6 +12273,11 @@ td.section { <td class="minwidth"><b><i>revision_id</i></b></td> <td class="minwidth">bigserial not null</td> </tr> + <tr> + <td class="spacer"></td> + <td class="minwidth"></td> + <td class="minwidth">default nextval('"SignedMarkRevocationList_revision_id_seq"'::regclass)</td> + </tr> <tr> <td class="spacer"></td> <td class="minwidth"></td> @@ -12270,6 +12355,11 @@ td.section { <td class="minwidth"><b><i>id</i></b></td> <td class="minwidth">bigserial not null</td> </tr> + <tr> + <td class="spacer"></td> + <td class="minwidth"></td> + <td class="minwidth">default nextval('"SafeBrowsingThreat_id_seq"'::regclass)</td> + </tr> <tr> <td class="spacer"></td> <td class="minwidth"></td> @@ -12595,6 +12685,11 @@ td.section { <td class="minwidth">breakglass_mode</td> <td class="minwidth">bool not null</td> </tr> + <tr> + <td class="spacer"></td> + <td class="minwidth"></td> + <td class="minwidth">default false</td> + </tr> <tr> <td class="spacer"></td> <td class="minwidth">bsa_enroll_start_time</td> @@ -12699,6 +12794,11 @@ td.section { <td class="minwidth"><b><i>id</i></b></td> <td class="minwidth">int8 not null</td> </tr> + <tr> + <td class="spacer"></td> + <td class="minwidth"></td> + <td class="minwidth">default 1</td> + </tr> <tr> <td colspan="3"></td> </tr> diff --git a/db/src/main/resources/sql/schema/nomulus.golden.sql b/db/src/main/resources/sql/schema/nomulus.golden.sql index f5e07aa12..98c93aceb 100644 --- a/db/src/main/resources/sql/schema/nomulus.golden.sql +++ b/db/src/main/resources/sql/schema/nomulus.golden.sql @@ -2,12 +2,13 @@ -- PostgreSQL database dump -- --- Dumped from database version 11.21 --- Dumped by pg_dump version 11.21 +-- Dumped from database version 17.3 +-- Dumped by pg_dump version 17.3 SET statement_timeout = 0; SET lock_timeout = 0; SET idle_in_transaction_session_timeout = 0; +SET transaction_timeout = 0; SET client_encoding = 'UTF8'; SET standard_conforming_strings = on; SELECT pg_catalog.set_config('search_path', '', false); @@ -32,7 +33,7 @@ COMMENT ON EXTENSION hstore IS 'data type for storing sets of (key, value) pairs SET default_tablespace = ''; -SET default_with_oids = false; +SET default_table_access_method = heap; -- -- Name: AllocationToken; Type: TABLE; Schema: public; Owner: - diff --git a/release/builder/Dockerfile b/release/builder/Dockerfile index fbef2f482..8b716ef77 100644 --- a/release/builder/Dockerfile +++ b/release/builder/Dockerfile @@ -28,7 +28,7 @@ COPY go.sum ./ COPY go.mod ./ RUN go build -o /deployCloudSchedulerAndQueue -FROM marketplace.gcr.io/google/ubuntu2204 +FROM marketplace.gcr.io/google/ubuntu2404 ENV DEBIAN_FRONTEND=noninteractive LANG=en_US.UTF-8 # Add script for cloud scheduler and cloud tasks deployment COPY --from=deployCloudSchedulerAndQueueBuilder /deployCloudSchedulerAndQueue /usr/local/bin/deployCloudSchedulerAndQueue diff --git a/release/builder/build.sh b/release/builder/build.sh index ae09041bb..93010db4f 100755 --- a/release/builder/build.sh +++ b/release/builder/build.sh @@ -43,10 +43,6 @@ apt-get install openjdk-21-jdk-headless -y # Install Python apt-get install python3 -y -# As of March 2021 python3 is at v3.6. Get pip then install dataclasses -# (introduced in 3.7) for nom_build -apt-get install python3-pip -y -python3 -m pip install dataclasses # Install Node apt-get install npm -y @@ -57,7 +53,7 @@ npm install -g n for i in {1..5}; do n 22.7.0 && break || sleep 15; done # Install gp_dump -apt-get install postgresql-client-11 procps -y +apt-get install postgresql-client-17 procps -y # Install gcloud apt-get install google-cloud-cli -y diff --git a/release/schema-verifier/allowed_diffs.txt b/release/schema-verifier/allowed_diffs.txt index 829829161..879ce5a89 100644 --- a/release/schema-verifier/allowed_diffs.txt +++ b/release/schema-verifier/allowed_diffs.txt @@ -3,3 +3,6 @@ COMMENT ON EXTENSION pgaudit IS 'provides auditing functionality'; SET default_with_oids = false; CREATE EXTENSION IF NOT EXISTS pg_stat_statements WITH SCHEMA public; COMMENT ON EXTENSION pg_stat_statements IS 'track execution statistics of all SQL statements executed'; +SET transaction_timeout = 0; +SET default_table_access_method = heap; +SET default_with_oids = false;