Skip to content

Commit d85b119

Browse files
committed
Merge branch 'master' into fix_03355_join_to_in_optimization
2 parents f20505f + 16e116c commit d85b119

File tree

126 files changed

+1279
-151
lines changed

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

126 files changed

+1279
-151
lines changed

.github/workflows/create_release.yml

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -149,7 +149,7 @@ jobs:
149149
git diff HEAD
150150
- name: Create ChangeLog PR
151151
if: ${{ inputs.type == 'patch' && ! inputs.dry-run && ! inputs.only-repo && ! inputs.only-docker }}
152-
uses: peter-evans/create-pull-request@v6
152+
uses: peter-evans/create-pull-request@c5a7806660adbe173f04e3e038b0ccdcd758773c # v6
153153
with:
154154
author: "robot-clickhouse <[email protected]>"
155155
token: ${{ secrets.ROBOT_CLICKHOUSE_COMMIT_TOKEN }}

.github/workflows/master.yml

Lines changed: 38 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1611,6 +1611,44 @@ jobs:
16111611
python3 -m praktika run 'Stateless tests (release, ParallelReplicas, s3 storage)' --workflow "MasterCI" --ci |& tee ./ci/tmp/job.log
16121612
fi
16131613
1614+
stateless_tests_debug_asyncinsert_s3_storage:
1615+
runs-on: [self-hosted, func-tester]
1616+
needs: [config_workflow, dockers_build_amd_and_merge, build_amd_debug]
1617+
if: ${{ !failure() && !cancelled() && !contains(fromJson(needs.config_workflow.outputs.data).cache_success_base64, 'U3RhdGVsZXNzIHRlc3RzIChkZWJ1ZywgQXN5bmNJbnNlcnQsIHMzIHN0b3JhZ2Up') }}
1618+
name: "Stateless tests (debug, AsyncInsert, s3 storage)"
1619+
outputs:
1620+
data: ${{ steps.run.outputs.DATA }}
1621+
steps:
1622+
- name: Checkout code
1623+
uses: actions/checkout@v4
1624+
with:
1625+
ref: ${{ env.CHECKOUT_REF }}
1626+
1627+
- name: Prepare env script
1628+
run: |
1629+
rm -rf ./ci/tmp ./ci/tmp ./ci/tmp
1630+
mkdir -p ./ci/tmp ./ci/tmp ./ci/tmp
1631+
cat > ./ci/tmp/praktika_setup_env.sh << 'ENV_SETUP_SCRIPT_EOF'
1632+
export PYTHONPATH=./ci:.:
1633+
cat > ./ci/tmp/workflow_config_masterci.json << 'EOF'
1634+
${{ needs.config_workflow.outputs.data }}
1635+
EOF
1636+
cat > ./ci/tmp/workflow_status.json << 'EOF'
1637+
${{ toJson(needs) }}
1638+
EOF
1639+
ENV_SETUP_SCRIPT_EOF
1640+
1641+
- name: Run
1642+
id: run
1643+
run: |
1644+
. ./ci/tmp/praktika_setup_env.sh
1645+
set -o pipefail
1646+
if command -v ts &> /dev/null; then
1647+
python3 -m praktika run 'Stateless tests (debug, AsyncInsert, s3 storage)' --workflow "MasterCI" --ci |& ts '[%Y-%m-%d %H:%M:%S]' | tee ./ci/tmp/job.log
1648+
else
1649+
python3 -m praktika run 'Stateless tests (debug, AsyncInsert, s3 storage)' --workflow "MasterCI" --ci |& tee ./ci/tmp/job.log
1650+
fi
1651+
16141652
stateless_tests_debug:
16151653
runs-on: [self-hosted, func-tester]
16161654
needs: [config_workflow, dockers_build_amd_and_merge, build_amd_debug]

.github/workflows/pull_request.yml

Lines changed: 39 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1765,6 +1765,44 @@ jobs:
17651765
python3 -m praktika run 'Stateless tests (release, ParallelReplicas, s3 storage)' --workflow "PR" --ci |& tee ./ci/tmp/job.log
17661766
fi
17671767
1768+
stateless_tests_debug_asyncinsert_s3_storage:
1769+
runs-on: [self-hosted, func-tester]
1770+
needs: [config_workflow, dockers_build_amd_and_merge, build_amd_debug]
1771+
if: ${{ !failure() && !cancelled() && !contains(fromJson(needs.config_workflow.outputs.data).cache_success_base64, 'U3RhdGVsZXNzIHRlc3RzIChkZWJ1ZywgQXN5bmNJbnNlcnQsIHMzIHN0b3JhZ2Up') }}
1772+
name: "Stateless tests (debug, AsyncInsert, s3 storage)"
1773+
outputs:
1774+
data: ${{ steps.run.outputs.DATA }}
1775+
steps:
1776+
- name: Checkout code
1777+
uses: actions/checkout@v4
1778+
with:
1779+
ref: ${{ env.CHECKOUT_REF }}
1780+
1781+
- name: Prepare env script
1782+
run: |
1783+
rm -rf ./ci/tmp ./ci/tmp ./ci/tmp
1784+
mkdir -p ./ci/tmp ./ci/tmp ./ci/tmp
1785+
cat > ./ci/tmp/praktika_setup_env.sh << 'ENV_SETUP_SCRIPT_EOF'
1786+
export PYTHONPATH=./ci:.:
1787+
cat > ./ci/tmp/workflow_config_pr.json << 'EOF'
1788+
${{ needs.config_workflow.outputs.data }}
1789+
EOF
1790+
cat > ./ci/tmp/workflow_status.json << 'EOF'
1791+
${{ toJson(needs) }}
1792+
EOF
1793+
ENV_SETUP_SCRIPT_EOF
1794+
1795+
- name: Run
1796+
id: run
1797+
run: |
1798+
. ./ci/tmp/praktika_setup_env.sh
1799+
set -o pipefail
1800+
if command -v ts &> /dev/null; then
1801+
python3 -m praktika run 'Stateless tests (debug, AsyncInsert, s3 storage)' --workflow "PR" --ci |& ts '[%Y-%m-%d %H:%M:%S]' | tee ./ci/tmp/job.log
1802+
else
1803+
python3 -m praktika run 'Stateless tests (debug, AsyncInsert, s3 storage)' --workflow "PR" --ci |& tee ./ci/tmp/job.log
1804+
fi
1805+
17681806
stateless_tests_debug:
17691807
runs-on: [self-hosted, func-tester]
17701808
needs: [config_workflow, dockers_build_amd_and_merge, build_amd_debug]
@@ -4351,7 +4389,7 @@ jobs:
43514389
43524390
finish_workflow:
43534391
runs-on: [self-hosted, style-checker-aarch64]
4354-
needs: [config_workflow, dockers_build_arm, dockers_build_amd_and_merge, style_check, docs_check, fast_test, build_amd_tidy, build_arm_tidy, build_amd_debug, build_amd_release, build_amd_asan, build_amd_tsan, build_amd_msan, build_amd_ubsan, build_amd_binary, build_arm_release, build_arm_asan, build_arm_coverage, build_arm_binary, build_amd_darwin, build_arm_darwin, build_arm_v80compat, build_amd_freebsd, build_ppc64le, build_amd_compat, build_amd_musl, build_riscv64, build_s390x, build_loongarch64, build_fuzzers, unit_tests_asan, unit_tests_tsan, unit_tests_msan, unit_tests_ubsan, docker_server_image, docker_keeper_image, install_packages_release, install_packages_aarch64, compatibility_check_release, compatibility_check_aarch64, stateless_tests_asan_distributed_plan_1_2, stateless_tests_asan_distributed_plan_2_2, stateless_tests_release, stateless_tests_release_old_analyzer_s3_databasereplicated_1_2, stateless_tests_release_old_analyzer_s3_databasereplicated_2_2, stateless_tests_release_parallelreplicas_s3_storage, stateless_tests_debug, stateless_tests_tsan_1_3, stateless_tests_tsan_2_3, stateless_tests_tsan_3_3, stateless_tests_msan_1_4, stateless_tests_msan_2_4, stateless_tests_msan_3_4, stateless_tests_msan_4_4, stateless_tests_ubsan, stateless_tests_debug_distributed_plan_s3_storage, stateless_tests_tsan_s3_storage_1_3, stateless_tests_tsan_s3_storage_2_3, stateless_tests_tsan_s3_storage_3_3, stateless_tests_aarch64, stateless_tests_coverage_1_6, stateless_tests_coverage_2_6, stateless_tests_coverage_3_6, stateless_tests_coverage_4_6, stateless_tests_coverage_5_6, stateless_tests_coverage_6_6, bugfix_validation, stateless_tests_asan_flaky_check, integration_tests_asan_old_analyzer_1_6, integration_tests_asan_old_analyzer_2_6, integration_tests_asan_old_analyzer_3_6, integration_tests_asan_old_analyzer_4_6, integration_tests_asan_old_analyzer_5_6, integration_tests_asan_old_analyzer_6_6, integration_tests_release_1_4, integration_tests_release_2_4, integration_tests_release_3_4, integration_tests_release_4_4, integration_tests_aarch64_distributed_plan_1_4, integration_tests_aarch64_distributed_plan_2_4, integration_tests_aarch64_distributed_plan_3_4, integration_tests_aarch64_distributed_plan_4_4, integration_tests_tsan_1_6, integration_tests_tsan_2_6, integration_tests_tsan_3_6, integration_tests_tsan_4_6, integration_tests_tsan_5_6, integration_tests_tsan_6_6, integration_tests_asan_flaky_check, stress_test_amd_debug, stress_test_amd_tsan, stress_test_arm_asan, stress_test_amd_ubsan, stress_test_amd_msan, upgrade_check_arm_asan, upgrade_check_amd_tsan, upgrade_check_amd_msan, upgrade_check_amd_debug, ast_fuzzer_amd_debug, ast_fuzzer_arm_asan, ast_fuzzer_amd_tsan, ast_fuzzer_amd_msan, ast_fuzzer_amd_ubsan, buzzhouse_amd_debug, buzzhouse_arm_asan, buzzhouse_amd_tsan, buzzhouse_amd_msan, buzzhouse_amd_ubsan, performance_comparison_amd_release_master_head_1_3, performance_comparison_amd_release_master_head_2_3, performance_comparison_amd_release_master_head_3_3, performance_comparison_arm_release_master_head_1_3, performance_comparison_arm_release_master_head_2_3, performance_comparison_arm_release_master_head_3_3]
4392+
needs: [config_workflow, dockers_build_arm, dockers_build_amd_and_merge, style_check, docs_check, fast_test, build_amd_tidy, build_arm_tidy, build_amd_debug, build_amd_release, build_amd_asan, build_amd_tsan, build_amd_msan, build_amd_ubsan, build_amd_binary, build_arm_release, build_arm_asan, build_arm_coverage, build_arm_binary, build_amd_darwin, build_arm_darwin, build_arm_v80compat, build_amd_freebsd, build_ppc64le, build_amd_compat, build_amd_musl, build_riscv64, build_s390x, build_loongarch64, build_fuzzers, unit_tests_asan, unit_tests_tsan, unit_tests_msan, unit_tests_ubsan, docker_server_image, docker_keeper_image, install_packages_release, install_packages_aarch64, compatibility_check_release, compatibility_check_aarch64, stateless_tests_asan_distributed_plan_1_2, stateless_tests_asan_distributed_plan_2_2, stateless_tests_release, stateless_tests_release_old_analyzer_s3_databasereplicated_1_2, stateless_tests_release_old_analyzer_s3_databasereplicated_2_2, stateless_tests_release_parallelreplicas_s3_storage, stateless_tests_debug_asyncinsert_s3_storage, stateless_tests_debug, stateless_tests_tsan_1_3, stateless_tests_tsan_2_3, stateless_tests_tsan_3_3, stateless_tests_msan_1_4, stateless_tests_msan_2_4, stateless_tests_msan_3_4, stateless_tests_msan_4_4, stateless_tests_ubsan, stateless_tests_debug_distributed_plan_s3_storage, stateless_tests_tsan_s3_storage_1_3, stateless_tests_tsan_s3_storage_2_3, stateless_tests_tsan_s3_storage_3_3, stateless_tests_aarch64, stateless_tests_coverage_1_6, stateless_tests_coverage_2_6, stateless_tests_coverage_3_6, stateless_tests_coverage_4_6, stateless_tests_coverage_5_6, stateless_tests_coverage_6_6, bugfix_validation, stateless_tests_asan_flaky_check, integration_tests_asan_old_analyzer_1_6, integration_tests_asan_old_analyzer_2_6, integration_tests_asan_old_analyzer_3_6, integration_tests_asan_old_analyzer_4_6, integration_tests_asan_old_analyzer_5_6, integration_tests_asan_old_analyzer_6_6, integration_tests_release_1_4, integration_tests_release_2_4, integration_tests_release_3_4, integration_tests_release_4_4, integration_tests_aarch64_distributed_plan_1_4, integration_tests_aarch64_distributed_plan_2_4, integration_tests_aarch64_distributed_plan_3_4, integration_tests_aarch64_distributed_plan_4_4, integration_tests_tsan_1_6, integration_tests_tsan_2_6, integration_tests_tsan_3_6, integration_tests_tsan_4_6, integration_tests_tsan_5_6, integration_tests_tsan_6_6, integration_tests_asan_flaky_check, stress_test_amd_debug, stress_test_amd_tsan, stress_test_arm_asan, stress_test_amd_ubsan, stress_test_amd_msan, upgrade_check_arm_asan, upgrade_check_amd_tsan, upgrade_check_amd_msan, upgrade_check_amd_debug, ast_fuzzer_amd_debug, ast_fuzzer_arm_asan, ast_fuzzer_amd_tsan, ast_fuzzer_amd_msan, ast_fuzzer_amd_ubsan, buzzhouse_amd_debug, buzzhouse_arm_asan, buzzhouse_amd_tsan, buzzhouse_amd_msan, buzzhouse_amd_ubsan, performance_comparison_amd_release_master_head_1_3, performance_comparison_amd_release_master_head_2_3, performance_comparison_amd_release_master_head_3_3, performance_comparison_arm_release_master_head_1_3, performance_comparison_arm_release_master_head_2_3, performance_comparison_arm_release_master_head_3_3]
43554393
if: ${{ !cancelled() }}
43564394
name: "Finish Workflow"
43574395
outputs:

CMakeLists.txt

Lines changed: 4 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -613,9 +613,11 @@ endif()
613613

614614
include (cmake/sanitize_targets.cmake)
615615

616-
if (COMPILER_CACHE STREQUAL "chcache")
616+
if (COMPILER_CACHE STREQUAL "chcache" AND CHCACHE_EXECUTABLE_PATH STREQUAL "")
617+
message(STATUS "Adding chcache as dependency to all other targets")
617618
get_all_targets(all_targets)
618-
set (chcache_targets _cargo-build_chcache cargo-build_chcache cargo-prebuild_chcache)
619+
set(chcache_targets _cargo-build_chcache cargo-build_chcache cargo-prebuild_chcache)
620+
619621
foreach(target ${all_targets})
620622
if (target IN_LIST chcache_targets)
621623
continue()

README.md

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -52,6 +52,7 @@ Upcoming meetups
5252
* [Istanbul Meetup](https://www.meetup.com/clickhouse-turkiye-meetup-group/events/306978337/) - May 15, 2025
5353
* [Shenzhen Meetup](https://www.huodongxing.com/event/7803892350511) - May 17, 2025
5454
* [Seattle Meetup](https://www.meetup.com/clickhouse-seattle-user-group/events/307622716/) - May 20, 2025
55+
* [Tokyo Meetup](https://www.meetup.com/clickhouse-tokyo-user-group/events/307689645/) - June 5, 2025
5556
* [Washington DC Meetup](https://www.meetup.com/clickhouse-dc-user-group/events/307622954/) - June 12, 2025
5657
* [Atlanta Meetup](https://www.meetup.com/clickhouse-atlanta-meetup-group/events/307627590/) - July 8, 2025
5758
* [New York Meetup](https://www.meetup.com/clickhouse-new-york-user-group/events/307627675/) - July 15, 2025

ci/defs/job_configs.py

Lines changed: 3 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -336,6 +336,7 @@ class JobConfigs:
336336
"release, old analyzer, s3, DatabaseReplicated, 1/2",
337337
"release, old analyzer, s3, DatabaseReplicated, 2/2",
338338
"release, ParallelReplicas, s3 storage",
339+
"debug, AsyncInsert, s3 storage",
339340
],
340341
runs_on=[
341342
RunnerLabels.FUNC_TESTER_AMD,
@@ -344,6 +345,7 @@ class JobConfigs:
344345
RunnerLabels.FUNC_TESTER_AMD,
345346
RunnerLabels.FUNC_TESTER_AMD,
346347
RunnerLabels.FUNC_TESTER_AMD,
348+
RunnerLabels.FUNC_TESTER_AMD,
347349
],
348350
requires=[
349351
["Build (amd_asan)"],
@@ -352,6 +354,7 @@ class JobConfigs:
352354
["Build (amd_release)"],
353355
["Build (amd_release)"],
354356
["Build (amd_release)"],
357+
["Build (amd_debug)"],
355358
],
356359
)
357360
functional_tests_jobs_coverage = Job.Config(

ci/jobs/scripts/check_style/aspell-ignore/en/aspell-dict.txt

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -167,6 +167,7 @@ CityHash
167167
Clangd
168168
ClickBench
169169
ClickCat
170+
ClickHaskell
170171
ClickHouse
171172
ClickHouse's
172173
ClickHouseClient

cmake/ccache.cmake

Lines changed: 10 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -2,6 +2,8 @@
22

33
include(cmake/utils.cmake)
44

5+
set(CHCACHE_EXECUTABLE_PATH "" CACHE STRING "Path to chcache executable to use. If the compiler cache is set to use chcache, chcache will be used from here instead of building it.")
6+
57
# Defensive programming: early return to avoid configuring any cache after we've set dummy launchers.
68
# If something includes this file by mistake after the first setup, it'd override the dummy launchers.
79
if(USING_DUMMY_LAUNCHERS)
@@ -22,12 +24,18 @@ set(COMPILER_CACHE "auto" CACHE STRING "Speedup re-compilations using the cachin
2224

2325
if(COMPILER_CACHE STREQUAL "auto")
2426
find_program (CCACHE_EXECUTABLE NAMES sccache ccache)
25-
elseif (COMPILER_CACHE STREQUAL "ccache")
27+
elseif(COMPILER_CACHE STREQUAL "ccache")
2628
find_program (CCACHE_EXECUTABLE ccache)
2729
elseif(COMPILER_CACHE STREQUAL "sccache")
2830
find_program (CCACHE_EXECUTABLE sccache)
2931
elseif(COMPILER_CACHE STREQUAL "chcache")
30-
set(CCACHE_EXECUTABLE ${CMAKE_CURRENT_BINARY_DIR}/rust/chcache/chcache)
32+
if(CHCACHE_EXECUTABLE_PATH STREQUAL "")
33+
message(STATUS "Using self-built chcache")
34+
set(CCACHE_EXECUTABLE ${CMAKE_CURRENT_BINARY_DIR}/rust/chcache/chcache)
35+
else()
36+
message(STATUS "Using already built chcache from ${CHCACHE_EXECUTABLE_PATH}")
37+
set(CCACHE_EXECUTABLE ${CHCACHE_EXECUTABLE_PATH})
38+
endif()
3139
elseif(COMPILER_CACHE STREQUAL "disabled")
3240
message(STATUS "Using *ccache: no (disabled via configuration)")
3341
return()

docker/keeper/Dockerfile

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -38,7 +38,7 @@ RUN arch=${TARGETARCH:-amd64} \
3838
# lts / testing / prestable / etc
3939
ARG REPO_CHANNEL="stable"
4040
ARG REPOSITORY="https://packages.clickhouse.com/tgz/${REPO_CHANNEL}"
41-
ARG VERSION="25.4.2.31"
41+
ARG VERSION="25.4.3.22"
4242
ARG PACKAGES="clickhouse-keeper"
4343
ARG DIRECT_DOWNLOAD_URLS=""
4444

docker/server/Dockerfile.alpine

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -35,7 +35,7 @@ RUN arch=${TARGETARCH:-amd64} \
3535
# lts / testing / prestable / etc
3636
ARG REPO_CHANNEL="stable"
3737
ARG REPOSITORY="https://packages.clickhouse.com/tgz/${REPO_CHANNEL}"
38-
ARG VERSION="25.4.2.31"
38+
ARG VERSION="25.4.3.22"
3939
ARG PACKAGES="clickhouse-client clickhouse-server clickhouse-common-static"
4040
ARG DIRECT_DOWNLOAD_URLS=""
4141

0 commit comments

Comments
 (0)