Skip to content

fix: fix various schema engine test issues #5957

fix: fix various schema engine test issues

fix: fix various schema engine test issues #5957

name: 'QE'
on:
push:
branches:
- main
pull_request:
paths-ignore:
- '.github/**'
- '!.github/workflows/test-query-engine.yml'
- '!.github/workflows/test-query-engine-template.yml'
- '!.github/workflows/test-driver-adapters-template.yml'
- '!.github/workflows/include/rust-wasm-setup/action.yml'
- '*.md'
- 'LICENSE'
- 'CODEOWNERS'
concurrency:
group: ${{ github.workflow }}-${{ github.ref }}
cancel-in-progress: true
jobs:
postgres:
strategy:
fail-fast: false
matrix:
database:
- name: 'postgres16'
version: '16'
name: 'Postgres v${{ matrix.database.version}}'
uses: ./.github/workflows/test-query-engine-template.yml
with:
name: ${{ matrix.database.name }}
version: ${{ matrix.database.version }}
connector: 'postgres'
threads: 8
postgres-push:
if: github.event_name == 'push' ||
(github.event_name == 'pull_request' && contains(github.event.pull_request.body, '/test-all'))
strategy:
fail-fast: false
matrix:
database:
- name: 'postgres15'
version: '15'
- name: 'postgres14'
version: '14'
- name: 'postgres13'
version: '13'
- name: 'postgres12'
version: '12'
name: 'Postgres Old v${{ matrix.database.version}}'
uses: ./.github/workflows/test-query-engine-template.yml
with:
name: ${{ matrix.database.name }}
version: ${{ matrix.database.version }}
connector: 'postgres'
threads: 8
mysql:
strategy:
fail-fast: false
matrix:
database:
- name: 'mysql_8'
version: '8'
relation_load_strategy: '["join", "query"]'
name: 'MySQL v${{ matrix.database.version}}'
uses: ./.github/workflows/test-query-engine-template.yml
with:
name: ${{ matrix.database.name }}
version: ${{ matrix.database.version }}
connector: 'mysql'
threads: 8
relation_load_strategy: ${{ matrix.database.relation_load_strategy }}
mysql-push:
if: github.event_name == 'push' ||
(github.event_name == 'pull_request' && contains(github.event.pull_request.body, '/test-all'))
strategy:
fail-fast: false
matrix:
database:
- name: 'mysql_5_7'
version: '5.7'
relation_load_strategy: '["query"]'
- name: 'mysql_5_6'
version: '5.6'
relation_load_strategy: '["query"]'
- name: 'mysql_mariadb'
version: 'mariadb'
relation_load_strategy: '["query"]'
name: 'MySQL Old v${{ matrix.database.version}}'
uses: ./.github/workflows/test-query-engine-template.yml
with:
name: ${{ matrix.database.name }}
version: ${{ matrix.database.version }}
connector: 'mysql'
# Reason for single threaded test: `test_itx_concurrent_updates_single_thread`
# This test fails with: `Query core error: Error in connector: Error creating a database connection. (Error in the underlying connector)`
# It does NOT happen on MySQL 8, only on the older versions.
threads: 1
relation_load_strategy: ${{ matrix.database.relation_load_strategy }}
cockroachdb-push:
if: github.event_name == 'push' ||
(github.event_name == 'pull_request' && contains(github.event.pull_request.body, '/test-all'))
strategy:
fail-fast: false
matrix:
database:
- name: 'cockroach_23_1'
version: '23.1'
- name: 'cockroach_22_2'
version: '22.2'
- name: 'cockroach_22_1_0'
version: '22.1'
name: 'CockroachDB v${{ matrix.database.version}}'
uses: ./.github/workflows/test-query-engine-template.yml
with:
name: ${{ matrix.database.name }}
version: ${{ matrix.database.version }}
connector: 'cockroachdb'
threads: 4
mongodb:
strategy:
fail-fast: false
matrix:
database:
- name: 'mongodb_5'
version: '5'
connector: 'mongodb'
name: 'MongoDB v${{ matrix.database.version}}'
uses: ./.github/workflows/test-query-engine-template.yml
with:
name: ${{ matrix.database.name }}
version: ${{ matrix.database.version }}
# MongoDB tests MUST run single threaded
threads: 1
connector: 'mongodb'
relation_load_strategy: '["query"]'
mongodb-push:
if: github.event_name == 'push' ||
(github.event_name == 'pull_request' && contains(github.event.pull_request.body, '/test-all'))
strategy:
fail-fast: false
matrix:
database:
- name: 'mongodb_4_4'
version: '4.4'
- name: 'mongodb_4_2'
version: '4.2'
name: 'MongoDB Old v${{ matrix.database.version}}'
uses: ./.github/workflows/test-query-engine-template.yml
with:
name: ${{ matrix.database.name }}
version: ${{ matrix.database.version }}
# MongoDB tests MUST run single threaded
threads: 1
connector: 'mongodb'
relation_load_strategy: '["query"]'
mssql:
strategy:
fail-fast: false
matrix:
database:
- name: 'mssql_2022'
version: '2022'
ubuntu: '24.04'
name: 'MSSQL v${{ matrix.database.version}}'
uses: ./.github/workflows/test-query-engine-template.yml
with:
name: ${{ matrix.database.name }}
version: ${{ matrix.database.version }}
ubuntu: ${{ matrix.database.ubuntu }}
connector: 'sqlserver'
threads: 8
relation_load_strategy: '["query"]'
mssql-push:
if: github.event_name == 'push' ||
(github.event_name == 'pull_request' && contains(github.event.pull_request.body, '/test-all'))
strategy:
fail-fast: false
matrix:
database:
- name: 'mssql_2019'
version: '2019'
ubuntu: '24.04'
name: 'MSSQL Old v${{ matrix.database.version}}'
uses: ./.github/workflows/test-query-engine-template.yml
with:
name: ${{ matrix.database.name }}
version: ${{ matrix.database.version }}
ubuntu: ${{ matrix.database.ubuntu }}
connector: 'sqlserver'
threads: 8
relation_load_strategy: '["query"]'
sqlite:
name: sqlite
uses: ./.github/workflows/test-query-engine-template.yml
with:
name: 'sqlite'
version: 3
connector: 'sqlite'
threads: 8
relation_load_strategy: '["query"]'
driver_adapters:
strategy:
fail-fast: false
matrix:
adapter:
- name: 'planetscale (wasm)'
setup_task: 'dev-planetscale-wasm'
- name: 'pg (wasm)'
setup_task: 'dev-pg-wasm'
- name: 'neon (wasm)'
setup_task: 'dev-neon-wasm'
- name: 'libsql (wasm)'
setup_task: 'dev-libsql-wasm'
relation_load_strategy: '["query"]'
- name: 'd1 (wasm)'
setup_task: 'dev-d1'
relation_load_strategy: '["query"]'
- name: 'better-sqlite3 (wasm)'
setup_task: 'dev-better-sqlite3-wasm'
relation_load_strategy: '["query"]'
- name: 'mssql (wasm)'
setup_task: 'dev-mssql-wasm'
relation_load_strategy: '["query"]'
- name: 'mariadb (wasm)'
setup_task: 'dev-mariadb-wasm'
relation_load_strategy: '["query"]'
- name: 'mariadb-mysql (wasm)'
setup_task: 'dev-mariadb-mysql-wasm'
- name: 'pg-cockroachdb (wasm)'
setup_task: 'dev-pg-cockroachdb-wasm'
name: ${{ matrix.adapter.name }}
uses: ./.github/workflows/test-driver-adapters-template.yml
with:
setup_task: ${{ matrix.adapter.setup_task }}
relation_load_strategy: ${{ matrix.adapter.relation_load_strategy || '["join", "query"]' }}