ClickHouse® is a real-time analytics DBMS
Go to file
johanngan be8e048799 Revert invalid RegExpTreeDictionary optimization
This reverts the following commits:
- e77dd81036
- e8527e720b

Additionally, functional tests are added.

When scanning complex regexp nodes sequentially with RE2, the old code
has an optimization to break out of the loop early upon finding a leaf
node that matches. This is an invalid optimization because there's no
guarantee that it's actually a VALID match, because its parents might
NOT have matched. Semantically, a user would expect this match to be
discarded and for the search to continue. Instead, since we skipped
matching after the first false positive, subsequent nodes that would
have matched are missing from the output value. This affects both
dictGet and dictGetAll.

It's difficult to distinguish a true positive from a false positive
while looping through complex_regexp_nodes because we would have to scan
all the parents of a matching node to confirm a true positive. Trying to
do this might actually end up being slower than just scanning every
complex regexp node, because complex_regexp_nodes is only a subset of
all the tree nodes; we may end up duplicating work with scanning
that Vectorscan has already done, depending on whether the parent nodes
are "simple" or "complex". So instead of trying to fix this
optimization, just remove it entirely.
2023-06-06 16:28:44 -05:00
.github Create lambda_shared package for lambdas 2023-06-01 21:03:53 +02:00
base Merge branch 'master' into fix-secure-async-read-write 2023-06-04 05:06:59 +03:00
benchmark Remove old file 2022-07-12 20:28:02 +02:00
cmake 1. skip extract darwin toolchain in builder when uncessary 2023-06-04 23:06:21 +08:00
contrib Merge pull request #50400 from ClickHouse/bump-protobuf 2023-06-02 05:01:05 +03:00
docker Merge pull request #50361 from nickitat/fail_perf_on_too_many_slow 2023-06-06 11:33:04 +02:00
docs Merge pull request #50492 from ClickHouse/50422-add-systemuser_processes-system-table 2023-06-05 21:23:00 +02:00
packages Fix startup on older systemd versions 2023-03-17 17:56:56 +01:00
programs Rework loading and removing of data parts for MergeTree tables. (#49474) 2023-06-06 14:42:56 +02:00
rust Revert "Disable skim (Rust library) under memory sanitizer" 2023-06-05 09:08:01 +02:00
src Revert invalid RegExpTreeDictionary optimization 2023-06-06 16:28:44 -05:00
tests Revert invalid RegExpTreeDictionary optimization 2023-06-06 16:28:44 -05:00
utils Add dictGetAll to spell-check dictionary 2023-06-04 23:46:04 -05:00
.clang-format remove duplicate indentwith 2023-04-19 00:05:52 +08:00
.clang-tidy readability-identifier-names: adjust invalid options 2023-05-13 20:28:55 +00:00
.clangd Enable few slow clang-tidy checks for clangd 2023-05-13 14:08:25 +02:00
.editorconfig Changed tabs to spaces in editor configs and in style guide [#CLICKHOUSE-3]. 2017-04-01 11:35:09 +03:00
.exrc Fix vim settings (wrong group for autocmd) 2022-12-03 21:23:24 +01:00
.git-blame-ignore-revs Add files with revision to ignore for git blame 2022-09-13 23:05:56 +02:00
.gitattributes Ignore core.autocrlf for tests references 2022-10-05 09:13:27 +02:00
.gitignore Enable few slow clang-tidy checks for clangd 2023-05-13 14:08:25 +02:00
.gitmodules Merge pull request #50400 from ClickHouse/bump-protobuf 2023-06-02 05:01:05 +03:00
.pylintrc Cover deprecated bad-* pylint options with black 2022-06-08 14:18:28 +02:00
.snyk Add exclusions from the Snyk scan 2022-10-31 17:47:02 +01:00
.yamllint Drop truthy.check-keys from yamllint (does not supported on CI) 2021-02-21 06:15:36 +03:00
AUTHORS Update AUTHORS 2021-09-22 11:38:03 +03:00
CHANGELOG.md Release 23.4 is not LTS 2023-04-27 11:22:11 +02:00
CMakeLists.txt Merge pull request #49991 from amosbird/clickhouse_as_library 2023-05-19 12:37:18 +03:00
CODE_OF_CONDUCT.md Add minimal code of conduct #9676 2020-03-16 12:44:28 +03:00
CONTRIBUTING.md Mention ClickHouse CLA in CONTRIBUTING.md (#32697) 2021-12-14 03:47:19 +03:00
format_sources allow several <graphite> targets (#603) 2017-03-21 23:08:09 +04:00
LICENSE Update LICENSE 2023-01-02 00:35:32 +01:00
PreLoad.cmake CMake cleanup: Remove configuration of CMAKE_SHARED_LINKER_FLAGS 2023-03-26 17:59:39 +00:00
README.md Update README.md 2023-05-31 10:58:05 +02:00
SECURITY.md Regenerate SECURITY.md to shorten it 2023-05-03 19:25:28 +02:00

ClickHouse — open source distributed column-oriented DBMS

ClickHouse® is an open-source column-oriented database management system that allows generating analytical data reports in real-time.

How To Install (Linux, macOS, FreeBSD)

curl https://clickhouse.com/ | sh
  • Official website has a quick high-level overview of ClickHouse on the main page.
  • ClickHouse Cloud ClickHouse as a service, built by the creators and maintainers.
  • Tutorial shows how to set up and query a small ClickHouse cluster.
  • Documentation provides more in-depth information.
  • YouTube channel has a lot of content about ClickHouse in video format.
  • Slack and Telegram allow chatting with ClickHouse users in real-time.
  • Blog contains various ClickHouse-related articles, as well as announcements and reports about events.
  • Code Browser (Woboq) with syntax highlight and navigation.
  • Code Browser (github.dev) with syntax highlight, powered by github.dev.
  • Contacts can help to get your questions answered if there are any.

Upcoming Events

Also, keep an eye out for upcoming meetups in Amsterdam, Boston, NYC, Beijing, and Toronto. Somewhere else you want us to be? Please feel free to reach out to tyler clickhouse com.

Recent Recordings

  • Recent Meetup Videos: Meetup Playlist Whenever possible recordings of the ClickHouse Community Meetups are edited and presented as individual talks. Current featuring "Modern SQL in 2023", "Fast, Concurrent, and Consistent Asynchronous INSERTS in ClickHouse", and "Full-Text Indices: Design and Experiments"
  • Recording available: v23.4 Release Webinar Faster Parquet Reading, Asynchonous Connections to Reoplicas, Trailing Comma before FROM, extractKeyValuePairs, integrations updates, and so much more! Watch it now!
  • All release webinar recordings: YouTube playlist

Interested in joining ClickHouse and making it your full time job?

We are a globally diverse and distributed team, united behind a common goal of creating industry-leading, real-time analytics. Here, you will have an opportunity to solve some of the most cutting edge technical challenges and have direct ownership of your work and vision. If you are a contributor by nature, a thinker as well as a doer - well definitely click!

Check out our current openings here: https://clickhouse.com/company/careers

Cant find what you are looking for, but want to let us know you are interested in joining ClickHouse? Email careers@clickhouse.com!