ClickHouse® is a real-time analytics DBMS
Go to file
johanngan bcb058f999 Add case insensitive and dot-all modes to RegExpTree dictionary
The new per-dictionary settings control regex match semantics around
case sensitivity and the '.' wildcard with newlines. They must be set at
the dictionary level since they're applied to regex engines at
pattern-compile-time.

- regexp_dict_flag_case_insensitive: case insensitive matching
- regexp_dict_flag_dotall: '.' matches all characters including newlines

They correspond to HS_FLAG_CASELESS and HS_FLAG_DOTALL in Vectorscan
and case_sensitive and dot_nl in RE2. These are the most useful options
compatible with the internal behavior of RegExpTreeDictionary around
splitting up simple and complex patterns between Vectorscan and RE2.

The alternative is to use (?i) and/or (?s) for all patterns. However,
(?s) isn't handled properly by OptimizedRegularExpression::analyze().
And while (?i) is, it still causes the dictionary to treat the pattern
as "complex" for sequential scanning with RE2 rather than multi-matching
with Vectorscan, even though Vectorscan supports case insensitive
literal matching. Setting dictionary-wide flags is both more convenient,
and circumvents these problems.
2023-09-06 11:28:53 -05:00
.github Rollback testing part from #42599 2023-09-05 12:59:31 +02:00
base Refactor writeAnyMarkdownEscapedString and Add more info into doc. 2023-08-29 23:54:40 +08:00
benchmark Remove old file 2022-07-12 20:28:02 +02:00
cmake Update autogenerated version to 23.9.1.1 and contributors 2023-09-01 17:46:49 +02:00
contrib Merge remote-tracking branch 'u/master' into musl-7 2023-09-04 22:01:02 +02:00
docker Merge pull request #52721 from azat/musl-7 2023-09-05 18:37:40 +03:00
docs Add case insensitive and dot-all modes to RegExpTree dictionary 2023-09-06 11:28:53 -05:00
packages Add clickhouse-keeper-converter symlink to clickhouse-keeper package 2023-08-14 15:13:26 +08:00
programs Fix bad punctuation in Keeper logs 2023-09-06 03:31:46 +02:00
rust Use sccache for rust builds 2023-08-10 22:09:20 +02:00
src Add case insensitive and dot-all modes to RegExpTree dictionary 2023-09-06 11:28:53 -05:00
tests Add case insensitive and dot-all modes to RegExpTree dictionary 2023-09-06 11:28:53 -05:00
utils Fix style 2023-09-05 19:55:11 +00:00
.clang-format Configure rule for concepts requires clause 2023-06-05 06:55:52 -07: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
.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 Reproducible builds for Rust 2023-07-22 22:46:22 +02:00
.gitmodules Merge pull request #53763 from rschu1ze/branch-references 2023-08-29 15:29:43 +02: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 Increase line-length limit for yamlllint 2023-06-13 19:45:51 +02:00
AUTHORS Update AUTHORS 2021-09-22 11:38:03 +03:00
CHANGELOG.md Address TODO in Changelog 2023-08-31 21:01:23 +02:00
CMakeLists.txt fix fuzzers, cmake refactor, add target fuzzers 2023-09-01 14:20:50 +00:00
CODE_OF_CONDUCT.md
CONTRIBUTING.md Mention ClickHouse CLA in CONTRIBUTING.md (#32697) 2021-12-14 03:47:19 +03:00
format_sources
LICENSE Update LICENSE 2023-01-02 00:35:32 +01:00
PreLoad.cmake Revert "Check what will happen if we build ClickHouse with Musl" 2023-09-04 22:01:10 +02:00
README.md Update README.md 2023-08-06 21:46:06 +02:00
SECURITY.md Update version_date.tsv and changelogs after v23.8.1.2992-lts 2023-09-01 16:00:28 +00: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

Upcoming Events

Also, keep an eye out for upcoming meetups around the world. 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.6 Release Webinar All the features of 23.6, one convenient video! 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 and 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!