Skip to content

Allow certain functions without parentheses in SQL#94678

Merged
novikd merged 9 commits intoClickHouse:masterfrom
AlyHKafoury:Allow-certain-functions-without-parentheses-in-SQL
Feb 4, 2026
Merged

Allow certain functions without parentheses in SQL#94678
novikd merged 9 commits intoClickHouse:masterfrom
AlyHKafoury:Allow-certain-functions-without-parentheses-in-SQL

Conversation

@AlyHKafoury
Copy link
Copy Markdown
Contributor

@AlyHKafoury AlyHKafoury commented Jan 20, 2026

Changelog category (leave one):

  • New Feature

Changelog entry (a user-readable short description of the changes that goes into CHANGELOG.md):

Allow certain functions without parentheses in SQL. Closes #52102

Documentation entry for user-facing changes

  • Documentation is written (mandatory for new features)

@CLAassistant
Copy link
Copy Markdown

CLAassistant commented Jan 20, 2026

CLA assistant check
All committers have signed the CLA.

@AlyHKafoury AlyHKafoury force-pushed the Allow-certain-functions-without-parentheses-in-SQL branch from f017ca4 to e4b2685 Compare January 20, 2026 17:12
@AlyHKafoury AlyHKafoury force-pushed the Allow-certain-functions-without-parentheses-in-SQL branch from e4b2685 to 4b320a8 Compare January 20, 2026 17:19
@AlyHKafoury AlyHKafoury force-pushed the Allow-certain-functions-without-parentheses-in-SQL branch from 4b320a8 to 02ea153 Compare January 20, 2026 17:23
@AlyHKafoury
Copy link
Copy Markdown
Contributor Author

@alexey-milovidov I believe this is ready for review

@AlyHKafoury
Copy link
Copy Markdown
Contributor Author

@azat would love a review too

@novikd novikd self-assigned this Jan 21, 2026
@novikd novikd added the can be tested Allows running workflows for external contributors label Jan 21, 2026
@clickhouse-gh
Copy link
Copy Markdown
Contributor

clickhouse-gh bot commented Jan 21, 2026

Workflow [PR], commit [9177b92]

Summary:

job_name test_name status info comment
Stateless tests (arm_asan, targeted) failure
02046_remote_table_function_named_collections FAIL cidb, issue ISSUE CREATED
Integration tests (amd_asan, targeted) failure
test_storage_postgresql/test.py::test_predefined_connection_configuration[1-10] FAIL cidb IGNORED
test_storage_postgresql/test.py::test_postgres_ndim[10-10] FAIL cidb IGNORED
test_storage_postgresql/test.py::test_postgres_ndim[6-10] FAIL cidb IGNORED
test_storage_postgresql/test.py::test_postgres_ndim[2-10] FAIL cidb IGNORED
test_storage_postgresql/test.py::test_predefined_connection_configuration[6-10] FAIL cidb IGNORED
test_storage_postgresql/test.py::test_predefined_connection_configuration[8-10] FAIL cidb IGNORED
test_storage_postgresql/test.py::test_predefined_connection_configuration[7-10] FAIL cidb IGNORED
test_storage_postgresql/test.py::test_predefined_connection_configuration[9-10] FAIL cidb IGNORED
test_storage_postgresql/test.py::test_predefined_connection_configuration[10-10] FAIL cidb IGNORED
test_storage_postgresql/test.py::test_postgres_ndim[4-10] FAIL cidb IGNORED
10 more test cases not shown
Stateless tests (amd_asan, distributed plan, parallel, 2/2) failure
02046_remote_table_function_named_collections FAIL cidb IGNORED
Stateless tests (amd_debug, parallel) failure
02046_remote_table_function_named_collections FAIL cidb IGNORED
Stateless tests (amd_tsan, parallel, 2/2) failure
02046_remote_table_function_named_collections FAIL cidb IGNORED
Stateless tests (amd_msan, parallel, 2/2) failure
02046_remote_table_function_named_collections FAIL cidb IGNORED
Stateless tests (amd_ubsan, parallel) failure
02046_remote_table_function_named_collections FAIL cidb IGNORED
Stateless tests (amd_debug, distributed plan, s3 storage, parallel) failure
02046_remote_table_function_named_collections FAIL cidb IGNORED
Stateless tests (amd_tsan, s3 storage, parallel, 2/2) failure
02046_remote_table_function_named_collections FAIL cidb IGNORED
Stateless tests (arm_binary, parallel) failure
02046_remote_table_function_named_collections FAIL cidb IGNORED

@clickhouse-gh clickhouse-gh bot added the pr-feature Pull request with new product feature label Jan 21, 2026
@AlyHKafoury
Copy link
Copy Markdown
Contributor Author

@novikd I addressed all of the comments, and I believe the failing tests are just flaky

@AlyHKafoury AlyHKafoury requested a review from novikd January 21, 2026 21:36
@novikd
Copy link
Copy Markdown
Member

novikd commented Jan 26, 2026

@AlyHKafoury AlyHKafoury requested a review from novikd January 27, 2026 14:24
@AlyHKafoury
Copy link
Copy Markdown
Contributor Author

@novikd I applied the requested changes and the test failed doesn't include my tests

@AlyHKafoury
Copy link
Copy Markdown
Contributor Author

@novikd A gentle reminder

Copy link
Copy Markdown
Member

@novikd novikd left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

LGTM

@AlyHKafoury
Copy link
Copy Markdown
Contributor Author

@novikd Tests look fine all the failing ones are not related to the PR too

@novikd novikd added this pull request to the merge queue Feb 4, 2026
Merged via the queue into ClickHouse:master with commit 3e6aaab Feb 4, 2026
224 of 258 checks passed
@robot-clickhouse-ci-2 robot-clickhouse-ci-2 added the pr-synced-to-cloud The PR is synced to the cloud repo label Feb 4, 2026
@@ -0,0 +1,41 @@
-- Tags: no-parallel
Copy link
Copy Markdown
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Why no-parallel?

@Algunenano
Copy link
Copy Markdown
Member

This has completely broken 02046_remote_table_function_named_collections everywhere. I'm reverting ASAP

@rschu1ze
Copy link
Copy Markdown
Member

rschu1ze commented Feb 4, 2026

Side note: The problems with 02046_remote_table_function_named_collections were visible in CI. Let's check carefully before merging.

image

@AlyHKafoury
Copy link
Copy Markdown
Contributor Author

@rschu1ze @Algunenano , I will open another PR to fix the interactions between this and 02046 or we can use this PR ?

@novikd
Copy link
Copy Markdown
Member

novikd commented Feb 4, 2026

Side note: The problems with 02046_remote_table_function_named_collections were visible in CI. Let's check carefully before merging.

@rschu1ze I checked CI before merging. The error message is generic, and it was not clear that it was caused by this change. This PR does not change anything around the named collections.

@novikd
Copy link
Copy Markdown
Member

novikd commented Feb 4, 2026

I will open another PR to fix the interactions between this and 02046 or we can use this PR ?

You can open another PR once Revert is merged.

@tavplubix
Copy link
Copy Markdown
Member

I checked CI before merging. The error message is generic, and it was not clear that it was caused by this change. This PR does not change anything around the named collections.

@novikd there's a very useful cidb link for every faild test in the report (and if you checked this link, you might have noticed that this test wasn't flaky before), and also retry_failed tag which indicates that the test is broken and not just flaky. Moreover, the test has failed in every Stateless tests run. Didn't you find this suspicious when checking the CI?

@tavplubix
Copy link
Copy Markdown
Member

@novikd moreover, looks like this PR also breaks test_storage_postgresql: cidb

Screenshot From 2026-02-04 17-33-35

@novikd
Copy link
Copy Markdown
Member

novikd commented Feb 4, 2026

@tavplubix, as you may notice, errors in both 02046_remote_table_function_named_collections and test_storage_postgresql have the same message:
Unexpected key A in named collection. Required keys: addresses_expr, host, hostname, table, optional keys: database, db, password, port, sharding_key, username, user.

So it was clear that the root cause of these failures was the same. So I decided that it is also unrelated.

@novikd there's a very useful cidb link for every faild test in the report (and if you checked this link, you might have noticed that this test wasn't flaky before), and also retry_failed tag which indicates that the test is broken and not just flaky. Moreover, the test has failed in every Stateless tests run. Didn't you find this suspicious when checking the CI?

I found it suspicious, but it is still unclear to me why named collections are dependent on function resolution. I checked the CI report and even fixed one test failure myself: 9177b92.

@novikd
Copy link
Copy Markdown
Member

novikd commented Feb 4, 2026

I don't quite understand why this mistake requires so much attention and passive-aggressive messages. I agreed that I made a mistake and the PR was reverted. There were visible actions on my part indicating that I was reviewing the CI reports.

This is the first PR with broken CI checks I merged in months, so it is obviously a one-time mistake that I regret (I actually don't remember doing something like this in 2025, but it's not the point).

I don't think that public shaming or passive-aggression would improve the state of our CI.

@tavplubix
Copy link
Copy Markdown
Member

Dima, I'm sorry, I didn't mean to blame you for a mistake, mistakes happen, and it's okay. Especially when we have a lot of unrelated failures and flaky or even broken tests in general, it's easy to miss something like this

I just wanted to highlight some features of the CI that can help to avoid such mistakes. Because in most cases it happens exactly when a failure looks unrelated, but appears to be actually related for some reason. If a test was never flaky before but then suddenly failed in all checks in the PR - it has to be investigated before merging. Another option (which I personally don't like, but many people do it) is to merge master and rerun CI to make sure that it's unrelated

It's a very good question why named collections depend on function resolution

@AlyHKafoury
Copy link
Copy Markdown
Contributor Author

@tavplubix I am trying to fix this problem of dependency now and re submit the PR it is my fault after all @novikd was just helping me and I am grateful for that. I am just nee to the CI system this only my 3rd PR, but I will get this fixed and merged back again

@tavplubix
Copy link
Copy Markdown
Member

It's nobody's fault, shit happens

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

can be tested Allows running workflows for external contributors pr-feature Pull request with new product feature pr-synced-to-cloud The PR is synced to the cloud repo

Projects

None yet

Development

Successfully merging this pull request may close these issues.

Allow certain functions without parentheses in SQL

7 participants