ClickHouse® is a real-time analytics DBMS
Go to file
Azat Khuzhin f6cfcd4da9 Fix null dereference with join_use_nulls=1
Found with MSan [1], the following query triggers null dereference:

```sql
SELECT
    Y.id - 1
FROM X
RIGHT JOIN Y ON (X.id + 1) = Y.id
SETTINGS join_use_nulls=1; -- { serverError 53 }
```

```
Received signal 11
(version 21.3.1.5916, build id: 2E9E84AA32AEAAC7C8B6EB45DA3EC0B4F15E9ED4) (from thread 100) (query_id: 9ab8cb0d-be8d-445e-8498-930a7268488b) Received signal Segmentation fault (11)
Address: 0x10 Access: read. Address not mapped to object.
Stack trace: 0x2d079d65 0x29bf1f30 0x12b12220 0x12b13098 0x12b17b08 0x12b20459 0x2ae37913 0x2ae352d9 0x2c746072 0x2c7585dd 0x2c7483e3 0x2c74e63d 0x2c7483e3 0x2c74e63d 0x2c7483e3 0x2c74e63d 0x2c7483e3 0x2c74e63d 0x2c7483e3 0x2c74e63d 0x2c7483e3 0x2c74e63d 0x2c7483e3 0x2c74e63d 0x2c7483e3 0x2c74e63d 0x2c7483e3 0x2c74e63d
4. ./obj-x86_64-linux-gnu/../contrib/boost/boost/smart_ptr/intrusive_ptr.hpp:0: DB::ColumnConst::ColumnConst(COW<DB::IColumn>::immutable_ptr<DB::IColumn> const&, unsigned long) @ 0x2d079d65 in /workspace/clickhouse
5. ./obj-x86_64-linux-gnu/../src/Common/COW.h:0: DB::createBlockWithNestedColumns(std::__1::vector<DB::ColumnWithTypeAndName, std::__1::allocator<DB::ColumnWithTypeAndName> > const&) @ 0x29bf1f30 in /workspace/clickhouse
6. DB::FunctionOverloadResolverAdaptor::getReturnTypeDefaultImplementationForNulls(std::__1::vector<DB::ColumnWithTypeAndName, std::__1::allocator<DB::ColumnWithTypeAndName> > const&, std::__1::function<std::__1::shared_ptr<DB::IDataType const> (std::__1::vector<DB::ColumnWithTypeAndName, std::__1::allocator<DB::ColumnWithTypeAndName> > const&)> const&) @ 0x12b12220 in /workspace/clickhouse
7. DB::FunctionOverloadResolverAdaptor::getReturnTypeWithoutLowCardinality(std::__1::vector<DB::ColumnWithTypeAndName, std::__1::allocator<DB::ColumnWithTypeAndName> > const&) const @ 0x12b13098 in /workspace/clickhouse
8. DB::FunctionOverloadResolverAdaptor::getReturnType(std::__1::vector<DB::ColumnWithTypeAndName, std::__1::allocator<DB::ColumnWithTypeAndName> > const&) const @ 0x12b17b08 in /workspace/clickhouse
9. DB::FunctionOverloadResolverAdaptor::build(std::__1::vector<DB::ColumnWithTypeAndName, std::__1::allocator<DB::ColumnWithTypeAndName> > const&) const @ 0x12b20459 in /workspace/clickhouse
```

  [1]: https://clickhouse-test-reports.s3.yandex.net/19451/64c0bf98290362fa216c05b070aa122a12af3c25/fuzzer_msan/report.html#fail1
2021-02-11 21:30:05 +03:00
.github See comment from Maxim Akhmedov in https://t.me/joinchat/VP49ANS8VOcAgG75 at 2021-02-10 22:31 MSK 2021-02-10 23:32:11 +03:00
base Update Pytest check (#18972) 2021-02-10 21:09:13 +03:00
benchmark
cmake Auto version update to [21.3.1.1] [54448] 2021-02-01 12:50:56 +03:00
contrib Fix build 2021-02-07 16:20:00 +03:00
debian Auto version update to [21.3.1.1] [54448] 2021-02-01 12:50:56 +03:00
docker Update run-fuzzer.sh 2021-02-11 10:45:51 +03:00
docs Fix broken links to "max table size" param in backup documentation 2021-02-10 22:03:27 +03:00
programs Merge pull request #20111 from ClickHouse/aku/window-prototype 2021-02-11 10:39:21 +03:00
src Fix null dereference with join_use_nulls=1 2021-02-11 21:30:05 +03:00
tests Fix null dereference with join_use_nulls=1 2021-02-11 21:30:05 +03:00
utils Merge pull request #19726 from CurtizJ/style-check 2021-02-08 16:24:49 +03:00
website Merge pull request #20125 from qoega/add-benchmark-8cpu-s3 2021-02-07 16:51:26 +03:00
.arcignore
.clang-format
.clang-tidy
.editorconfig
.gitattributes
.gitignore
.gitmodules Fix msan warnings 2021-01-29 19:11:50 +03:00
.potato.yml
.pylintrc Add pylintrc config 2021-01-26 23:35:56 +03:00
.vimrc
AUTHORS
CHANGELOG.md Update CHANGELOG.md 2021-02-07 18:19:10 +03:00
CMakeLists.txt Merge branch 'master' into kssenii-pg2ch 2021-01-15 17:33:19 +03:00
CODE_OF_CONDUCT.md
CONTRIBUTING.md
docker-compose.yml
format_sources
LICENSE Update LICENSE 2021-01-25 17:00:13 +03:00
PreLoad.cmake Check if XCODE_IDE is true and avoid enforcing ninja in that case 2021-01-06 03:06:03 +04:00
README.md Update README.md 2021-02-09 15:02:28 +03:00
release Convert to python3 (#15007) 2020-10-02 19:54:07 +03:00
SECURITY.md Update SECURITY.md (outdated long time ago) 2021-01-21 16:48:28 +03:00
uncrustify.cfg
ya.make

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.

  • Official website has quick high-level overview of ClickHouse on main page.
  • Tutorial shows how to set up and query 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 to chat with ClickHouse users in real-time.
  • Blog contains various ClickHouse-related articles, as well as announcements and reports about events.
  • Code Browser with syntax highlight and navigation.
  • Contacts can help to get your questions answered if there are any.
  • You can also fill this form to meet Yandex ClickHouse team in person.

Upcoming Events