mirror of
https://github.com/timescale/timescaledb.git
synced 2025-05-16 02:23:49 +08:00
Make multinode tests conditional
Since multinode tests take a long time to run we dont want to run them in CI on individual PRs but only on nightly runs.
This commit is contained in:
parent
3b6dc7dc01
commit
e3437786ad
19
.github/gh_matrix_builder.py
vendored
19
.github/gh_matrix_builder.py
vendored
@ -37,6 +37,7 @@ from ci_settings import (
|
|||||||
|
|
||||||
# github event type which is either push, pull_request or schedule
|
# github event type which is either push, pull_request or schedule
|
||||||
event_type = sys.argv[1]
|
event_type = sys.argv[1]
|
||||||
|
pull_request = event_type == "pull_request"
|
||||||
|
|
||||||
m = {
|
m = {
|
||||||
"include": [],
|
"include": [],
|
||||||
@ -75,6 +76,8 @@ def build_debug_config(overrides):
|
|||||||
"tsdb_build_args": "-DWARNINGS_AS_ERRORS=ON -DREQUIRE_ALL_TESTS=ON",
|
"tsdb_build_args": "-DWARNINGS_AS_ERRORS=ON -DREQUIRE_ALL_TESTS=ON",
|
||||||
}
|
}
|
||||||
)
|
)
|
||||||
|
if not pull_request:
|
||||||
|
base_config["tsdb_build_args"] += " -DENABLE_MULTINODETESTS=ON"
|
||||||
base_config.update(overrides)
|
base_config.update(overrides)
|
||||||
return base_config
|
return base_config
|
||||||
|
|
||||||
@ -93,6 +96,8 @@ def build_release_config(overrides):
|
|||||||
"coverage": False,
|
"coverage": False,
|
||||||
}
|
}
|
||||||
)
|
)
|
||||||
|
if not pull_request:
|
||||||
|
release_config["tsdb_build_args"] += " -DENABLE_MULTINODETESTS=ON"
|
||||||
base_config.update(release_config)
|
base_config.update(release_config)
|
||||||
base_config.update(overrides)
|
base_config.update(overrides)
|
||||||
return base_config
|
return base_config
|
||||||
@ -148,6 +153,8 @@ def macos_config(overrides):
|
|||||||
"tsdb_build_args": "-DASSERTIONS=ON -DREQUIRE_ALL_TESTS=ON -DOPENSSL_ROOT_DIR=/usr/local/opt/openssl",
|
"tsdb_build_args": "-DASSERTIONS=ON -DREQUIRE_ALL_TESTS=ON -DOPENSSL_ROOT_DIR=/usr/local/opt/openssl",
|
||||||
}
|
}
|
||||||
)
|
)
|
||||||
|
if not pull_request:
|
||||||
|
base_config["tsdb_build_args"] += " -DENABLE_MULTINODETESTS=ON"
|
||||||
base_config.update(overrides)
|
base_config.update(overrides)
|
||||||
return base_config
|
return base_config
|
||||||
|
|
||||||
@ -159,13 +166,9 @@ ignored_tests = {"partialize_finalize"}
|
|||||||
# common ignored tests for all non-scheduled pg15 tests (e.g. PRs)
|
# common ignored tests for all non-scheduled pg15 tests (e.g. PRs)
|
||||||
# partialize_finalize is ignored due to #4937
|
# partialize_finalize is ignored due to #4937
|
||||||
# dist_move_chunk, dist_param, dist_insert, and remote_txn ignored due to flakiness
|
# dist_move_chunk, dist_param, dist_insert, and remote_txn ignored due to flakiness
|
||||||
if event_type == "pull_request":
|
if pull_request:
|
||||||
ignored_tests = {
|
ignored_tests = {
|
||||||
"dist_insert",
|
|
||||||
"dist_move_chunk",
|
|
||||||
"dist_param",
|
|
||||||
"partialize_finalize",
|
"partialize_finalize",
|
||||||
"remote_txn",
|
|
||||||
"telemetry",
|
"telemetry",
|
||||||
}
|
}
|
||||||
|
|
||||||
@ -203,7 +206,7 @@ m["include"].append(
|
|||||||
# if this is not a pull request e.g. a scheduled run or a push
|
# if this is not a pull request e.g. a scheduled run or a push
|
||||||
# to a specific branch like prerelease_test we add additional
|
# to a specific branch like prerelease_test we add additional
|
||||||
# entries to the matrix
|
# entries to the matrix
|
||||||
if event_type != "pull_request":
|
if not pull_request:
|
||||||
# add debug test for first supported PG13 version
|
# add debug test for first supported PG13 version
|
||||||
pg13_debug_earliest = {
|
pg13_debug_earliest = {
|
||||||
"pg": PG13_EARLIEST,
|
"pg": PG13_EARLIEST,
|
||||||
@ -214,7 +217,7 @@ if event_type != "pull_request":
|
|||||||
"dist_gapfill_pushdown-13",
|
"dist_gapfill_pushdown-13",
|
||||||
"transparent_decompress_chunk-13",
|
"transparent_decompress_chunk-13",
|
||||||
},
|
},
|
||||||
"tsdb_build_args": "-DWARNINGS_AS_ERRORS=ON -DASSERTIONS=ON -DPG_ISOLATION_REGRESS=OFF",
|
"tsdb_build_args": "-DWARNINGS_AS_ERRORS=ON -DASSERTIONS=ON -DPG_ISOLATION_REGRESS=OFF -DENABLE_MULTINODETESTS=ON",
|
||||||
}
|
}
|
||||||
m["include"].append(build_debug_config(pg13_debug_earliest))
|
m["include"].append(build_debug_config(pg13_debug_earliest))
|
||||||
|
|
||||||
@ -274,7 +277,7 @@ if event_type != "pull_request":
|
|||||||
}
|
}
|
||||||
)
|
)
|
||||||
)
|
)
|
||||||
else:
|
elif len(sys.argv) > 2:
|
||||||
# Check if we need to check for the flaky tests. Determine which test files
|
# Check if we need to check for the flaky tests. Determine which test files
|
||||||
# have been changed in the PR. The sql files might include other files that
|
# have been changed in the PR. The sql files might include other files that
|
||||||
# change independently, and might be .in templates, so it's easier to look
|
# change independently, and might be .in templates, so it's easier to look
|
||||||
|
2
.github/workflows/abi.yaml
vendored
2
.github/workflows/abi.yaml
vendored
@ -95,7 +95,7 @@ jobs:
|
|||||||
apk add cmake gcc make build-base krb5-dev git ${EXTRA_PKGS}
|
apk add cmake gcc make build-base krb5-dev git ${EXTRA_PKGS}
|
||||||
git config --global --add safe.directory /mnt
|
git config --global --add safe.directory /mnt
|
||||||
cd /mnt
|
cd /mnt
|
||||||
BUILD_DIR=build_abi BUILD_FORCE_REMOVE=true ./bootstrap
|
BUILD_DIR=build_abi BUILD_FORCE_REMOVE=true ./bootstrap -DENABLE_MULTINODE_TESTS=ON
|
||||||
make -C build_abi install
|
make -C build_abi install
|
||||||
mkdir -p build_abi/install_ext build_abi/install_lib
|
mkdir -p build_abi/install_ext build_abi/install_lib
|
||||||
cp `pg_config --sharedir`/extension/timescaledb*.{control,sql} build_abi/install_ext
|
cp `pg_config --sharedir`/extension/timescaledb*.{control,sql} build_abi/install_ext
|
||||||
|
@ -145,7 +145,7 @@ jobs:
|
|||||||
|
|
||||||
- name: Build TimescaleDB
|
- name: Build TimescaleDB
|
||||||
run: |
|
run: |
|
||||||
./bootstrap -DCMAKE_BUILD_TYPE=Debug -DPG_SOURCE_DIR=~/$PG_SRC_DIR \
|
./bootstrap -DCMAKE_BUILD_TYPE=Debug -DPG_SOURCE_DIR=~/$PG_SRC_DIR -DENABLE_MULTINODE_TESTS=ON \
|
||||||
-DPG_PATH=~/$PG_INSTALL_DIR -DCODECOVERAGE=OFF -DREQUIRE_ALL_TESTS=ON -DTEST_GROUP_SIZE=5
|
-DPG_PATH=~/$PG_INSTALL_DIR -DCODECOVERAGE=OFF -DREQUIRE_ALL_TESTS=ON -DTEST_GROUP_SIZE=5
|
||||||
make -j$(nproc) -C build
|
make -j$(nproc) -C build
|
||||||
make -C build install
|
make -C build install
|
||||||
|
@ -26,6 +26,7 @@ option(
|
|||||||
"Enable OPTIMIZER_DEBUG when building. Requires Postgres server to be built with OPTIMIZER_DEBUG."
|
"Enable OPTIMIZER_DEBUG when building. Requires Postgres server to be built with OPTIMIZER_DEBUG."
|
||||||
OFF)
|
OFF)
|
||||||
option(ENABLE_DEBUG_UTILS "Enable debug utilities for the extension." ON)
|
option(ENABLE_DEBUG_UTILS "Enable debug utilities for the extension." ON)
|
||||||
|
option(ENABLE_MULTINODE_TESTS "Enable multinode-specific tests" OFF)
|
||||||
|
|
||||||
# Option to enable assertions. Note that if we include headers from a PostgreSQL
|
# Option to enable assertions. Note that if we include headers from a PostgreSQL
|
||||||
# build that has assertions enabled, we might inherit that setting without
|
# build that has assertions enabled, we might inherit that setting without
|
||||||
|
@ -15,27 +15,21 @@ list(
|
|||||||
cagg_insert.spec
|
cagg_insert.spec
|
||||||
cagg_multi_iso.spec
|
cagg_multi_iso.spec
|
||||||
cagg_concurrent_refresh.spec
|
cagg_concurrent_refresh.spec
|
||||||
cagg_concurrent_refresh_dist_ht.spec
|
|
||||||
deadlock_drop_chunks_compress.spec)
|
deadlock_drop_chunks_compress.spec)
|
||||||
|
|
||||||
|
if(ENABLE_MULTINODE_TESTS)
|
||||||
|
list(APPEND TEST_FILES cagg_concurrent_refresh_dist_ht.spec)
|
||||||
|
endif()
|
||||||
|
|
||||||
if(PG_VERSION VERSION_GREATER_EQUAL "14.0")
|
if(PG_VERSION VERSION_GREATER_EQUAL "14.0")
|
||||||
list(APPEND TEST_FILES concurrent_decompress_update.spec)
|
list(APPEND TEST_FILES concurrent_decompress_update.spec)
|
||||||
endif()
|
endif()
|
||||||
|
|
||||||
if(CMAKE_BUILD_TYPE MATCHES Debug)
|
if(CMAKE_BUILD_TYPE MATCHES Debug)
|
||||||
list(APPEND TEST_TEMPLATES_MODULE ${TEST_TEMPLATES_MODULE_DEBUG})
|
list(APPEND TEST_TEMPLATES_MODULE ${TEST_TEMPLATES_MODULE_DEBUG})
|
||||||
list(
|
list(APPEND TEST_FILES cagg_drop_chunks_iso.spec compression_chunk_race.spec
|
||||||
APPEND
|
|
||||||
TEST_FILES
|
|
||||||
cagg_drop_chunks_iso.spec
|
|
||||||
cagg_multi_dist_ht.spec
|
|
||||||
compression_chunk_race.spec
|
|
||||||
compression_merge_race.spec
|
compression_merge_race.spec
|
||||||
decompression_chunk_and_parallel_query_wo_idx.spec
|
decompression_chunk_and_parallel_query_wo_idx.spec)
|
||||||
dist_ha_chunk_drop.spec
|
|
||||||
dist_ha_chunk_drop.spec
|
|
||||||
dist_restore_point.spec
|
|
||||||
remote_create_chunk.spec)
|
|
||||||
if(PG_VERSION VERSION_GREATER_EQUAL "14.0")
|
if(PG_VERSION VERSION_GREATER_EQUAL "14.0")
|
||||||
list(APPEND TEST_FILES freeze_chunk.spec compression_dml_iso.spec)
|
list(APPEND TEST_FILES freeze_chunk.spec compression_dml_iso.spec)
|
||||||
endif()
|
endif()
|
||||||
@ -48,6 +42,17 @@ if(CMAKE_BUILD_TYPE MATCHES Debug)
|
|||||||
list(APPEND TEST_FILES deadlock_recompress_chunk.spec)
|
list(APPEND TEST_FILES deadlock_recompress_chunk.spec)
|
||||||
endif()
|
endif()
|
||||||
|
|
||||||
|
if(ENABLE_MULTINODE_TESTS)
|
||||||
|
list(
|
||||||
|
APPEND
|
||||||
|
TEST_FILES
|
||||||
|
cagg_multi_dist_ht.spec
|
||||||
|
dist_ha_chunk_drop.spec
|
||||||
|
dist_ha_chunk_drop.spec
|
||||||
|
dist_restore_point.spec
|
||||||
|
remote_create_chunk.spec)
|
||||||
|
endif()
|
||||||
|
|
||||||
endif(CMAKE_BUILD_TYPE MATCHES Debug)
|
endif(CMAKE_BUILD_TYPE MATCHES Debug)
|
||||||
|
|
||||||
# need to generate MODULE name for the .spec files
|
# need to generate MODULE name for the .spec files
|
||||||
|
@ -6,21 +6,19 @@ set(TEST_FILES_SHARED
|
|||||||
constraint_exclusion_prepared.sql
|
constraint_exclusion_prepared.sql
|
||||||
decompress_join.sql
|
decompress_join.sql
|
||||||
decompress_placeholdervar.sql
|
decompress_placeholdervar.sql
|
||||||
dist_chunk.sql
|
|
||||||
dist_distinct_pushdown.sql
|
|
||||||
dist_gapfill.sql
|
|
||||||
dist_insert.sql
|
|
||||||
gapfill.sql
|
gapfill.sql
|
||||||
subtract_integer_from_now.sql)
|
subtract_integer_from_now.sql)
|
||||||
|
|
||||||
set(TEST_TEMPLATES_SHARED
|
set(TEST_TEMPLATES_SHARED
|
||||||
dist_fetcher_type.sql.in
|
generated_columns.sql.in ordered_append.sql.in ordered_append_join.sql.in
|
||||||
generated_columns.sql.in
|
transparent_decompress_chunk.sql.in space_constraint.sql.in)
|
||||||
ordered_append.sql.in
|
|
||||||
ordered_append_join.sql.in
|
if(ENABLE_MULTINODE_TESTS)
|
||||||
transparent_decompress_chunk.sql.in
|
list(APPEND TEST_FILES_SHARED dist_chunk.sql dist_distinct_pushdown.sql
|
||||||
dist_distinct.sql.in
|
dist_gapfill.sql dist_insert.sql)
|
||||||
space_constraint.sql.in)
|
list(APPEND TEST_TEMPLATES_SHARED dist_fetcher_type.sql.in
|
||||||
|
dist_distinct.sql.in)
|
||||||
|
endif()
|
||||||
|
|
||||||
if((${PG_VERSION_MAJOR} GREATER_EQUAL "14"))
|
if((${PG_VERSION_MAJOR} GREATER_EQUAL "14"))
|
||||||
list(APPEND TEST_FILES_SHARED compression_dml.sql memoize.sql)
|
list(APPEND TEST_FILES_SHARED compression_dml.sql memoize.sql)
|
||||||
@ -33,15 +31,12 @@ if((${PG_VERSION_MAJOR} GREATER_EQUAL "15"))
|
|||||||
endif()
|
endif()
|
||||||
|
|
||||||
if(CMAKE_BUILD_TYPE MATCHES Debug)
|
if(CMAKE_BUILD_TYPE MATCHES Debug)
|
||||||
list(
|
list(APPEND TEST_FILES_SHARED extension.sql timestamp_limits.sql
|
||||||
APPEND
|
|
||||||
TEST_FILES_SHARED
|
|
||||||
dist_parallel_agg.sql
|
|
||||||
dist_queries.sql
|
|
||||||
extension.sql
|
|
||||||
timestamp_limits.sql
|
|
||||||
with_clause_parser.sql)
|
with_clause_parser.sql)
|
||||||
list(APPEND TEST_TEMPLATES_SHARED constify_now.sql.in)
|
list(APPEND TEST_TEMPLATES_SHARED constify_now.sql.in)
|
||||||
|
if(ENABLE_MULTINODE_TESTS)
|
||||||
|
list(APPEND TEST_FILES_SHARED dist_parallel_agg.sql dist_queries.sql)
|
||||||
|
endif()
|
||||||
endif(CMAKE_BUILD_TYPE MATCHES Debug)
|
endif(CMAKE_BUILD_TYPE MATCHES Debug)
|
||||||
|
|
||||||
# Regression tests that vary with PostgreSQL version. Generated test files are
|
# Regression tests that vary with PostgreSQL version. Generated test files are
|
||||||
|
@ -18,8 +18,6 @@ set(TEST_FILES
|
|||||||
compression_conflicts.sql
|
compression_conflicts.sql
|
||||||
compression_insert.sql
|
compression_insert.sql
|
||||||
compression_qualpushdown.sql
|
compression_qualpushdown.sql
|
||||||
dist_param.sql
|
|
||||||
dist_views.sql
|
|
||||||
exp_cagg_monthly.sql
|
exp_cagg_monthly.sql
|
||||||
exp_cagg_next_gen.sql
|
exp_cagg_next_gen.sql
|
||||||
exp_cagg_origin.sql
|
exp_cagg_origin.sql
|
||||||
@ -30,6 +28,10 @@ set(TEST_FILES
|
|||||||
skip_scan.sql
|
skip_scan.sql
|
||||||
size_utils_tsl.sql)
|
size_utils_tsl.sql)
|
||||||
|
|
||||||
|
if(ENABLE_MULTINODE_TESTS)
|
||||||
|
list(APPEND TEST_FILES dist_param.sql dist_views.sql)
|
||||||
|
endif()
|
||||||
|
|
||||||
if(USE_TELEMETRY)
|
if(USE_TELEMETRY)
|
||||||
list(APPEND TEST_FILES bgw_telemetry.sql)
|
list(APPEND TEST_FILES bgw_telemetry.sql)
|
||||||
endif()
|
endif()
|
||||||
@ -59,20 +61,15 @@ if(CMAKE_BUILD_TYPE MATCHES Debug)
|
|||||||
compress_table.sql
|
compress_table.sql
|
||||||
cagg_bgw_drop_chunks.sql
|
cagg_bgw_drop_chunks.sql
|
||||||
cagg_bgw.sql
|
cagg_bgw.sql
|
||||||
cagg_bgw_dist_ht.sql
|
|
||||||
cagg_ddl.sql
|
cagg_ddl.sql
|
||||||
cagg_ddl_dist_ht.sql
|
|
||||||
cagg_drop_chunks.sql
|
cagg_drop_chunks.sql
|
||||||
cagg_dump.sql
|
cagg_dump.sql
|
||||||
cagg_errors_deprecated.sql
|
cagg_errors_deprecated.sql
|
||||||
cagg_joins.sql
|
cagg_joins.sql
|
||||||
cagg_migrate.sql
|
cagg_migrate.sql
|
||||||
cagg_migrate_dist_ht.sql
|
|
||||||
cagg_multi.sql
|
cagg_multi.sql
|
||||||
cagg_on_cagg.sql
|
cagg_on_cagg.sql
|
||||||
cagg_on_cagg_dist_ht.sql
|
|
||||||
cagg_on_cagg_joins.sql
|
cagg_on_cagg_joins.sql
|
||||||
cagg_on_cagg_joins_dist_ht.sql
|
|
||||||
cagg_tableam.sql
|
cagg_tableam.sql
|
||||||
cagg_usage.sql
|
cagg_usage.sql
|
||||||
cagg_policy_run.sql
|
cagg_policy_run.sql
|
||||||
@ -83,6 +80,26 @@ if(CMAKE_BUILD_TYPE MATCHES Debug)
|
|||||||
ddl_hook.sql
|
ddl_hook.sql
|
||||||
debug_notice.sql
|
debug_notice.sql
|
||||||
deparse.sql
|
deparse.sql
|
||||||
|
insert_memory_usage.sql
|
||||||
|
information_view_chunk_count.sql
|
||||||
|
read_only.sql
|
||||||
|
transparent_decompression_queries.sql
|
||||||
|
tsl_tables.sql
|
||||||
|
license_tsl.sql
|
||||||
|
fixed_schedules.sql
|
||||||
|
recompress_chunk_segmentwise.sql
|
||||||
|
transparent_decompression_join_index.sql
|
||||||
|
feature_flags.sql)
|
||||||
|
|
||||||
|
if(ENABLE_MULTINODE_TESTS)
|
||||||
|
list(
|
||||||
|
APPEND
|
||||||
|
TEST_FILES
|
||||||
|
cagg_bgw_dist_ht.sql
|
||||||
|
cagg_migrate_dist_ht.sql
|
||||||
|
cagg_ddl_dist_ht.sql
|
||||||
|
cagg_on_cagg_dist_ht.sql
|
||||||
|
cagg_on_cagg_joins_dist_ht.sql
|
||||||
dist_api_calls.sql
|
dist_api_calls.sql
|
||||||
dist_commands.sql
|
dist_commands.sql
|
||||||
dist_compression.sql
|
dist_compression.sql
|
||||||
@ -96,23 +113,15 @@ if(CMAKE_BUILD_TYPE MATCHES Debug)
|
|||||||
dist_util.sql
|
dist_util.sql
|
||||||
dist_triggers.sql
|
dist_triggers.sql
|
||||||
dist_backup.sql
|
dist_backup.sql
|
||||||
insert_memory_usage.sql
|
|
||||||
information_view_chunk_count.sql
|
|
||||||
read_only.sql
|
|
||||||
remote_connection_cache.sql
|
remote_connection_cache.sql
|
||||||
remote_connection.sql
|
remote_connection.sql
|
||||||
remote_copy.sql
|
remote_copy.sql
|
||||||
remote_stmt_params.sql
|
remote_stmt_params.sql
|
||||||
remote_txn_id.sql
|
remote_txn_id.sql
|
||||||
remote_txn_resolve.sql
|
remote_txn_resolve.sql
|
||||||
remote_txn.sql
|
remote_txn.sql)
|
||||||
transparent_decompression_queries.sql
|
endif()
|
||||||
tsl_tables.sql
|
|
||||||
license_tsl.sql
|
|
||||||
fixed_schedules.sql
|
|
||||||
recompress_chunk_segmentwise.sql
|
|
||||||
transparent_decompression_join_index.sql
|
|
||||||
feature_flags.sql)
|
|
||||||
endif(CMAKE_BUILD_TYPE MATCHES Debug)
|
endif(CMAKE_BUILD_TYPE MATCHES Debug)
|
||||||
|
|
||||||
if((${PG_VERSION_MAJOR} GREATER_EQUAL "14"))
|
if((${PG_VERSION_MAJOR} GREATER_EQUAL "14"))
|
||||||
@ -172,19 +181,20 @@ if((${PG_VERSION_MAJOR} GREATER_EQUAL "14"))
|
|||||||
endif()
|
endif()
|
||||||
|
|
||||||
if(CMAKE_BUILD_TYPE MATCHES Debug)
|
if(CMAKE_BUILD_TYPE MATCHES Debug)
|
||||||
|
list(APPEND TEST_TEMPLATES cagg_query.sql.in continuous_aggs.sql.in
|
||||||
|
continuous_aggs_deprecated.sql.in)
|
||||||
|
if(ENABLE_MULTINODE_TESTS)
|
||||||
list(
|
list(
|
||||||
APPEND
|
APPEND
|
||||||
TEST_TEMPLATES
|
TEST_TEMPLATES
|
||||||
cagg_query.sql.in
|
cagg_invalidation_dist_ht.sql.in
|
||||||
dist_hypertable.sql.in
|
dist_hypertable.sql.in
|
||||||
dist_grant.sql.in
|
dist_grant.sql.in
|
||||||
dist_ref_table_join.sql.in
|
dist_ref_table_join.sql.in
|
||||||
dist_remote_error.sql.in
|
dist_remote_error.sql.in
|
||||||
dist_partial_agg.sql.in
|
dist_partial_agg.sql.in
|
||||||
dist_query.sql.in
|
dist_query.sql.in)
|
||||||
cagg_invalidation_dist_ht.sql.in
|
endif()
|
||||||
continuous_aggs.sql.in
|
|
||||||
continuous_aggs_deprecated.sql.in)
|
|
||||||
if(USE_TELEMETRY)
|
if(USE_TELEMETRY)
|
||||||
list(APPEND TEST_TEMPLATES telemetry_stats.sql.in)
|
list(APPEND TEST_TEMPLATES telemetry_stats.sql.in)
|
||||||
endif()
|
endif()
|
||||||
|
Loading…
x
Reference in New Issue
Block a user