Commit Graph

87797 Commits

Author SHA1 Message Date
Robert Schulze
777b5bc15b
Don't let storages inherit from boost::noncopyable
... IStorage has deleted copy ctor / assignment already
2022-05-03 09:07:08 +02:00
Robert Schulze
330212e0f4
Remove inherited create() method + disallow copying
The original motivation for this commit was that shared_ptr_helper used
std::shared_ptr<>() which does two heap allocations instead of
make_shared<>() which does a single allocation. Turned out that
1. the affected code (--> Storages/) is not on a hot path (rendering the
performance argument moot ...)
2. yet copying Storage objects is potentially dangerous and was
   previously allowed.

Hence, this change

- removes shared_ptr_helper and as a result all inherited create() methods,

- instead, Storage objects are now created using make_shared<>() by the
  caller (for that to work, many constructors had to be made public), and

- all Storage classes were marked as noncopyable using boost::noncopyable.

In sum, we are (likely) not making things faster but the code becomes
cleaner and harder to misuse.
2022-05-02 08:46:52 +02:00
Alexey Milovidov
9621d44345
Merge pull request #36834 from azat/client-complete-func
Add functions from CREATE FUNCTION to completion
2022-05-02 02:46:37 +03:00
Kseniia Sumarokova
e3d2d72b39
Merge pull request #36802 from KinderRiven/local_cache_trace
system table used for statistical query of remote file access
2022-05-02 00:16:04 +02:00
Maksim Kita
6aea9d0177
Merge pull request #36835 from azat/create-func-fix
Validate that function had been passed in CREATE FUNCTION
2022-05-01 21:16:42 +02:00
Azat Khuzhin
3982638e9a Validate that function had been passed in CREATE FUNCTION
Otherwise right now it leads to LOGICAL_ERROR, due to bad cast.
2022-05-01 19:01:03 +03:00
Azat Khuzhin
3b69e635dc Add functions from CREATE FUNCTION to completion 2022-05-01 18:35:22 +03:00
Nikita Mikhaylov
93a65463d0
Added SYSTEM SYNC DATABASE query (#35944) 2022-05-01 15:40:18 +02:00
KinderRiven
1db2bcf4dc rebase master 2022-05-01 19:46:55 +08:00
KinderRiven
9c44ef1188 fix 2022-05-01 19:45:16 +08:00
KinderRiven
9413aa423b fix 2022-05-01 19:45:16 +08:00
KinderRiven
e0fc7870a8 fix style 2022-05-01 19:45:16 +08:00
KinderRiven
30b16ea47e fix config 2022-05-01 19:45:16 +08:00
KinderRiven
b68bccae51 fix config 2022-05-01 19:45:16 +08:00
KinderRiven
7d0789472c fix 2022-05-01 19:45:16 +08:00
KinderRiven
7db67160fe fix 2022-05-01 19:45:16 +08:00
KinderRiven
c01f28b47a fix and add test for system.filesystem_cache_log 2022-05-01 19:45:16 +08:00
KinderRiven
1145570c08 fix and add test for system.filesystem_cache_log 2022-05-01 19:45:16 +08:00
KinderRiven
e1acacf831 fix 2022-05-01 19:45:16 +08:00
KinderRiven
01210c8d38 fix header 2022-05-01 19:45:16 +08:00
KinderRiven
d80aa0fd17 impl system.filesystem_cache_log 2022-05-01 19:45:16 +08:00
KinderRiven
d595df1604 fix 2022-05-01 19:45:16 +08:00
KinderRiven
6a2e4559c8 impl system.cache_log 2022-05-01 19:45:16 +08:00
KinderRiven
ce9a6965d0 impl system.log_table 2022-05-01 19:45:16 +08:00
KinderRiven
a4b8f9e9cf impl system.cache_log 2022-05-01 19:45:16 +08:00
KinderRiven
9c9870f021 build cache_log table 2022-05-01 19:45:16 +08:00
KinderRiven
463b42b4c3 remove unused var 2022-05-01 19:45:16 +08:00
KinderRiven
5a361a0db5 impl cache_log in filecache 2022-05-01 19:45:16 +08:00
KinderRiven
4db54ff6bc add log record 2022-05-01 19:45:16 +08:00
KinderRiven
29f0471caf add cache log 2022-05-01 19:45:16 +08:00
KinderRiven
0059a660c7 impl create cache_log table 2022-05-01 19:45:16 +08:00
KinderRiven
02080aad1c impl create cache_log table 2022-05-01 19:45:16 +08:00
KinderRiven
44c9996a1e impl create cache_log table 2022-05-01 19:45:16 +08:00
KinderRiven
5b7b2d26ea fix add miss header 2022-05-01 19:45:16 +08:00
KinderRiven
df81496ba1 fix bug for cache log table 2022-05-01 19:45:16 +08:00
KinderRiven
d5f287369e add include 2022-05-01 19:45:16 +08:00
KinderRiven
ee6ef29538 add include 2022-05-01 19:45:16 +08:00
KinderRiven
ef863a7942 add include 2022-05-01 19:45:16 +08:00
KinderRiven
021a3a788b add cache log table in system database 2022-05-01 19:45:16 +08:00
KinderRiven
6f930be28b impl cache trace 2022-05-01 19:45:16 +08:00
KinderRiven
de7e89661d resubmit 2022-05-01 19:45:16 +08:00
Alexey Milovidov
b034146ba4
Merge pull request #36799 from azat/cleanup
Tiny cleanup
2022-05-01 14:23:13 +03:00
Alexey Milovidov
321514a7f3
Merge pull request #36816 from azat/is_all_data_sent-on-exception
Set is_all_data_sent on exceptions too
2022-05-01 14:22:06 +03:00
Alexey Milovidov
69ae22070f
Merge pull request #36824 from ClickHouse/log-test-sanity-check
Add sanity check for log level. Fix style.
2022-05-01 14:03:22 +03:00
Nikita Taranov
92f8244932
Fix certs (finishing pr #36457) (#36747) 2022-05-01 12:59:19 +02:00
Nikita Taranov
0fd9740c72
Log hash table's cache messages with TRACE level (#36830) 2022-05-01 12:54:54 +02:00
Alexey Milovidov
ff4e562997
Merge pull request #36641 from ClickHouse/release-prefetch
Simplify check_branch, prefetch target branches
2022-05-01 13:53:35 +03:00
Alexey Milovidov
b79c6cef84
Merge pull request #36756 from CurtizJ/type-json-bool
Deduce `UInt8` type for bools from json instead of `UInt64`
2022-05-01 13:51:28 +03:00
Alexey Milovidov
189938e935
Merge pull request #36431 from rschu1ze/bugprone-branch-clone
Fixed warnings of clang-tidy check "bugprone-branch-clone"
2022-05-01 13:49:37 +03:00
Alexey Milovidov
a31e425872
Merge pull request #36798 from ClickHouse/poco-update-58
pull poco #58
2022-05-01 13:48:29 +03:00