TimescaleDB #1080
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
name: TimescaleDB | |
on: | |
schedule: | |
- cron: '0 22 * * *' | |
permissions: | |
contents: read | |
jobs: | |
pgspot: | |
runs-on: ubuntu-latest | |
steps: | |
- name: Setup python 3.10 | |
uses: actions/setup-python@0b93645e9fea7318ecaed2b359559ac225c90a2b # v5.3.0 | |
with: | |
python-version: '3.10' | |
- name: Checkout pgspot | |
uses: actions/checkout@11bd71901bbe5b1630ceea73d27597364c9af683 # v4.2.2 | |
- name: Install pgspot | |
run: | | |
python -m pip install . | |
- name: Checkout timescaledb | |
uses: actions/checkout@11bd71901bbe5b1630ceea73d27597364c9af683 # v4.2.2 | |
with: | |
repository: 'timescale/timescaledb' | |
path: 'timescaledb' | |
- name: Build timescaledb sqlfiles | |
run: | | |
cd timescaledb | |
./bootstrap | |
make -C build sqlfile # sqlupdatescripts | |
ls -la build/sql/timescaledb--*.sql | |
# time_bucket with offset is intentional without explicit search_path to allow for inlining | |
# _timescaledb_internal.policy_compression and _timescaledb_internal.policy_compression_execute | |
# do not have explicit search_path because this would prevent them doing transaction control | |
- name: Run pgspot | |
run: | | |
pgspot \ | |
--proc-without-search-path 'extschema.time_bucket(bucket_width interval,ts timestamp,"offset" interval)' \ | |
--proc-without-search-path 'extschema.time_bucket(bucket_width interval,ts timestamptz,"offset" interval)' \ | |
--proc-without-search-path 'extschema.time_bucket(bucket_width interval,ts date,"offset" interval)' \ | |
--proc-without-search-path 'extschema.recompress_chunk(chunk regclass,if_not_compressed boolean)' \ | |
--proc-without-search-path '_timescaledb_internal.policy_compression(job_id integer,config jsonb)' \ | |
--proc-without-search-path '_timescaledb_internal.policy_compression_execute(job_id integer,htid integer,lag anyelement,maxchunks integer,verbose_log boolean,recompress_enabled boolean)' \ | |
--proc-without-search-path '_timescaledb_internal.cagg_migrate_execute_plan(_cagg_data _timescaledb_catalog.continuous_agg)' \ | |
--proc-without-search-path '_timescaledb_functions.policy_compression(job_id integer,config jsonb)' \ | |
--proc-without-search-path '_timescaledb_functions.policy_compression_execute(job_id integer,htid integer,lag anyelement,maxchunks integer,verbose_log boolean,recompress_enabled boolean,use_creation_time boolean,useam boolean)' \ | |
--proc-without-search-path '_timescaledb_functions.cagg_migrate_execute_plan(_cagg_data _timescaledb_catalog.continuous_agg)' \ | |
--proc-without-search-path 'extschema.cagg_migrate(cagg regclass,override boolean,drop_old boolean)' \ | |
timescaledb/build/sql/timescaledb--*.sql | |
- name: Notify slack on failure | |
if: failure() | |
uses: slackapi/slack-github-action@37ebaef184d7626c5f204ab8d3baff4262dd30f0 # v1.27.0 | |
with: | |
channel-id: 'CEKV5LMK3' | |
slack-message: 'Nightly pgspot run for timescaledb repository failed. <${{ github.server_url }}/${{ github.repository }}/actions/runs/${{ github.run_id }}|Details>' | |
env: | |
SLACK_BOT_TOKEN: ${{ secrets.SLACK_BOT_TOKEN }} | |