diff --git a/.github/workflows/build.scala_test.yml b/.github/workflows/build.scala_test.yml index fa98cf6d22..6cd25f2443 100644 --- a/.github/workflows/build.scala_test.yml +++ b/.github/workflows/build.scala_test.yml @@ -58,6 +58,11 @@ on: required: false type: boolean default: false + postgres_image: + description: "The image to use for PostgreSQL" + required: false + type: string + default: "postgres:17" jobs: @@ -109,9 +114,10 @@ jobs: services: postgres: - image: us-central1-docker.pkg.dev/da-cn-shared/ghcr/digital-asset/decentralized-canton-sync-dev/docker/splice-test-postgres:0.3.12 + image: ${{ inputs.postgres_image }} env: POSTGRES_PASSWORD: postgres + POSTGRES_INITDB_ARGS: "-c max_connections=16000" steps: diff --git a/.github/workflows/build.scala_test_for_compose.yml b/.github/workflows/build.scala_test_for_compose.yml index 88dc1d44a5..a75fb9cefd 100644 --- a/.github/workflows/build.scala_test_for_compose.yml +++ b/.github/workflows/build.scala_test_for_compose.yml @@ -73,9 +73,10 @@ jobs: services: postgres: - image: us-central1-docker.pkg.dev/da-cn-shared/ghcr/digital-asset/decentralized-canton-sync-dev/docker/splice-test-postgres:0.3.12 + image: postgres:17 env: POSTGRES_PASSWORD: postgres + POSTGRES_INITDB_ARGS: "-c max_connections=16000" ports: - 5432:5432 diff --git a/.github/workflows/build.scala_test_with_cometbft.yml b/.github/workflows/build.scala_test_with_cometbft.yml index 66814e6b1f..d0cdb1a6ac 100644 --- a/.github/workflows/build.scala_test_with_cometbft.yml +++ b/.github/workflows/build.scala_test_with_cometbft.yml @@ -68,9 +68,10 @@ jobs: services: postgres: - image: us-central1-docker.pkg.dev/da-cn-shared/ghcr/digital-asset/decentralized-canton-sync-dev/docker/splice-test-postgres:0.3.12 + image: postgres:17 env: POSTGRES_PASSWORD: postgres + POSTGRES_INITDB_ARGS: "-c max_connections=16000" cometbft1: image: us-central1-docker.pkg.dev/da-cn-shared/ghcr/digital-asset/decentralized-canton-sync-dev/docker/splice-test-cometbft:0.3.12 diff --git a/.github/workflows/build.wallclock_pg14.yml b/.github/workflows/build.wallclock_pg14.yml new file mode 100644 index 0000000000..efa885407d --- /dev/null +++ b/.github/workflows/build.wallclock_pg14.yml @@ -0,0 +1,28 @@ +name: Wall Clock Tests with Postgres 14 + +on: + # Scheduled workflows run on the latest commit on the default or base branch. + schedule: + - cron: "0 5 * * *" # Runs every night at 5AM UTC + +permissions: + id-token: write # Required for GCP Workload Identity for failure notifications + contents: read + +jobs: + scala_test_wall_clock_time: + uses: ./.github/workflows/build.scala_test.yml + with: + runs_on: self-hosted-k8s-large + test_names_file: 'test-full-class-names.log' + start_canton_options: -w + # TODO(DACH-NY/canton-network-node#10912) Investigate why things got slower + parallelism: 11 + test_name: wall-clock-time + with_gcp_creds: true + skip_if_regex: "\\[bft\\]" + commit_sha: "" + daml_base_version: "" + # This is the Postgres 14 image we built for testing. From 17 onwards, we use the official image. + postgres_image: us-central1-docker.pkg.dev/da-cn-shared/ghcr/digital-asset/decentralized-canton-sync-dev/docker/splice-test-postgres:0.3.12 + secrets: inherit diff --git a/project/CantonDependencies.scala b/project/CantonDependencies.scala index 32f0cb4185..dd9c723101 100644 --- a/project/CantonDependencies.scala +++ b/project/CantonDependencies.scala @@ -70,7 +70,7 @@ object CantonDependencies { lazy val hikaricp = "com.zaxxer" % "HikariCP" % "3.2.0" lazy val h2 = "com.h2database" % "h2" % "2.1.210" lazy val postgres = "org.postgresql" % "postgresql" % "42.7.3" - private val flyway_version = "10.12.0" + private val flyway_version = "10.22.0" lazy val flyway = "org.flywaydb" % "flyway-core" % flyway_version lazy val flyway_postgresql = "org.flywaydb" % "flyway-database-postgresql" % flyway_version lazy val oracle = "com.oracle.database.jdbc" % "ojdbc8" % "19.13.0.0.1" diff --git a/scripts/postgres.sh b/scripts/postgres.sh index bf6e5e8c6f..81978d7711 100755 --- a/scripts/postgres.sh +++ b/scripts/postgres.sh @@ -5,7 +5,7 @@ set -eou pipefail -DOCKER_POSTGRES_IMAGE_NAME="postgres:14" +DOCKER_POSTGRES_IMAGE_NAME="postgres:17" # Postgres settings DOCKER_POSTGRES_CONTAINER_NAME="postgres-for-splice-node"