Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Add PostgreSQL version 17 benchmarks #10536

Merged
merged 11 commits into from
Jan 29, 2025
Merged

Conversation

Bodobolero
Copy link
Contributor

@Bodobolero Bodobolero commented Jan 28, 2025

Problem

benchmarking.yml so far is only running benchmarks with PostgreSQL version 16.
However neon recently changed the default for new customers to PostgreSQL version 17.

See related epic

Summary of changes

We do not want to run every job step with both pg 16 and 17 because this would need excessive resources (runners, computes) and extend the benchmarking run wall clock time too much.

So we select an opinionated subset of testcases that we also report in weekly reporting and add a postgres v17 job step.

For re-use projects associated Neon projects have been created and connection strings have been added to neon database organization secrets.

A follow up is to add the reporting for these new runs to some grafana dashboards.

@Bodobolero Bodobolero requested a review from a team as a code owner January 28, 2025 13:25
Copy link

github-actions bot commented Jan 28, 2025

7440 tests run: 7089 passed, 0 failed, 351 skipped (full report)


Flaky tests (10)

Postgres 17

Postgres 15

Code coverage* (full report)

  • functions: 33.3% (8497 of 25495 functions)
  • lines: 49.1% (71426 of 145528 lines)

* collected from Rust tests only


The comment gets automatically updated with the latest test results
3657f1e at 2025-01-29T20:29:50.500Z :recycle:

Copy link
Contributor

@a-masterov a-masterov left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

LGTM

@Bodobolero Bodobolero enabled auto-merge January 29, 2025 14:16
@Bodobolero Bodobolero added this pull request to the merge queue Jan 29, 2025
Merged via the queue into main with commit 62819ac Jan 29, 2025
103 of 124 checks passed
@Bodobolero Bodobolero deleted the bodobolero/benchmarking_pg17 branch January 29, 2025 20:22
github-merge-queue bot pushed a commit that referenced this pull request Jan 30, 2025
…0587)

## Problem

for OLAP benchmarks we need specific connstr secrets with different
database names for each job step

This is a follow-up for #10536
In previous PR we used a common GitHub secret for a shared re-use
project that has 4 databases: neondb, tpch, clickbench and userexamples.

[Failure
example](https://neon-github-public-dev.s3.amazonaws.com/reports/main/13044872855/index.html#suites/54d0af6f403f1d8611e8894c2e07d023/fc029330265e9f6e/):


```log
# /tmp/neon/pg_install/v17/bin/psql user=neondb_owner dbname=neondb host=ep-broad-brook-w2luwzzv.us-east-2.aws.neon.build sslmode=require options='-cstatement_timeout=0 ' -c -- $ID$
-- TPC-H/TPC-R Pricing Summary Report Query (Q1)
-- Functional Query Definition
-- Approved February 1998
...
ERROR:  relation "lineitem" does not exist

```

## Summary of changes

We need dedicated GitHub secrets and dedicated connection strings for
each of the use cases.

## Test run
https://github.com/neondatabase/neon/actions/runs/13053968231
winter-loo pushed a commit to winter-loo/neon that referenced this pull request Feb 4, 2025
## Problem

benchmarking.yml so far is only running benchmarks with PostgreSQL
version 16.
However neon recently changed the default for new customers to
PostgreSQL version 17.

See related [epic](https://github.com/neondatabase/cloud/issues/23295)

## Summary of changes

We do not want to run every job step with both pg 16 and 17 because this
would need excessive resources (runners, computes) and extend the
benchmarking run wall clock time too much.

So we select an opinionated subset of testcases that we also report in
weekly reporting and add a postgres v17 job step.

For re-use projects associated Neon projects have been created and
connection strings have been added to neon database organization
secrets.

A follow up is to add the reporting for these new runs to some grafana
dashboards.
winter-loo pushed a commit to winter-loo/neon that referenced this pull request Feb 4, 2025
…ondatabase#10587)

## Problem

for OLAP benchmarks we need specific connstr secrets with different
database names for each job step

This is a follow-up for neondatabase#10536
In previous PR we used a common GitHub secret for a shared re-use
project that has 4 databases: neondb, tpch, clickbench and userexamples.

[Failure
example](https://neon-github-public-dev.s3.amazonaws.com/reports/main/13044872855/index.html#suites/54d0af6f403f1d8611e8894c2e07d023/fc029330265e9f6e/):


```log
# /tmp/neon/pg_install/v17/bin/psql user=neondb_owner dbname=neondb host=ep-broad-brook-w2luwzzv.us-east-2.aws.neon.build sslmode=require options='-cstatement_timeout=0 ' -c -- $ID$
-- TPC-H/TPC-R Pricing Summary Report Query (Q1)
-- Functional Query Definition
-- Approved February 1998
...
ERROR:  relation "lineitem" does not exist

```

## Summary of changes

We need dedicated GitHub secrets and dedicated connection strings for
each of the use cases.

## Test run
https://github.com/neondatabase/neon/actions/runs/13053968231
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

3 participants