Skip to content

impl(bq_driver): Adding performance pipeline for linux - #1638

Open
KanchanShu wants to merge 2 commits into
mainfrom
linux_perf_check
Open

KanchanShu wants to merge 2 commits into
mainfrom
linux_perf_check

Conversation

@KanchanShu

@KanchanShu KanchanShu commented Aug 19, 2026

Copy link
Copy Markdown
Contributor

This PR add Linux ODBC Performance Benchmark Pipeline

Summary

Adds a dedicated Linux performance benchmark pipeline for the BigQuery ODBC driver.

Changes

  • Builds and runs performance_test using CMake.
  • Benchmarks the Existing, Current, and Main Google ODBC drivers.
  • Runs each benchmark multiple times and uses the median execution time.
  • Adds benchmark_results.py to parse results and generate a comparison table with performance percentage changes.
  • Downloads driver artifacts and uploads benchmark results to GCS.
  • Adds a Cloud Build configuration to run the benchmark pipeline on main.

Result

Provides automated Linux performance comparison between the existing driver, current branch, and main to identify performance improvements or regressions.

Benchmark Results: Linux Performance Benchmark Results

@KanchanShu
KanchanShu force-pushed the linux_perf_check branch 3 times, most recently from e5a1626 to 06bff4f Compare August 26, 2026 12:19
@shivamd-gpartner
shivamd-gpartner marked this pull request as ready for review August 26, 2026 13:59
@shivamd-gpartner
shivamd-gpartner requested a review from a team as a code owner August 26, 2026 13:59
@shivamd-gpartner

Copy link
Copy Markdown
Contributor

new_timestamp_table test case seems failing on our driver @KanchanShu can you see that

@@ -0,0 +1,29 @@
# Copyright 2025 Google LLC

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

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

nit: please make it 2026

Copy link
Copy Markdown
Contributor Author

Choose a reason for hiding this comment

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

Done

# This is the name of DSN set in odbc.ini.
mapfile -t cmake_args < <(cmake::common_args)

GOOGLE_ODBCINI="/opt/odbc-driver/odbc.ini"

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

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

seems duplicate declaration

Copy link
Copy Markdown
Contributor Author

Choose a reason for hiding this comment

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

removed it

@shivamd-gpartner

Copy link
Copy Markdown
Contributor

@sachinpro this is pending your review, please take a look

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.

2 participants