Commit Graph

1043 Commits

Author SHA1 Message Date
alesapin
011109c82a
Merge pull request #17348 from xjewer/alex/CLICKHOUSE-606_deduplication_UUID
CLICKHOUSE-606: query deduplication based on parts' UUID
2021-02-05 22:47:34 +03:00
Alexander Kuzmenkov
6824f13a35 tmp 2021-02-05 12:13:19 +03:00
Ivan Lezhankin
ee0ff755e2 Check that position always advances 2021-02-04 17:46:46 +03:00
Vladimir Chebotarev
f106d58c05 Minor fix. 2021-02-04 10:41:47 +03:00
Alexander Kuzmenkov
f31d2206a7 more fuzzing and less bugs 2021-02-03 15:50:25 +03:00
Alexander Kuzmenkov
bb45c5a8ff Merge remote-tracking branch 'origin/master' into HEAD 2021-02-03 12:13:23 +03:00
Alexander Kuzmenkov
a164abf23e add frame fuzzing and one query that fails under msan 2021-02-03 09:42:54 +03:00
Aleksei Semiglazov
921518db0a CLICKHOUSE-606: query deduplication based on parts' UUID
* add the query data deduplication excluding duplicated parts in MergeTree family engines.

query deduplication is based on parts' UUID which should be enabled first with merge_tree setting
assign_part_uuids=1

allow_experimental_query_deduplication setting is to enable part deduplication, default ot false.

data part UUID is a mechanism of giving a data part a unique identifier.
Having UUID and deduplication mechanism provides a potential of moving parts
between shards preserving data consistency on a read path:
duplicated UUIDs will cause root executor to retry query against on of the replica explicitly
asking to exclude encountered duplicated fingerprints during a distributed query execution.

NOTE: this implementation don't provide any knobs to lock part and hence its UUID. Any mutations/merge will
update part's UUID.

* add _part_uuid virtual column, allowing to use UUIDs in predicates.

Signed-off-by: Aleksei Semiglazov <asemiglazov@cloudflare.com>

address comments
2021-02-02 16:53:39 +00:00
alesapin
9979181c02 Merge branch 'master' into in_memory_raft 2021-02-02 17:05:20 +03:00
alexey-milovidov
f5dc38a33c
Merge pull request #19584 from azat/client-complete-error-codes
client: more suggestions
2021-02-02 11:05:17 +03:00
alesapin
d265e3b419 Less timeouts 2021-02-02 11:02:25 +03:00
alexey-milovidov
8c0ec5105b
Add a patch from @FishermanZzhang, #19952 2021-02-02 06:53:11 +03:00
Azat Khuzhin
37797fdf5b Merge remote-tracking branch 'upstream/master' into client-complete-error-codes 2021-02-02 00:14:53 +03:00
alesapin
f6a8c90be2 Fix config path 2021-02-01 18:12:00 +03:00
alesapin
a8d30bedea Missed config file 2021-02-01 17:16:37 +03:00
alesapin
365bf65f5a Fix install script 2021-02-01 17:14:59 +03:00
alesapin
57c9b6c864 Fix build without nuraft 2021-02-01 16:18:17 +03:00
alesapin
0aca40d8cb Merge branch 'master' into in_memory_raft 2021-02-01 14:30:11 +03:00
Alexey Milovidov
b74b76f681 clickhouse-benchmark: add --reconnect option 2021-01-31 12:36:55 +03:00
Alexey Milovidov
30e1db7f47 Merge branch 'master' into azat-client-complete-error-codes 2021-01-31 00:01:47 +03:00
alexey-milovidov
a9d9a8f3a9
Update Suggest.cpp 2021-01-30 01:21:51 +03:00
alesapin
e4f9a4ea65 Merge branch 'master' into in_memory_raft 2021-01-29 15:56:54 +03:00
Azat Khuzhin
585874bf46 tests: add a test for clickhouse-client autocompletion
v2: Increase timeout for 01676_clickhouse_client_autocomplete
    https://github.com/ClickHouse/ClickHouse/pull/19584#discussion_r565727175

v3: Disable 01676_clickhouse_client_autocomplete in unbundled build (arcadia)

    autocomplete does not have to work fully unbundled build (since it lack
    of replxx).

    Similar to bd523a0aff

v4: set expect timeout back to 1 and increase total timeout to 20 sec
v4: set expect timeout back to 3 and increase total timeout to 22 (3*X+1) sec
2021-01-29 07:50:08 +03:00
Alexander Kuzmenkov
d72b302b97
Update Client.cpp 2021-01-28 23:16:35 +03:00
Azat Khuzhin
86f80105cb client/suggest: add policy 2021-01-28 23:16:06 +03:00
Azat Khuzhin
212d5082b4 client/suggest: add macros 2021-01-28 23:16:06 +03:00
Azat Khuzhin
1c68bf8545 client/suggest: add other metrics 2021-01-28 23:16:06 +03:00
Azat Khuzhin
a2bab85b78 client/suggest: set system_events_show_zero_values for query 2021-01-28 23:16:06 +03:00
Azat Khuzhin
b57452446b client/suggest: add error code names 2021-01-28 23:16:06 +03:00
Alexander Kuzmenkov
f799b332d6 Merge remote-tracking branch 'origin/master' into HEAD 2021-01-28 14:52:55 +03:00
Alexander Kuzmenkov
3f305cecc3 add empty line after error messages in client 2021-01-27 22:52:18 +03:00
alesapin
a33963e211 Better raft server startup 2021-01-27 20:54:25 +03:00
alesapin
6441d3200b Merge branch 'master' into in_memory_raft 2021-01-26 14:14:39 +03:00
alesapin
97b9dba460 Multinode config 2021-01-25 17:10:18 +03:00
Vitaly Baranov
813b2bcc73
Merge pull request #17211 from traceon/ldap-role-mapping
LDAP group to local role mapping support
2021-01-25 15:39:42 +03:00
alesapin
dea4b5009b Some server initialization 2021-01-25 15:29:12 +03:00
alesapin
173b6fefdf Merge branch 'master' into in_memory_raft 2021-01-25 12:03:28 +03:00
Alexey Milovidov
8d335b1490 Allow to enable or disable watchdog via env var 2021-01-23 23:58:36 +03:00
Alexander Kuzmenkov
ccf332ea7e Don't dwell on the past in query fuzzer
When we remember too many query fragments, just clean the database
and start collecting it anew. Hopefully this should make the fuzzer more
aggressive.
2021-01-22 20:15:31 +03:00
alesapin
c1e36cfe70 Something working 2021-01-22 19:04:57 +03:00
Alexander Kuzmenkov
2eba7413e1 remove extra newline 2021-01-22 02:42:24 +03:00
Alexander Kuzmenkov
eb7b87ee8d update tests 2021-01-21 21:01:32 +03:00
Alexander Kuzmenkov
ec8ff21526 Reconnect after client errors 2021-01-21 17:28:46 +03:00
Alexander Kuzmenkov
4d16dead0f Merge remote-tracking branch 'origin/master' into HEAD 2021-01-19 20:34:01 +03:00
Alexander Kuzmenkov
6fefc29f39 comment 2021-01-19 20:25:28 +03:00
Alexander Kuzmenkov
847a4e5d7c Merge remote-tracking branch 'origin/master' into HEAD 2021-01-19 20:22:03 +03:00
Alexander Kuzmenkov
f5931a2289
Merge pull request #19236 from ClickHouse/aku/echo-leading
Make `-- { echo }` hint preserve leading comments
2021-01-19 20:20:58 +03:00
Alexander Kuzmenkov
1bd0c25bf0 Consolidate the test hint handling
Before it was handled in like five places with two of them disabled by a
flag and the others not disabled. Hard to navigate.
2021-01-19 01:40:30 +03:00
Alexander Kuzmenkov
20ef3d7b06 Merge commit '7fa7ea2c935776a3cd9670661739ecaaed80a6c4' into HEAD 2021-01-18 23:26:48 +03:00
Alexander Kuzmenkov
d0922e2985 Merge remote-tracking branch 'origin/master' into tmp 2021-01-18 23:23:49 +03:00
Denis Glazachev
30ab2830e0 Merge branch 'master' into ldap-role-mapping
* master: (605 commits)
  DOCSUP-4710: Added support numeric parameters in number and string data types (#18696)
  DOCSUP-5604: Edit and translate to Russian (#18929)
  Update version_date.tsv after release 21.1.2.15
  Usability improvement of clickhouse-test
  Update jit_large_requests.xml
  Update README.md
  Update images.json
  Make symbolizers available in fuzzer Docker image
  Update Dragonbox
  Speed up aggregate function sum
  Fix MSan report in Kerberos library
  Fix MSan error in rocksdb #19213
  Add more Fuzzer tasks
  Fixes
  Update comment for curl dependency for aws
  Disable curl for mariadb-connector-c (it is not required)
  Fix TSan
  Skip test for ANTLR
  DistributedBlockOutputStream: add more comments
  DistributedBlockOutputStream: Remove superfluous brackets for string construction
  ...
2021-01-18 22:55:05 +04:00
Alexander Kuzmenkov
b2547e99a0 whitespace 2021-01-18 15:18:29 +03:00
Alexander Kuzmenkov
c153268da7 Make -- { echo } hint preserve leading comments. 2021-01-18 15:15:46 +03:00
Alexey Milovidov
3289078ead Merge branch 'master' into aggressive-fuzz-new-tests 2021-01-18 14:04:00 +03:00
Alexander Kuzmenkov
f3e112766f cleanup 2021-01-18 12:49:56 +03:00
Alexey Milovidov
950bfb3ec6 Allow change max_server_memory_usage without restart 2021-01-16 18:33:46 +03:00
Alexey Milovidov
6cd352fbe3 Remove unneeded change from #18977 2021-01-16 18:08:21 +03:00
alexey-milovidov
6885890006
Merge pull request #18977 from ClickHouse/fix_deadlock_on_shutdown
Fix rare deadlock at shutdown of BackgroundSchedulePool
2021-01-16 18:05:59 +03:00
Alexey Milovidov
52a05f4b5d Extreme fuzzing of newly added tests 2021-01-16 18:03:32 +03:00
Alexander Kuzmenkov
9d6730a846 small fixes 2021-01-16 00:33:53 +03:00
Alexander Kuzmenkov
765aa4d4e3 rewrote everything again 2021-01-15 23:30:44 +03:00
Alexander Kuzmenkov
c9628386fc more fixes 2021-01-15 01:39:43 +03:00
Alexander Kuzmenkov
4c2c083387 strip leading whitespace 2021-01-15 00:27:36 +03:00
Alexander Kuzmenkov
1abb554d2b test fixes 2021-01-14 23:47:52 +03:00
Alexander Kuzmenkov
d53da04e6f without debug 2021-01-14 18:38:27 +03:00
Alexander Kuzmenkov
8be081e3c0 with debug 2021-01-14 18:35:52 +03:00
Alexander Kuzmenkov
48509a85d3 comment woes 2021-01-14 01:04:19 +03:00
Alexander Kuzmenkov
c2a1373720 Merge remote-tracking branch 'origin/master' into tmp 2021-01-13 22:30:08 +03:00
Alexander Kuzmenkov
703731c547 something works 2021-01-13 22:29:52 +03:00
alexey-milovidov
f9586ab891
Update play.html 2021-01-13 17:29:11 +03:00
alexey-milovidov
10c162c0fa
Update play.html 2021-01-13 17:28:56 +03:00
sundy-li
046a4b605c Support metaKey 2021-01-13 13:53:17 +00:00
Alexander Tokmakov
3cc7e1407d revert previous fix 2021-01-12 21:45:44 +03:00
Alexey Milovidov
24ded3c1c1 Allow clickhouse-local to run without system tables 2021-01-10 14:12:22 +03:00
Alexey Milovidov
79a38c4c6e Fix hang at shutdown in clickhouse-local 2021-01-10 06:35:05 +03:00
Alexey Milovidov
32f10c38d9 Query Fuzzer: return fail fast semantics 2021-01-09 08:30:23 +03:00
alexey-milovidov
6e34a0b71e
Merge pull request #17855 from spongedu/complete_sysemlog_table_doc
1. Refine documents for system log table; 2. fix a link error in config.xml
2021-01-08 09:49:01 +03:00
Alexey Milovidov
6dcc779978 Merge branch 'master' into spongedu-complete_sysemlog_table_doc 2021-01-07 22:27:37 +03:00
Alexey Milovidov
cea1b7dba5 Fix build 2021-01-07 16:37:06 +03:00
Alexey Milovidov
6f481d7512 Add integrity checks for ClickHouse binary 2021-01-07 05:56:57 +03:00
Denis Glazachev
8893fbcf8e Rename {username} to {user_name}
Add caching/checking of search_params
Adjust comments/doc
Use special authentication logic from ExternalAuthenticators::checkLDAPCredentials
2021-01-06 07:40:47 +04:00
Alexey Milovidov
aff4ba7726 Slightly better 2021-01-06 04:03:07 +03:00
Alexey Milovidov
8d34f76d76 Slightly better 2021-01-06 03:58:31 +03:00
Denis Glazachev
c8cf51b81e Merge branch 'master' into ldap-role-mapping
* master: (620 commits)
  Add test for some possible ambiguities in syntax
  Update PushingToViewsBlockOutputStream.h
  [For #18707] MySQL compatibility: support DIV and MOD operators
  Mark another flaky test
  Remove some headers
  Mark some TestFlows as flaky
  Fix error
  Fix errors
  One more test
  Arcadia does not support distributed queries
  Add a test for #14974
  Added a test from #15641
  More robust stateful test
  Update tests
  Remove bad code in HashJoin
  Update test
  Don't allow conversion between UUID and numeric types
  Remove pink screen with confusing questions about Kerberos
  Do not throw from Parser
  Fix the unexpected behaviour of show tables when antlr parser enabled (#18431)
  ...

# Conflicts:
#	programs/server/config.xml
#	src/Access/Authentication.cpp
#	src/Access/Authentication.h
2021-01-06 03:42:02 +04:00
Alexey Milovidov
895ec0976b Break query fuzzer even more 2021-01-06 00:34:08 +03:00
Alexey Milovidov
7f074cb491 Remove half of strange code from query fuzzer 2021-01-06 00:20:39 +03:00
Alexey Milovidov
8ecbfe701c Miscellaneous 2021-01-05 23:32:42 +03:00
Alexey Milovidov
5573c3b61e Fix error in Fuzzer 2021-01-05 23:32:05 +03:00
Alexey Milovidov
1bd6605373 Remove strange code from Fuzzer 2021-01-05 23:30:00 +03:00
Alexey Milovidov
a06f03b9b3 Query Fuzzer: fix some cultural issues 2021-01-05 23:23:26 +03:00
alexey-milovidov
2a37f5f687
Merge pull request #18740 from ClickHouse/remove-incl
Remove obsolete "incl" from /etc/metrika.xml; correct links in config
2021-01-05 03:31:18 +03:00
Alexey Milovidov
063360511a Remove obsolete "incl" from /etc/metrika.xml; correct links in config 2021-01-04 21:01:17 +03:00
Alexey Milovidov
6ec602ad67 Fix build 2021-01-04 19:38:43 +03:00
Alexey Milovidov
735a8ed74c Fix build 2021-01-04 17:08:58 +03:00
Alexey Milovidov
e4894fc18e Replace "sleep" 2021-01-04 17:05:06 +03:00
Alexey Milovidov
38d982b199 Merge branch 'master' into harmful 2021-01-04 04:06:46 +03:00
Azat Khuzhin
c0fa2fb6e6 compressor: remove extra check for seeking of input 2020-12-31 22:13:04 +03:00
Nikita Mikhaylov
f27aa148e0
Merge branch 'master' into parallel-parsing-input-format 2020-12-31 06:16:43 +04:00
Alexey Milovidov
98687ff8f4 Merge branch 'master' into harmful 2020-12-31 02:25:28 +03:00
Alexey Milovidov
611caf1778 Send fatal logs in all tests 2020-12-30 22:12:24 +03:00
Nikita Mikhailov
8e31ce4a5c Merge branch 'master' of github.com:ClickHouse/ClickHouse into parallel-parsing-input-format 2020-12-30 18:22:11 +03:00
alexey-milovidov
c281a17869
Merge pull request #18619 from azat/utils-pull
Small utils improvements (check-marks and compressor)
2020-12-30 17:45:43 +03:00
alexey-milovidov
aa67966932
Update Compressor.cpp 2020-12-30 17:45:09 +03:00
Vitaly Baranov
a84887aff8
Merge pull request #15988 from traceon/ldap-cache-login
Allow caching of successful "bind" attempts to LDAP server for configurable period of time
2020-12-30 17:24:45 +03:00
Nikita Mikhailov
c5f92e5096 better formatfactory 2020-12-30 06:07:30 +03:00
Azat Khuzhin
30508c1b50 compressor: return 0 on --help 2020-12-29 23:09:00 +03:00
Azat Khuzhin
e02c328453 compressor: remove superfluous warning suppressions 2020-12-29 23:08:29 +03:00
Azat Khuzhin
009a281894 compressor: using for program_options namespace 2020-12-29 23:07:35 +03:00
Azat Khuzhin
3362c8fc40 compressor: add seek support while reading compressed file
Useful to debug .bin files
2020-12-29 23:06:40 +03:00
Azat Khuzhin
a71c193062 compressor: add positional arguments support for input/output 2020-12-29 23:05:54 +03:00
Nikita Mikhailov
2b90b4e01d Merge branch 'master' of github.com:ClickHouse/ClickHouse into parallel-parsing-input-format 2020-12-29 22:47:06 +03:00
Nikita Mikhailov
2dde73f700 better 2020-12-28 19:52:54 +03:00
Nikita Mikhailov
c3288c3fbf Merge branch 'master' of github.com:ClickHouse/ClickHouse into parallel-parsing-input-format 2020-12-28 15:09:37 +03:00
Alexander Kuzmenkov
2905f70cce fix aliases in partition by/order by 2020-12-28 12:56:38 +03:00
Alexey Milovidov
bb4668fd6e Fix bug: no newline after exception message in some tools 2020-12-24 00:18:08 +03:00
Vitaliy Zakaznikov
c12695ceed Merge branch 'master' of https://github.com/traceon/ClickHouse into ldap-role-mapping 2020-12-23 09:38:08 -05:00
Alexey Milovidov
fdc8950fbe Do not use watchdog when server is run from tty 2020-12-23 17:31:10 +03:00
Vitaliy Zakaznikov
26ca04c92d Merge branch 'master' of https://github.com/traceon/ClickHouse into ldap-cache-login 2020-12-23 08:17:12 -05:00
Alexander Kuzmenkov
51b2329295
Merge branch 'master' into aku/window-prototype 2020-12-23 09:26:11 +03:00
alexey-milovidov
29ad7b6d94
Merge pull request #13516 from ClickHouse/watchdog
If server was terminated by OOM killer, print message in log.
2020-12-23 05:35:44 +03:00
Nikita Mikhailov
dcfbe782c6 Merge branch 'master' of github.com:ClickHouse/ClickHouse into parallel-parsing-input-format 2020-12-23 05:20:22 +03:00
Nikita Mikhaylov
015bd56516
Merge pull request #18201 from nikitamikhaylov/clickhouse-install
Try to make clickhouse-install work on mac
2020-12-23 01:37:15 +03:00
Alexander Kuzmenkov
3da533766d clang-tidy....... 2020-12-22 10:25:45 +03:00
Alexander Kuzmenkov
919172f9ee more fuzzer fixes 2020-12-22 07:16:56 +03:00
Alexander Kuzmenkov
dadfc76f8f fix the fuzzer 2020-12-22 07:02:39 +03:00
Alexey Milovidov
f9012b12fb Proper implementation 2020-12-22 06:01:51 +03:00
Alexey Milovidov
932ade2cb8 Merge branch 'master' into watchdog 2020-12-22 03:10:15 +03:00
nikitamikhaylov
8501c7a831 better 2020-12-22 02:03:08 +03:00
nikitamikhaylov
cd3a73f9d3 done 2020-12-22 00:47:10 +03:00
Alexey Milovidov
7421a55cc4 Merge branch 'master' into harmful 2020-12-21 23:44:22 +03:00
alexey-milovidov
d66506299f
Merge pull request #18238 from azat/jemalloc-MADV_DONTNEED-runtime-check
MADV_DONTNEED check in runtime for qemu (via patching jemalloc)
2020-12-21 21:07:49 +03:00
Alexey Milovidov
157c66ebdb Merge branch 'master' into harmful 2020-12-21 10:57:50 +03:00
Alexander Kuzmenkov
85c1bc1253 Merge remote-tracking branch 'origin/master' into tmp 2020-12-21 10:46:21 +03:00
Alexey Milovidov
b99634dc5d Merge branch 'master' into harmful 2020-12-21 03:03:10 +03:00
Denis Glazachev
ea7e94f3eb Use 127.0.0.1 as a default listen-host for ODBC bridge 2020-12-21 03:26:31 +04:00
Azat Khuzhin
e379b80d45 MADV_DONTNEED check in runtime for qemu (via patching jemalloc)
qemu does not support MADV_DONTNEED, and by not support it simply ignore
it (i.e. return 0 -- no error).

This issue has been "fixed" in #15590, however it just
terminates the process, and completely breaks clickhouse under qemu
(see also #15174).

But there is no need in such strong protection, we can stop using
madvise in jemalloc if MADV_DONTNEED does not work properly.
And this is what #18169 was tried to do (by override madvise), however
this will break sanitizers, at least TSAN and UBSAN.
The problem there is that sanitizers initialization code uses madvise
(and there is no way to turn this off with TSAN_OPTIONS) and overwritten
madvise function will have sanitizers traits (__tsan_func_entry), while
TSAN is not ready for this, and eventually it SIGSEGV.
Interesting thing is that in the recent clang-12, madvise was replaced
with direct syscall [1].

  [1]: 9f8c4039f2

But it is better to make clickhouse compatible with clang < 12 too, so
instead of override madvise completely, the runtime check was moved into
the jemalloc code [2].

  [2]: https://github.com/ClickHouse-Extras/jemalloc/pull/1
2020-12-19 15:34:12 +03:00
Alexey Milovidov
ecc270605d Fix error (CC @akuzm) 2020-12-19 01:07:52 +03:00
Alexey Milovidov
7805e84b4b Return clickhouse-git-import 2020-12-19 00:19:11 +03:00
Alexey Milovidov
9c3fbc9ac6 Return clickhouse-git-import 2020-12-19 00:04:03 +03:00
Amos Bird
c447628d42
Add connection thread metrics 2020-12-18 15:22:55 +08:00
alexey-milovidov
6a5ce2eea7
Update config.xml 2020-12-18 07:58:56 +03:00
alexey-milovidov
44734a829e
Merge pull request #18207 from ClickHouse/better-config
Better config: example ports, security advices
2020-12-18 06:39:35 +03:00
alexey-milovidov
b4a59aecfe
Update config.xml 2020-12-18 06:39:21 +03:00
Nikita Mikhaylov
b1d1ea0e01
Update Install.cpp 2020-12-18 06:17:23 +03:00
Alexander Kuzmenkov
5e19eaf2f0 Merge remote-tracking branch 'origin/master' into tmp 2020-12-18 03:49:59 +03:00
Alexander Kuzmenkov
157fe3e8b4 some tests + ability to echo the queries 2020-12-18 03:49:18 +03:00
Nikita Mikhaylov
80fae17545
Update Install.cpp 2020-12-18 03:30:01 +03:00
Alexander Kuzmenkov
fc426807a8 formatting & fuzzer support 2020-12-18 03:21:23 +03:00
Nikita Mikhailov
6a55e018e4 Merge branch 'master' of github.com:ClickHouse/ClickHouse into parallel-parsing-input-format 2020-12-18 02:25:32 +03:00
nikitamikhaylov
d3c64e7528 cleanup 2020-12-18 02:12:38 +03:00