Commit Graph

5083 Commits

Author SHA1 Message Date
Kseniia Sumarokova
4b7c303eaf
Merge branch 'master' into rabbitmq-improvements 2020-09-03 17:26:04 +03:00
Vitaly Baranov
dda884d6d0
Update AccessControlManager.h
Add "override" for the destructor of AccessControlManager
2020-09-03 17:20:14 +03:00
alesapin
15a02321bf Merge branch 'fix_select_parts_for_merge' into control_ttl_merges_in_pool 2020-09-03 17:16:29 +03:00
alesapin
55adb6f9f2
Update src/Storages/MergeTree/MergeSelector.h
Co-authored-by: Nikita Mikhaylov <mikhaylovnikitka@gmail.com>
2020-09-03 16:55:34 +03:00
alexey-milovidov
6a32d30578
Merge pull request #14431 from ClickHouse/fix-lazy-database
Fix for Lazy database
2020-09-03 16:38:59 +03:00
alesapin
e48e4309b2 Better names 2020-09-03 16:29:18 +03:00
alesapin
565555e55c Fix bug in parts selection 2020-09-03 16:04:28 +03:00
alesapin
13248a744b Fix bug in parts selection 2020-09-03 16:02:24 +03:00
alesapin
f4c7ff0376 Add fixed size of Merge TTLS 2020-09-03 16:00:13 +03:00
alesapin
aa47d0aabc Merge branch 'apply_ttl_if_not_calculated' into recompression_in_background 2020-09-03 12:07:03 +03:00
alesapin
acc0ee0657 Apply TTL if it's not calculated for part 2020-09-03 11:59:41 +03:00
Ilya Yatsishin
2b8ad576cc
Merge pull request #14323 from qoega/try-dns-fix
Add tag pass for integration base image. Add explicit dns options for docker-compose.
2020-09-03 11:27:24 +03:00
kssenii
e1ef558a2d Fixes 2020-09-03 06:50:20 +00:00
alexey-milovidov
edea940e17
Update StorageDistributed.cpp 2020-09-03 04:39:36 +03:00
Alexey Milovidov
96038e9d54 Fix for Lazy database 2020-09-03 04:06:12 +03:00
alexey-milovidov
1c2435d4f7
Merge pull request #14233 from amosbird/apply
Introduce columns transformers.
2020-09-03 01:37:40 +03:00
alexey-milovidov
72417d2716
Merge pull request #14368 from BohuTANG/materialize_mysql_query_filter_1
change string.rfind to string starts_with and add some tests
2020-09-03 01:09:53 +03:00
alexey-milovidov
4b1b744644
Revert "Less number of threads in builder" 2020-09-03 01:00:41 +03:00
Azat Khuzhin
fffeeeba06 Force WithMergeableStateAfterAggregation via distributed_group_by_no_merge (convert to UInt64)
Possible values:
- 1 - Do not merge aggregation states from different servers for distributed query processing - in case it is for certain that there are different keys on different shards.
- 2 - same as 1 but also apply ORDER BY and LIMIT stages
2020-09-03 00:52:51 +03:00
Azat Khuzhin
10b4f3b41f Optimize queries with LIMIT/LIMIT BY/ORDER BY for distributed with GROUP BY sharding_key
Previous set of QueryProcessingStage does not allow to do this.
But after WithMergeableStateAfterAggregation had been introduced the
following queries can be optimized too under
optimize_distributed_group_by_sharding_key:
- GROUP BY sharding_key LIMIT
- GROUP BY sharding_key LIMIT BY
- GROUP BY sharding_key ORDER BY

And right now it is still not supports:
- WITH TOTALS (looks like it can be supported)
- WITH ROLLUP (looks like it can be supported)
- WITH CUBE
- SETTINGS extremes=1 (looks like it can be supported)
But will be implemented separatelly.

vX: fixes
v2: fix WITH *
v3: fix extremes
v4: fix LIMIT OFFSET (and make a little bit cleaner)
v5: fix HAVING
v6: fix ORDER BY
v7: rebase against 20.7
v8: move out WithMergeableStateAfterAggregation
v9: add optimize_distributed_group_by_sharding_key into test names
2020-09-03 00:52:51 +03:00
Azat Khuzhin
4043be3121 Add new query processing stage WithMergeableStateAfterAggregation
Process query until the stage where the aggregate functions were
calculated and finalized.

It will be used for optimize_distributed_group_by_sharding_key.

v2: fix aliases
v3: Fix protocol ABI breakage due to WithMergeableStateAfterAggregation
    Conditions >= for QueryProcessingStage::Enum has been verified, and they
    are ok (in InterpreterSelectQuery).
2020-09-03 00:51:08 +03:00
alexey-milovidov
7bd31fb3d3
Merge pull request #14313 from ClickHouse/fix-fuzz-test6
Better check for tuple size in SSD cache complex key external dictionaries
2020-09-03 00:50:24 +03:00
Matwey V. Kornilov
9b4da1e82f Add missed #include <atomic>
std::atomic<Data*> at line 199 requires including <atomic>
2020-09-02 23:40:27 +03:00
Alexander Kuzmenkov
3a7181cfcb
Merge pull request #14397 from zhang2014/fix/ISSUES-14114
ISSUES-14114 Implicitly convert primary key to not null in MaterializeMySQL
2020-09-02 23:12:33 +03:00
alesapin
dcbddbb8d0 Add recompression ttls tests and fix bugs 2020-09-02 19:15:41 +03:00
Ilya Yatsishin
a5e9449bc3
Merge branch 'master' into try-dns-fix 2020-09-02 19:01:30 +03:00
alexey-milovidov
8e2fba5be1
Merge pull request #12567 from amosbird/fmi
table function view
2020-09-02 17:07:57 +03:00
Alexey Milovidov
95493352fe Remove wrong checks 2020-09-02 17:07:25 +03:00
Nikita Mikhaylov
cdb1f30630 style + fast test 2020-09-02 16:49:47 +03:00
Nikolai Kochetov
92c937db8b Remove CreatingSetsBlockInputStream 2020-09-02 16:13:13 +03:00
Nikolai Kochetov
acfd35a908 Update QueryPipeline::addCreatingSetsTransform 2020-09-02 16:04:54 +03:00
Ilya Yatsishin
136e7aa33d
Merge pull request #14362 from ClickHouse/less-number-of-threads-in-builder
Less number of threads in builder
2020-09-02 16:01:00 +03:00
Nikita Mikhaylov
7021f6edc1 better
(cherry picked from commit 81481f26b5)
2020-09-02 15:47:23 +03:00
Nikita Mikhaylov
e9a1f4a383 update ya.make
(cherry picked from commit e62043e83b)
(cherry picked from commit a850388e62)
2020-09-02 15:47:17 +03:00
Nikita Mikhaylov
eee19dada4 fixes + test
(cherry picked from commit 5daee1cae1)
(cherry picked from commit c3dfb8e838)
2020-09-02 15:47:09 +03:00
antikvist
a695344434 rank corr
(cherry picked from commit 649e4dd913)
(cherry picked from commit ae17810201)
2020-09-02 15:46:42 +03:00
antikvist
efc59d6686 rank corr
(cherry picked from commit 11c94bee69)
(cherry picked from commit 483409f2e1)
2020-09-02 15:46:29 +03:00
antikvist
e32887d300 rank corr
(cherry picked from commit 2815397a19)
(cherry picked from commit d244797def)
2020-09-02 15:45:59 +03:00
antikvist
950094c233 rank correlation
(cherry picked from commit f9dda1e13e)
(cherry picked from commit 2a7026cb0c)
2020-09-02 15:45:51 +03:00
antikvist
098561def3 welch t-test
(cherry picked from commit 5cd118dcee)
(cherry picked from commit 8f19270f8d)
2020-09-02 15:45:37 +03:00
antikvist
df668d6297 Rank Correlation
(cherry picked from commit 3009c3885b)
(cherry picked from commit 024ff439e7)
2020-09-02 15:45:31 +03:00
alexey-milovidov
09850dbdbc
Update ASTColumnsTransformers.cpp 2020-09-02 15:39:34 +03:00
alexey-milovidov
c009ace7a2
Update StorageSystemEvents.cpp 2020-09-02 15:28:29 +03:00
alesapin
128cb7ce22 Don't select already selected parts 2020-09-02 15:16:12 +03:00
alesapin
12f76d9448
Merge pull request #14325 from azat/suppress-wget-output
Suppress superfluous wget (-nv) output
2020-09-02 14:59:28 +03:00
Dmitry
13ba8cd5a7 fixed spaces 2020-09-02 14:25:11 +03:00
alesapin
06b38a4d44 Remove cerr 2020-09-02 13:31:31 +03:00
alesapin
aac466ab1c Merge branch 'better_ttl_merges_selection' into recompression_in_background 2020-09-02 13:30:04 +03:00
Dmitry
6f18cd772c fixes 2020-09-02 13:07:23 +03:00
Dmitry
2180cdc400 system_events_show_zero_values setting added 2020-09-02 13:00:49 +03:00
Nikolai Kochetov
811e44a937
Merge pull request #14315 from azat/EXPLAIN-SIGSEGV-fix
[RFC] Fix QueryPlan lifetime (for EXPLAIN PIPELINE graph=1) for queries with nested interpreter
2020-09-02 12:46:59 +03:00
Nikolai Kochetov
13e0464138 Stop query execution if exception happened in PipelineExecutor itself. 2020-09-02 12:39:49 +03:00
alesapin
fbb37c37df Simplier interface 2020-09-02 11:28:46 +03:00
alesapin
b08056fa8c Better selection of Merges with TTL 2020-09-02 11:18:50 +03:00
Yatsishin Ilya
45e54f81c7 better resolv.conf, add DNSCacheUpdater logs 2020-09-02 11:07:46 +03:00
Amos Bird
6bd753d85d
TableFunction view. 2020-09-02 16:02:10 +08:00
Amos Bird
be925f8d9c
Introduce columns transformers. 2020-09-02 15:36:34 +08:00
zhang2014
1f908af189 ISSUES-14114 fix create parse failure when mysql nullable primary key 2020-09-02 13:05:09 +08:00
alexey-milovidov
adf50fd774
Merge pull request #13761 from zhang2014/improvement/date_time
ISSUES-4006 add precision argument for DateTime type
2020-09-02 05:12:35 +03:00
alexey-milovidov
2d85213629
Merge pull request #13792 from azat/lambda-arrayJoin-fix
[RFC] Fix arrayJoin() capturing in lambda
2020-09-02 05:10:58 +03:00
alexey-milovidov
bfa5a9ef03
Merge pull request #13987 from vitlibar/fix-grant-all-on-table
Fix GRANT ALL statement when executed on a non-global level
2020-09-02 05:06:32 +03:00
alexey-milovidov
04c88ca9e4
Update AccessFlags.h 2020-09-02 05:06:21 +03:00
alexey-milovidov
5a529f171c
Merge pull request #13988 from vitlibar/user-directories-mixed-style
Add storages from <user_directories> after ones from <users_config> and <access_control_path>.
2020-09-02 05:03:34 +03:00
alexey-milovidov
08ed74732e
Merge pull request #14320 from bharatnc/ncb/fix-alter-live-lock
fix ALTER LIVE VIEW  [REFRESH] lock issue
2020-09-02 04:52:35 +03:00
Alexey Milovidov
deb483eee5 Merge branch 'master' into fix-fuzz-test6 2020-09-02 04:40:42 +03:00
Alexey Milovidov
56bbac1569 Trigger CI 2020-09-02 04:28:52 +03:00
BohuTANG
6dfab88156 ISSUES-14235 change string.rfind to string starts_with and add some tests 2020-09-02 08:31:51 +08:00
alexey-milovidov
d58f6bd7c0
Merge pull request #14334 from ClickHouse/stop-threads-if-exception-in-pipeline-executor
Stop query execution if exception happened in PipelineExecutor itself.
2020-09-02 03:17:50 +03:00
Alexander Kuzmenkov
fa04b39d32
Revert "Change query event filter and add integration test for empty GTID transaction" 2020-09-02 02:06:53 +03:00
Anton Popov
7c3712c121
Merge pull request #13688 from it1804/master
Redis dictionary support for simple Redis requirepass authorization
2020-09-02 01:43:02 +03:00
kssenii
6682c62a90 Fixes 2020-09-01 20:07:34 +00:00
bharatnc
f0d1c6c794 Merge remote-tracking branch 'upstream/master' into ncb/fix-alter-live-lock 2020-09-01 09:06:10 -07:00
Alexander Kuzmenkov
949a41f8b5
Merge pull request #14321 from BohuTANG/materialize_mysql_query_filter
Change query event filter and add integration test for empty GTID transaction
2020-09-01 17:44:58 +03:00
Alexander Kuzmenkov
2f3bb5844a
Merge branch 'master' into suppress-wget-output 2020-09-01 16:59:04 +03:00
Nikolai Kochetov
f82b799f12 Update CreatingSetsTransform. 2020-09-01 16:53:11 +03:00
tavplubix
cb4644ea6d
Merge pull request #14326 from ClickHouse/fix_crash_alter_table_function
Throw exception on alter for storages created from table functions
2020-09-01 15:03:09 +03:00
alesapin
c37a19f7b0 Better 2020-09-01 14:23:38 +03:00
kssenii
15f735bb24 Merge branch 'master' of https://github.com/ClickHouse/ClickHouse into rabbitmq-improvements 2020-09-01 10:51:34 +00:00
alesapin
f0dc5a3085 First working test 2020-09-01 13:49:53 +03:00
Nikolai Kochetov
8fac595428 Stop query execution if exception happened in PipelineExecutor itself. 2020-09-01 13:29:10 +03:00
Artem Zuikov
d304d522cc
Refactoring: rename types to allow change bigint library (#14219) 2020-09-01 12:54:50 +03:00
BohuTANG
453fb837d8 ISSUES-14235 change string.rfind to stringstarts_with 2020-09-01 16:25:15 +08:00
kssenii
c2fb72abf8 Better mv, more comments 2020-09-01 07:58:41 +00:00
alesapin
b751319f9e Merge branch 'master' into recompression_in_background 2020-09-01 10:31:10 +03:00
alesapin
a0b4cc78d6 Throw exception on alter for storages created from table functions 2020-09-01 10:26:31 +03:00
Azat Khuzhin
2d7cb03120 Suppress superfluous wget (-nv) output
Since for dowloading some of files wget logging may take 50% of overall
log [1].

  [1]: https://clickhouse-builds.s3.yandex.net/14315/c32ff4c98cb3b83a12f945eadd180415b7a3b269/clickhouse_build_check/build_log_761119955_1598923036.txt
2020-09-01 10:25:13 +03:00
Azat Khuzhin
d04cda0367 Fix QueryPlan lifetime (for EXPLAIN PIPELINE graph=1) for queries with nested interpreter
Example of such queries are distributed queries, which creates local
InterpreterSelectQuery, which will have it's own QueryPlan but returns
Pipes that has that IQueryPlanStep attached.

After EXPLAIN PIPELINE graph=1 tries to use them, and will get SIGSEGV.

- TSAN:

<details>

```
==2782113==ERROR: AddressSanitizer: heap-use-after-free on address 0x6120000223c0 at pc 0x00002b8f3f3e bp 0x7fff18cfbff0 sp 0x7fff18cfbfe8
READ of size 8 at 0x6120000223c0 thread T22 (TCPHandler)
    #0 0x2b8f3f3d in DB::printPipelineCompact(std::__1::vector<std::__1::shared_ptr<DB::IProcessor>, std::__1::allocator<std::__1::shared_ptr<DB::IProcessor> > > const&, DB::WriteBuffer&, bool) /build/obj-x86_64-linux-gnu/../src/Processors/printPipeline.cpp:116:53
    #1 0x29ee698c in DB::InterpreterExplainQuery::executeImpl() /build/obj-x86_64-linux-gnu/../src/Interpreters/InterpreterExplainQuery.cpp:275:17
    #2 0x29ee2e40 in DB::InterpreterExplainQuery::execute() /build/obj-x86_64-linux-gnu/../src/Interpreters/InterpreterExplainQuery.cpp:73:14
    #3 0x2a7b44a2 in DB::executeQueryImpl(char const*, char const*, DB::Context&, bool, DB::QueryProcessingStage::Enum, bool, DB::ReadBuffer*) /build/obj-x86_64-linux-gnu/../src/Interpreters/executeQuery.cpp:389:28
    #4 0x2a7b1cb3 in DB::executeQuery(std::__1::basic_string<char, std::__1::char_traits<char>, std::__1::allocator<char> > const&, DB::Context&, bool, DB::QueryProcessingStage::Enum, bool) /build/obj-x86_64-linux-gnu/../src/Interpreters/executeQuery.cpp:675:30
    #5 0x2b7993b2 in DB::TCPHandler::runImpl() /build/obj-x86_64-linux-gnu/../src/Server/TCPHandler.cpp:253:24
    #6 0x2b7b649a in DB::TCPHandler::run() /build/obj-x86_64-linux-gnu/../src/Server/TCPHandler.cpp:1217:9
    #7 0x31d9c57e in Poco::Net::TCPServerConnection::start() /build/obj-x86_64-linux-gnu/../contrib/poco/Net/src/TCPServerConnection.cpp:43:3
    #8 0x31d9d281 in Poco::Net::TCPServerDispatcher::run() /build/obj-x86_64-linux-gnu/../contrib/poco/Net/src/TCPServerDispatcher.cpp:114:20
    #9 0x3206b5d5 in Poco::PooledThread::run() /build/obj-x86_64-linux-gnu/../contrib/poco/Foundation/src/ThreadPool.cpp:199:14
    #10 0x320657ad in Poco::ThreadImpl::runnableEntry(void*) /build/obj-x86_64-linux-gnu/../contrib/poco/Foundation/src/Thread_POSIX.cpp:345:27
    #11 0x7ffff7f853e8 in start_thread (/usr/lib/libpthread.so.0+0x93e8)
    #12 0x7ffff7ea2292 in clone (/usr/lib/libc.so.6+0x100292)

0x6120000223c0 is located 0 bytes inside of 272-byte region [0x6120000223c0,0x6120000224d0)
freed by thread T22 (TCPHandler) here:
    #0 0x122f3b62 in operator delete(void*, unsigned long) (/src/ch/tmp/master-20200831/clickhouse+0x122f3b62)
    #1 0x2bd9e9fa in std::__1::default_delete<DB::IQueryPlanStep>::operator()(DB::IQueryPlanStep*) const /build/obj-x86_64-linux-gnu/../contrib/libcxx/include/memory:2363:5
    #2 0x2bd9e9fa in std::__1::unique_ptr<DB::IQueryPlanStep, std::__1::default_delete<DB::IQueryPlanStep> >::reset(DB::IQueryPlanStep*) /build/obj-x86_64-linux-gnu/../contrib/libcxx/include/memory:2618:7
    #3 0x2bd9e9fa in std::__1::unique_ptr<DB::IQueryPlanStep, std::__1::default_delete<DB::IQueryPlanStep> >::~unique_ptr() /build/obj-x86_64-linux-gnu/../contrib/libcxx/include/memory:2572:19
    #4 0x2bd9e9fa in DB::QueryPlan::Node::~Node() /build/obj-x86_64-linux-gnu/../src/Processors/QueryPlan/QueryPlan.h:66:12
    #5 0x2bd9e9fa in void std::__1::allocator_traits<std::__1::allocator<std::__1::__list_node<DB::QueryPlan::Node, void*> > >::__destroy<DB::QueryPlan::Node>(std::__1::integral_constant<bool, false>, std::__1::allocator<std::__1::__list_node<DB::QueryPlan::Node, void*> >&,
 DB::QueryPlan::Node*) /build/obj-x86_64-linux-gnu/../contrib/libcxx/include/memory:1798:23
    #6 0x2bd9e9fa in void std::__1::allocator_traits<std::__1::allocator<std::__1::__list_node<DB::QueryPlan::Node, void*> > >::destroy<DB::QueryPlan::Node>(std::__1::allocator<std::__1::__list_node<DB::QueryPlan::Node, void*> >&, DB::QueryPlan::Node*) /build/obj-x86_64-lin
ux-gnu/../contrib/libcxx/include/memory:1630:14
    #7 0x2bd9e9fa in std::__1::__list_imp<DB::QueryPlan::Node, std::__1::allocator<DB::QueryPlan::Node> >::clear() /build/obj-x86_64-linux-gnu/../contrib/libcxx/include/list:762:13
    #8 0x29fece08 in DB::InterpreterSelectQuery::execute() /build/obj-x86_64-linux-gnu/../src/Interpreters/InterpreterSelectQuery.cpp:492:1
    #9 0x2abf7484 in DB::ClusterProxy::(anonymous namespace)::createLocalStream(std::__1::shared_ptr<DB::IAST> const&, DB::Block const&, DB::Context const&, DB::QueryProcessingStage::Enum) /build/obj-x86_64-linux-gnu/../src/Interpreters/ClusterProxy/SelectStreamFactory.cpp:
78:33
    #10 0x2abea85d in DB::ClusterProxy::SelectStreamFactory::createForShard(DB::Cluster::ShardInfo const&, std::__1::basic_string<char, std::__1::char_traits<char>, std::__1::allocator<char> > const&, std::__1::shared_ptr<DB::IAST> const&, DB::Context const&, std::__1::shar
ed_ptr<DB::Throttler> const&, DB::SelectQueryInfo const&, std::__1::vector<DB::Pipe, std::__1::allocator<DB::Pipe> >&)::$_0::operator()() const /build/obj-x86_64-linux-gnu/../src/Interpreters/ClusterProxy/SelectStreamFactory.cpp:133:51
    #11 0x2abea85d in DB::ClusterProxy::SelectStreamFactory::createForShard(DB::Cluster::ShardInfo const&, std::__1::basic_string<char, std::__1::char_traits<char>, std::__1::allocator<char> > const&, std::__1::shared_ptr<DB::IAST> const&, DB::Context const&, std::__1::shar
ed_ptr<DB::Throttler> const&, DB::SelectQueryInfo const&, std::__1::vector<DB::Pipe, std::__1::allocator<DB::Pipe> >&) /build/obj-x86_64-linux-gnu/../src/Interpreters/ClusterProxy/SelectStreamFactory.cpp:189:13
    #12 0x2abe6d99 in DB::ClusterProxy::executeQuery(DB::ClusterProxy::IStreamFactory&, std::__1::shared_ptr<DB::Cluster> const&, Poco::Logger*, std::__1::shared_ptr<DB::IAST> const&, DB::Context const&, DB::Settings const&, DB::SelectQueryInfo const&) /build/obj-x86_64-lin
ux-gnu/../src/Interpreters/ClusterProxy/executeQuery.cpp:107:24
    #13 0x2abc4b74 in DB::StorageDistributed::read(std::__1::vector<std::__1::basic_string<char, std::__1::char_traits<char>, std::__1::allocator<char> >, std::__1::allocator<std::__1::basic_string<char, std::__1::char_traits<char>, std::__1::allocator<char> > > > const&, s
td::__1::shared_ptr<DB::StorageInMemoryMetadata const> const&, DB::SelectQueryInfo const&, DB::Context const&, DB::QueryProcessingStage::Enum, unsigned long, unsigned int) /build/obj-x86_64-linux-gnu/../src/Storages/StorageDistributed.cpp:514:12
    #14 0x2bda1c5a in DB::ReadFromStorageStep::ReadFromStorageStep(std::__1::shared_ptr<DB::RWLockImpl::LockHolderImpl>, std::__1::shared_ptr<DB::StorageInMemoryMetadata const>&, DB::SelectQueryOptions, std::__1::shared_ptr<DB::IStorage>, std::__1::vector<std::__1::basic_st
ring<char, std::__1::char_traits<char>, std::__1::allocator<char> >, std::__1::allocator<std::__1::basic_string<char, std::__1::char_traits<char>, std::__1::allocator<char> > > > const&, DB::SelectQueryInfo const&, std::__1::shared_ptr<DB::Context>, DB::QueryProcessingStage
::Enum, unsigned long, unsigned long) /build/obj-x86_64-linux-gnu/../src/Processors/QueryPlan/ReadFromStorageStep.cpp:39:26
    #15 0x2a01ca70 in std::__1::__unique_if<DB::ReadFromStorageStep>::__unique_single std::__1::make_unique<DB::ReadFromStorageStep, std::__1::shared_ptr<DB::RWLockImpl::LockHolderImpl>&, std::__1::shared_ptr<DB::StorageInMemoryMetadata const>&, DB::SelectQueryOptions&, std
::__1::shared_ptr<DB::IStorage>&, std::__1::vector<std::__1::basic_string<char, std::__1::char_traits<char>, std::__1::allocator<char> >, std::__1::allocator<std::__1::basic_string<char, std::__1::char_traits<char>, std::__1::allocator<char> > > >&, DB::SelectQueryInfo&, st
d::__1::shared_ptr<DB::Context>&, DB::QueryProcessingStage::Enum&, unsigned long&, unsigned long&>(std::__1::shared_ptr<DB::RWLockImpl::LockHolderImpl>&, std::__1::shared_ptr<DB::StorageInMemoryMetadata const>&, DB::SelectQueryOptions&, std::__1::shared_ptr<DB::IStorage>&,
std::__1::vector<std::__1::basic_string<char, std::__1::char_traits<char>, std::__1::allocator<char> >, std::__1::allocator<std::__1::basic_string<char, std::__1::char_traits<char>, std::__1::allocator<char> > > >&, DB::SelectQueryInfo&, std::__1::shared_ptr<DB::Context>&,
DB::QueryProcessingStage::Enum&, unsigned long&, unsigned long&) /build/obj-x86_64-linux-gnu/../contrib/libcxx/include/memory:3028:32
    #16 0x29ff556a in DB::InterpreterSelectQuery::executeFetchColumns(DB::QueryProcessingStage::Enum, DB::QueryPlan&, std::__1::shared_ptr<DB::PrewhereInfo> const&, std::__1::vector<std::__1::basic_string<char, std::__1::char_traits<char>, std::__1::allocator<char> >, std::
__1::allocator<std::__1::basic_string<char, std::__1::char_traits<char>, std::__1::allocator<char> > > > const&) /build/obj-x86_64-linux-gnu/../src/Interpreters/InterpreterSelectQuery.cpp:1383:26
    #17 0x29fe6b83 in DB::InterpreterSelectQuery::executeImpl(DB::QueryPlan&, std::__1::shared_ptr<DB::IBlockInputStream> const&, std::__1::optional<DB::Pipe>) /build/obj-x86_64-linux-gnu/../src/Interpreters/InterpreterSelectQuery.cpp:795:9
    #18 0x29fe5771 in DB::InterpreterSelectQuery::buildQueryPlan(DB::QueryPlan&) /build/obj-x86_64-linux-gnu/../src/Interpreters/InterpreterSelectQuery.cpp:473:5
    #19 0x2a47d370 in DB::InterpreterSelectWithUnionQuery::buildQueryPlan(DB::QueryPlan&) /build/obj-x86_64-linux-gnu/../src/Interpreters/InterpreterSelectWithUnionQuery.cpp:182:38
    #20 0x29ee5bff in DB::InterpreterExplainQuery::executeImpl() /build/obj-x86_64-linux-gnu/../src/Interpreters/InterpreterExplainQuery.cpp:265:21
    #21 0x29ee2e40 in DB::InterpreterExplainQuery::execute() /build/obj-x86_64-linux-gnu/../src/Interpreters/InterpreterExplainQuery.cpp:73:14
    #22 0x2a7b44a2 in DB::executeQueryImpl(char const*, char const*, DB::Context&, bool, DB::QueryProcessingStage::Enum, bool, DB::ReadBuffer*) /build/obj-x86_64-linux-gnu/../src/Interpreters/executeQuery.cpp:389:28
    #23 0x2a7b1cb3 in DB::executeQuery(std::__1::basic_string<char, std::__1::char_traits<char>, std::__1::allocator<char> > const&, DB::Context&, bool, DB::QueryProcessingStage::Enum, bool) /build/obj-x86_64-linux-gnu/../src/Interpreters/executeQuery.cpp:675:30
    #24 0x2b7993b2 in DB::TCPHandler::runImpl() /build/obj-x86_64-linux-gnu/../src/Server/TCPHandler.cpp:253:24
    #25 0x2b7b649a in DB::TCPHandler::run() /build/obj-x86_64-linux-gnu/../src/Server/TCPHandler.cpp:1217:9
    #26 0x31d9c57e in Poco::Net::TCPServerConnection::start() /build/obj-x86_64-linux-gnu/../contrib/poco/Net/src/TCPServerConnection.cpp:43:3
    #27 0x31d9d281 in Poco::Net::TCPServerDispatcher::run() /build/obj-x86_64-linux-gnu/../contrib/poco/Net/src/TCPServerDispatcher.cpp:114:20
    #28 0x3206b5d5 in Poco::PooledThread::run() /build/obj-x86_64-linux-gnu/../contrib/poco/Foundation/src/ThreadPool.cpp:199:14
    #29 0x320657ad in Poco::ThreadImpl::runnableEntry(void*) /build/obj-x86_64-linux-gnu/../contrib/poco/Foundation/src/Thread_POSIX.cpp:345:27
    #30 0x7ffff7f853e8 in start_thread (/usr/lib/libpthread.so.0+0x93e8)
```

</details>
2020-09-01 10:04:08 +03:00
alesapin
05b10048a6
Merge pull request #14116 from ClickHouse/parts_default_compression
Save parts default compression
2020-09-01 09:43:42 +03:00
alesapin
e28b477f79
Merge pull request #14263 from bharatnc/ncb/disallow-codec-for-alias
Disallow codec for ALIAS columns types
2020-09-01 09:42:53 +03:00
alesapin
4d96510a29
Merge pull request #14274 from ClickHouse/pipes-for-mutations
Use QueryPipeline in MutationsInterpreter.
2020-09-01 09:40:11 +03:00
bharatnc
c3dd968931 fix ALTER LIVE VIEW lock issue
This PR fixes a lock issue that happens while executing
`ALTER LIVE VIEW` query with the `REFRESH` command that
results in a exception. The problem is that lock is currently
being acquired in `InterpreterALterQuery.cpp`
in the `InterpreterAlterQuery::execute()` method and lock
is again being reacquired in `StorageLiveView.cpp` in the
` StorageLiveView::refresh` method. This removes that extra
lock.

Before fix:

```sql
--create table

CREATE TABLE test0 (
    c0 UInt64
) ENGINE = MergeTree() PARTITION BY c0 ORDER BY c0;

-- enable experimental_live_view

:) SET allow_experimental_live_view=1

-- create live view;

:) CREATE LIVE VIEW live1 AS SELECT * FROM table0;

-- alter live view results in exception

:) ALTER LIVE VIEW live1 REFRESH;

...
...

Received exception from server (version 20.8.1):
Code: 49. DB::Exception: Received from localhost:9000. DB::Exception: RWLockImpl::getLock(): RWLock is already locked in exclusive mode.

```

After fix:

```sql
:)  ALTER LIVE VIEW live1 REFRESH;

ALTER LIVE VIEW live1
    REFRESH

Ok.

0 rows in set. Elapsed: 0.016 sec.
```
2020-08-31 22:17:58 -07:00
Alexey Milovidov
142a5bcede Added validation of key types to SSD Cache dictionary 2020-09-01 02:10:04 +03:00
Alexey Milovidov
8fa61f785f Better check for tuple size in complex key external dictionaries 2020-09-01 01:55:52 +03:00
robot-clickhouse
e2fa0eae2f Auto version update to [20.9.1.1] [54439] 2020-08-31 23:07:41 +03:00
alesapin
46f833b7df Some changes 2020-08-31 22:50:42 +03:00
bharatnc
c377c228ef fix tests 2020-08-31 10:22:53 -07:00
alexey-milovidov
75ca3d217f
Merge pull request #14232 from zhang2014/fix/ISSUES-14231
ISSUES-14231 fix wrong lexer in MaterializeMySQL database engine dump stage
2020-08-31 19:03:04 +03:00
bharatnc
c4e235b000 Merge remote-tracking branch 'upstream/master' into ncb/disallow-codec-for-alias 2020-08-31 09:01:07 -07:00
bharatnc
caed8cd474 change error code to BAD_ARGUMENTS (36) 2020-08-31 09:00:32 -07:00
Alexander Kuzmenkov
bc8765d5ad
Merge pull request #14095 from azat/DistributedFilesToInsert-fix
Fix DistributedFilesToInsert metric (zeroed when it should not)
2020-08-31 18:58:30 +03:00
alexey-milovidov
f5a38fa78d
Merge pull request #14203 from donge/master
fix issue #14202
2020-08-31 17:48:39 +03:00
Alexander Kuzmenkov
134aae89f3
Merge pull request #14110 from 4ertus2/decimal
Fix Decimal to Float conversion and toDecimal256() function
2020-08-31 17:08:49 +03:00
alesapin
b20a0bc254 Add recompression flag in ReplicatedEntry 2020-08-31 16:42:42 +03:00
alesapin
067eb4599d Fix empty columns case 2020-08-31 16:39:27 +03:00
alesapin
adc18f4d3f Write with recompression TTL 2020-08-31 16:29:31 +03:00
Nikolai Kochetov
4ceb12b1de Use QueryPipeline in MutationsInterpreter. 2020-08-31 15:45:20 +03:00
alesapin
42c210fcba Recompress TTLs in memory metadata 2020-08-31 15:12:51 +03:00
alexey-milovidov
0586f0d555
Merge pull request #14253 from BohuTANG/mysql_replication_empty_transaction_issue14235
Fix MaterializeMySQL empty GTID transaction issue #14235
2020-08-31 15:08:34 +03:00
alesapin
4834bed35b Add recompression TTL parser 2020-08-31 14:35:53 +03:00
alexey-milovidov
bd04658fc0
Merge pull request #14218 from markpapadakis/patch-4
Update AggregatingTransform.cpp
2020-08-31 14:30:26 +03:00
kssenii
e57d1c827f Better shutdown 2020-08-31 10:00:28 +00:00
kssenii
647cf5718e Better settings 2020-08-31 09:27:42 +00:00
alesapin
034f1a895d Merge branch 'master' into recompression_in_background 2020-08-31 11:10:14 +03:00
bharatnc
6bb575fae9 fix style check 2020-08-31 00:39:58 -07:00
alesapin
5b0822902b
Merge pull request #14155 from amosbird/fzk
Allow FETCH PARTITION from other zookeepers
2020-08-31 09:54:51 +03:00
bharatnc
5c83b09a2f disallow CODEC setting for column type ALIAS
This commit adds checks in place during table creation
and updates to ensure that we don't allow `CODEC` for
ALIAS (`default_type` column) like:

```sql
CREATE TABLE compression_codec_on_alias
(
    `c0` ALIAS c1 CODEC(ZSTD),
    `c1` UInt64
)
ENGINE = MergeTree()
PARTITION BY c0
ORDER BY c1;
```

After these safeguards in place, when trying to create/update column
codec, we will get excaptions like this:

```sql

-- create

CREATE TABLE compression_codec_on_alias
(
    `c0` ALIAS c1 CODEC(ZSTD),
    `c1` UInt64
)
ENGINE = MergeTree()
PARTITION BY c0
ORDER BY c1

Received exception from server (version 20.8.1):
Code: 377. DB::Exception: Received from localhost:9000. DB::Exception: Cannot specify codec for column type ALIAS.

0 rows in set. Elapsed: 0.006 sec.

-- modify

ALTER TABLE compression_codec_on_alias
    ADD COLUMN `c3` ALIAS c2 CODEC(ZSTD) AFTER c2

Received exception from server (version 20.8.1):
Code: 377. DB::Exception: Received from localhost:9000. DB::Exception: Cannot specify codec for column type ALIAS.

0 rows in set. Elapsed: 0.005 sec.

```
2020-08-30 23:45:53 -07:00
zhang2014
b38c5a844c ISSUES-14231 better comment 2020-08-31 14:16:19 +08:00
zhang2014
761512413e ISSUES-14231 allow dollar and numver in identifier 2020-08-31 14:14:02 +08:00
zhang2014
592b6dcdce Revert "ISSUES-14231 add mysql identifier parser"
This reverts commit ab1d665006.
2020-08-31 13:48:20 +08:00
zhang2014
d24bf8de51 ISSUES-14231 allow dollar sign in identifier 2020-08-31 12:46:41 +08:00
zhang2014
ab1d665006 ISSUES-14231 add mysql identifier parser 2020-08-31 12:33:33 +08:00
BohuTANG
4d4b4b9532 Fix MaterializeMySQL empty GTID transaction issue #14235 2020-08-30 15:55:34 +08:00
alexey-milovidov
b1efc5df01
Merge pull request #14225 from amosbird/bf1
Fix bug in mark inclusion search.
2020-08-30 02:58:22 +03:00
alexey-milovidov
2a514eae21
Merge pull request #14223 from nikitamikhaylov/update-permutaiton-bug-fix
Fixed incorrect sorting order if LowCardinality column.
2020-08-29 18:25:26 +03:00
alesapin
2d33a4029b
Merge pull request #14220 from ClickHouse/remove_redundant_flag
Disable force TTL on optimize final
2020-08-29 10:40:36 +03:00
zhang2014
4182596961 ISSUES-14231 try fix wrong lexer 2020-08-29 12:28:04 +08:00
Amos Bird
591a4d60d4
Fix bug in mark inclusion search. 2020-08-29 09:46:46 +08:00
alesapin
ebc163c924 Merge branch 'master' into parts_default_compression 2020-08-28 23:11:42 +03:00
alexey-milovidov
c6f55bbe6a
Merge pull request #14151 from 4ertus2/some
Add functions: isDecimalOverflow(), countDigits()
2020-08-28 22:01:54 +03:00
alesapin
10c7a6c45e
Add ability to specify Default codec for columns (#14049)
* Add ability to specify DefaultCompression codec which correspond to settings specified in config.xml

* Fix style

* Rename DefaultCompression to simple Default

* Fix compression codec

* Better codec description representation

* Less strange code and one method

* Fix delta
2020-08-28 20:40:45 +03:00
alesapin
65c33f0802
Merge pull request #13280 from amosbird/as
ALTER MODIFY SAMPLE BY
2020-08-28 19:32:09 +03:00
Nikita Mikhaylov
fc84d12542 better 2020-08-28 18:28:46 +03:00
Nikita Mikhaylov
9d1cb7e22e done 2020-08-28 18:15:15 +03:00
alesapin
232c264d7d Disable force TTL on optimise 2020-08-28 16:45:42 +03:00
Mark Papadakis
ff76790a59
Update AggregatingTransform.cpp
Replaced redundant call to chunk.getNumRows() with local var.
2020-08-28 16:08:06 +03:00
alesapin
c1ca09653e Update custom parts of storage AST only if it has extended definition 2020-08-28 14:30:53 +03:00
alesapin
1ea00d5e7a Fix test and better messages 2020-08-28 14:12:51 +03:00
alesapin
b599d0a1ff Simplify function 2020-08-28 13:47:29 +03:00
alesapin
0896b49533 Small fixes 2020-08-28 13:18:56 +03:00
Artem Zuikov
881cd3331a gix comment and useDefault*(), add tests for nullables 2020-08-28 13:16:42 +03:00
kssenii
4e0c619721 Global refactoring 2020-08-28 10:03:54 +00:00
alesapin
6f16c08191 Fix ya.make 2020-08-28 12:29:07 +03:00
alesapin
d8d7c46711 Remove ya.make update 2020-08-28 12:27:59 +03:00
alesapin
77faf9587f Better interface 2020-08-28 12:07:20 +03:00
Dongdong Yang
7e48edf42c fix issue #14202 2020-08-28 13:29:15 +08:00
Alexey Milovidov
01567d62a4 Fix nullptr dereference in defaultValueOfTypeName 2020-08-27 21:36:18 +03:00
Amos Bird
078b14610d
ALTER MODIFY SAMPLE BY 2020-08-27 22:31:30 +08:00
Amos Bird
0c1cf22c00
Allow FETCH PARTITION from other zookeepers 2020-08-27 22:19:18 +08:00
alesapin
32db38b4d2 Fix compression codec in WAL 2020-08-27 17:06:14 +03:00
Artem Zuikov
4c49539ad7
Revert division 2020-08-27 16:56:22 +03:00
Artem Zuikov
a521451af8
Update src/Core/DecimalFunctions.h
Co-authored-by: Alexander Kuzmenkov <36882414+akuzm@users.noreply.github.com>
2020-08-27 16:51:48 +03:00
alesapin
d426751e26 Default codec if part is not stored on disk 2020-08-27 16:32:23 +03:00
Artem Zuikov
2a0b98b19c add countDigits() function 2020-08-27 16:17:13 +03:00
alesapin
0ff5e5412e Merge branch 'master' into parts_default_compression 2020-08-27 16:01:37 +03:00
alexey-milovidov
ea0122de7e
Merge pull request #14120 from ClickHouse/parallel-insert-more-storages
Support parallel INSERT for more table engines
2020-08-27 15:08:56 +03:00
alexey-milovidov
9baa0fbf81
Merge pull request #14129 from CurtizJ/fix-performance
Slightly optimize very short queries with LowCardinality
2020-08-27 15:07:19 +03:00
Alexander Tokmakov
7943c5c73c remove "UUID" word for tables from logs 2020-08-27 14:46:19 +03:00
Nikita Mikhaylov
badd5a00c5
Merge pull request #14105 from nikitamikhaylov/nm-better-update-timeout
Fix hardcoded timeout
2020-08-27 15:16:47 +04:00
alesapin
afe4702c2c
Merge pull request #14139 from bharatnc/ncb/min_index_granularity_bytes
add setting min_index_granularity_bytes
2020-08-27 12:08:07 +03:00
tavplubix
478adb75ef
Merge pull request #14143 from ClickHouse/fix-named-tuple
Fix creation of tables with named tuples #13027
2020-08-27 11:56:59 +03:00
alesapin
1225c09a02 Fix default codec for in-memory parts 2020-08-27 11:35:55 +03:00
alesapin
886a7b485e Fixed codec in clone part 2020-08-27 09:49:41 +03:00
Artem Zuikov
724b38adc9 isDecimalOverflow() function 2020-08-27 04:14:10 +03:00
alexey-milovidov
67f16d5ae8
Merge pull request #14122 from ClickHouse/fix-fuzz-test-compile-expressions
More range checks when compile_expressions = 1
2020-08-27 02:15:40 +03:00
alexey-milovidov
0f706c01ca
Merge pull request #13888 from vladimir-golovchenko/add-date-trunc-function
Added date_trunc function
2020-08-27 02:12:27 +03:00
bharatnc
ffb73adb11 fix style check 2020-08-26 15:31:48 -07:00
bharatnc
593f054b10 minor fix exception message 2020-08-26 15:31:48 -07:00
bharatnc
3a35aedb56 add comments explaining index_granularity_bytes safe guard 2020-08-26 15:31:48 -07:00
bharatnc
4ac9b59cec format file 2020-08-26 15:31:48 -07:00
bharatnc
37416045ba setting min_index_granularity_bytes
This PR adds a new setting called `min_index_granularity_bytes`.

If the `index_granularity_bytes` is > 0 and is lesser than the
`min_index_granularity_bytes`, throw an exception inside the
`registerStorageMergeTree.cpp` file.
2020-08-26 15:31:48 -07:00
alexey-milovidov
330997dd0a
Merge pull request #14119 from ClickHouse/aku/min-decimal
Fix formatting of minimal negative decimal
2020-08-27 01:16:37 +03:00
Alexey Milovidov
651fb3539c Fix creation of tables with named tuples #13027 2020-08-27 00:57:42 +03:00
Azat Khuzhin
a588947fe2 Fix DistributedFilesToInsert metric (zeroed when it should not)
CurrentMetrics::Increment add amount for specified metric only for the
lifetime of the object, but this is not the intention, since
DistributedFilesToInsert is a gauge and after #10263 it can exit from
the callback (and enter again later, for example after SYSTEM STOP
DISTRIBUTED SEND it will always exit from it, until SYSTEM START
DISTRIBUTED SEND).

So make Increment member of a class (this will also fix possible issues
with substructing value on DROP TABLE).
2020-08-27 00:43:00 +03:00
Azat Khuzhin
d04d652ad4 Use CurrentMetrics::Metric over ProfileEvents::Event (cosmetic, both are size_t) 2020-08-27 00:43:00 +03:00
alexey-milovidov
f6f8dc9b8a
Merge pull request #13964 from zhang2014/fix/agg_combinator
Try fix IfAggCombinator with NullAggCombinator
2020-08-26 23:47:29 +03:00
alesapin
44eb702fbe Remove redundant code 2020-08-26 22:41:57 +03:00
alesapin
3a680dc8fb Fix removal bug 2020-08-26 22:40:04 +03:00
kssenii
4fecfdbe2f Better & cleaner 2020-08-26 18:52:45 +00:00
Anton Popov
eeb78bf291 slightly optimize very short queries with LowCardinality 2020-08-26 21:46:18 +03:00
alexey-milovidov
c53854df19
Merge pull request #14079 from livace/fix_2d_pip
Fix pointInPolygon with const 2d array
2020-08-26 21:02:58 +03:00
Alexander Kuzmenkov
c4fc434a13
Merge pull request #14060 from azat/parallel_distributed_insert_select-2
Extend parallel_distributed_insert_select to run INSERT into local table
2020-08-26 20:37:36 +03:00
Alexey Milovidov
5dbdd8ea3d More range checks when compile_expressions = 1 2020-08-26 19:49:19 +03:00
Alexey Milovidov
2a09aa53cc Support parallel INSERT for more table engines 2020-08-26 19:41:30 +03:00
alexey-milovidov
65ee7dcb18
Merge pull request #13941 from gervarela/avro_confluent_skip_missing_magic_or_schema_id
Skip abnormaly small messages in AvroConfluent format
2020-08-26 19:34:42 +03:00
Alexander Kuzmenkov
1a4fcf6650 Fix formatting of minimal negative decimal 2020-08-26 19:34:00 +03:00
alesapin
1fb93a8bf2 Remove read helpers 2020-08-26 18:57:06 +03:00
alesapin
18eb0dbcaa Better remove 2020-08-26 18:39:11 +03:00
alesapin
2fc80189af Add default compression codec to merge tree data part 2020-08-26 18:29:46 +03:00
alexey-milovidov
7ea28d976a
Update date_trunc.cpp 2020-08-26 17:28:54 +03:00
Nikita Mikhaylov
d05230c55a
Update CacheDictionary.cpp 2020-08-26 17:04:05 +03:00
Artem Zuikov
fe5db661ce fix decimal to float conversion and toDecimal256() 2020-08-26 15:26:12 +03:00
tavplubix
cff92c8ad3
Merge pull request #13820 from BohuTANG/mysql_replica_gtid_issue_4006
ISSUES-4006 support MySQL GTID based replication #4006
2020-08-26 15:02:53 +03:00
Nikita Mikhaylov
da16f234cc
Update CacheDictionary.cpp 2020-08-26 14:06:32 +03:00
Vitaly Baranov
7ac4bd7d1e Add storages from <user_directories> after ones from <users_config> and <access_control_path>. 2020-08-26 13:45:35 +03:00
alexey-milovidov
c157b7a685
Merge pull request #14056 from ClickHouse/alternative-14043
Alternative implementation of #14043
2020-08-26 13:15:30 +03:00
alesapin
4326c9c971 Fix delta 2020-08-26 12:16:32 +03:00
alesapin
249c4b4a94 Less strange code and one method 2020-08-26 11:59:02 +03:00
alesapin
21d78f8513 Better codec description representation 2020-08-26 11:45:13 +03:00
alesapin
7428c46737 Merge branch 'master' into recompressing_in_background 2020-08-26 10:28:03 +03:00
BohuTANG
e3bfd1a5b8 ISSUES-4006 fix clang-tidy error on boost::is_any_of 2020-08-26 14:33:05 +08:00