Skip to content

feat: add hidden datafusion bench bridge #65

feat: add hidden datafusion bench bridge

feat: add hidden datafusion bench bridge #65

name: python_benchmark
# This is separate from the python_build so that it doesn't need to run on the merge group
on:
push:
branches: [main]
defaults:
run:
working-directory: ./python
jobs:
benchmark:
name: Python Benchmark
runs-on: ubuntu-latest
steps:
# v6.0.2
- uses: actions/checkout@de0fac2e4500dabe0009e67214ff5f5447ce83dd
- name: Setup Environment
uses: ./.github/actions/setup-env
- name: Build deltalake in release mode
run: |
PROFILE=ci make develop
# Download previous benchmark result from cache (if exists)
- name: Download previous benchmark data
# v5.0.4 <https://github.com/actions/cache/releases/tag/v5.0.4>
uses: actions/cache@668228422ae6a00e4ad889ee87cd7109ec5666a7
with:
path: ./cache
key: ${{ runner.os }}-benchmark
- name: Run benchmark
run: |
uv run pytest tests/test_benchmark.py -m '(benchmark and pyarrow)' --benchmark-json output.json
- name: Store benchmark result
# <https://github.com/benchmark-action/github-action-benchmark/releases/tag/v1.21.0>
uses: benchmark-action/github-action-benchmark@a7bc2366eda11037936ea57d811a43b3418d3073
with:
tool: "pytest"
output-file-path: python/output.json
external-data-json-path: ./cache/benchmark-data.json
fail-on-alert: true