Commit Graph

1040 Commits

Author SHA1 Message Date
alesapin
1fc7633289 Heartbeats working 2020-10-30 22:57:30 +03:00
Azat Khuzhin
5bab7a5bc7 Add current_database into query_thread_log 2020-10-30 21:16:10 +03:00
alesapin
c2525ef211 Server and client pinging each other 2020-10-30 17:16:47 +03:00
Azat Khuzhin
3661769e1b Remove some absolute changes for errorCodeToName/system.errors 2020-10-30 09:04:22 +03:00
Azat Khuzhin
0cd79de632 Eliminate extra strlen() in errorCodeToName() 2020-10-29 21:53:09 +03:00
Azat Khuzhin
cb50886ef1 Fix ErrorCodes increment on error 2020-10-29 21:24:52 +03:00
Azat Khuzhin
04bff595d3 Make check-style happy (by not using DB::ErrorCodes:: in comments) 2020-10-29 21:10:20 +03:00
Azat Khuzhin
7e79769ae4 Fix readability-inconsistent-declaration-parameter-name in ErrorCodes.h 2020-10-29 21:08:09 +03:00
Maxim Akhmedov
3627fabfb9 Remove -g0 form Arcadia build settings. 2020-10-29 17:37:23 +03:00
alesapin
5e2a3d12d7 Split requests and responses part from zookeeper 2020-10-29 17:25:44 +03:00
Azat Khuzhin
b42f77a791 Covert error codes list to lookup table and drop generation of them. 2020-10-29 10:55:41 +03:00
Azat Khuzhin
b2e2322895 Add system.errors table
Contains error codes with number of times they have been triggered.

Columns:

-   `name` ([String](../../sql-reference/data-types/string.md)) — name of the error (`errorCodeToName`).
-   `code` ([Int32](../../sql-reference/data-types/int-uint.md)) — code number of the error.
-   `value` ([UInt64](../../sql-reference/data-types/int-uint.md)) - number of times this error has been happened.

**Example**

``` sql
SELECT *
FROM system.errors
WHERE value > 0
ORDER BY code ASC
LIMIT 1

┌─name─────────────┬─code─┬─value─┐
│ CANNOT_OPEN_FILE │   76 │     1 │
└──────────────────┴──────┴───────┘
2020-10-29 10:55:38 +03:00
alesapin
0931658c2f Merge branch 'master' into add_separate_pool_for_fetches 2020-10-28 14:20:56 +03:00
alesapin
8a6be1602b
Merge pull request #16364 from ClickHouse/fix_uuid_mapping_exists
Minor improvements in DatabaseCatalog
2020-10-28 10:54:39 +03:00
Mikhail Filimonov
41971e073a
Fix typos reported by codespell 2020-10-27 12:04:03 +01:00
feng lv
9b95ed9ead fix 2020-10-26 12:21:04 +00:00
alesapin
77d350aaeb Bigger setting value 2020-10-26 14:23:59 +03:00
Alexander Tokmakov
f8f2d62d70 minor improvements in DatabaseCatalog 2020-10-25 20:27:21 +03:00
alexey-milovidov
e00f6c4a0d
Merge branch 'master' into total_memory_tracker-by-default 2020-10-24 21:17:53 +03:00
feng lv
15e4e03469 add union distinct and setting union_default_mode 2020-10-24 13:18:04 +00:00
Azat Khuzhin
114ea9b1eb Fix accounting for new/delete from different threads for VariableContext::Thread
MemoryTracker assumes that for VariableContext::Thread new/delete may be
called from different threads, hence the amount of memory can go
negative.

However the MemoryTracker is nested, so even if the negative amount is
allowed for VariableContext::Thread it does not allowed for anything
upper, and hence the MemoryTracking will not be decremented properly.

Fix this, by passing initial size to the parent free.

This should fix memory drift for HTTP queries.
2020-10-23 21:07:52 +03:00
Azat Khuzhin
72d7b6117e Use total_memory_tracker when there is no other MemoryTracker object.
This should significantly reduce the MemoryTracking drift, test shows
that there is 0 drift after query storm (100 queries, via http/tcp/tcp
in one session).

TL;DR;

To track memory, clickhouse creates memory tracker object for each
thread **explicitly**, but until it is not created the memory
allocations are not under account.
There should not be lot of allocations w/o memory tracker, since most of
the time it is created early enough, but even this maybe enough to
trigger some problems.

Plus sometimes it is not possible to create it, for example some 3d
party library does not allow to do this explicitly:
- for example before #15740 allocations from librdkafka threads,
- or even worse, poco threads, they don't have any routines to do this.
This won't be a problem for `MemoryTracking` metric if the deallocation
will be done from the same thread w/o memory tracker (or vise versa),
but this is not always true.

NOTE, that this will slow down per-thread allocations w/o memory
tracker, since before this patch there were no memory tracking for them
while now they will be accounted in total_memory_tracker, and for
total_memory_tracker max_untracked_memory is always reached.
But this should not be significant.
2020-10-23 21:07:52 +03:00
Amos Bird
ccf59c6412
Fix definitely wrong bug 2020-10-22 22:56:45 +08:00
alexey-milovidov
2ae32e3d5c
Merge pull request #16101 from azat/http-memory-tracking-fixes
Fix memory tracker settings (for HTTP queries)
2020-10-22 00:00:47 +03:00
Alexey Milovidov
2619efadc8 Fix multiple issues with memory tracking 2020-10-21 03:31:34 +03:00
Vladimir Chebotarev
aa5f207fd4
Added disable_merges option for volumes in multi-disk configuration (#13956)
Co-authored-by: Alexander Kazakov <Akazz@users.noreply.github.com>
2020-10-20 18:10:24 +03:00
Alexey Milovidov
448c87363c Style 2020-10-20 04:29:34 +03:00
Alexander Kuzmenkov
defcd29b31
Merge pull request #16036 from ClickHouse/stress_test_improvemets
Minor improvements of stress test
2020-10-19 16:12:30 +03:00
Azat Khuzhin
082f30a3a1 Introduce ThreadStatus::applyQuerySettings() to reduce copy-paste 2020-10-17 15:01:53 +03:00
Alexander Tokmakov
026896835c fixes 2020-10-16 15:20:30 +03:00
Alexander Tokmakov
95ad45a3b0 minor improvements of stress test 2020-10-15 21:14:04 +03:00
Nikolai Kochetov
939d8edf33
Merge pull request #15999 from ClickHouse/fix-after-15437
Continuation of 15437
2020-10-15 18:20:48 +03:00
Vitaly Baranov
5f261cec3c
Merge pull request #15199 from filimonov/non_delimited_protobuf
ProtobufSingle format
2020-10-15 16:58:39 +03:00
Nikolai Kochetov
963ce315b2
Merge pull request #15454 from azat/dict-prealloc
Speedup hashed/sparse_hashed dictionary loading by preallocating the hash table
2020-10-15 15:03:53 +03:00
Nikolai Kochetov
40f62719ff Move event to stack. 2020-10-15 13:24:18 +03:00
Vitaly Baranov
997570780d
Merge branch 'master' into non_delimited_protobuf 2020-10-14 16:26:57 +03:00
Anton Popov
7470ac98bb
Merge pull request #15855 from hexiaoting/dev_fetch
Add Support for OFFSET_FETCH_CLAUSE
2020-10-14 15:21:28 +03:00
hexiaoting
dea965832a Fix error for previous offset test 2020-10-13 11:32:43 +08:00
Azat Khuzhin
2947eff878 Fix query hang with connections_with_failover_max_tries = 0 (endless loop) 2020-10-12 22:07:26 +03:00
Mikhail Filimonov
87a8ba63f7
Few more CR fixes 2020-10-12 15:05:40 +02:00
alexey-milovidov
10e9d14466
Merge pull request #15818 from ClickHouse/style-pragma-once
Check for #pragma once in headers
2020-10-11 13:14:09 +03:00
alexey-milovidov
39e58128cd
Merge pull request #15812 from ClickHouse/bigint-hash
Minor changes in BigInt hash
2020-10-11 01:11:30 +03:00
Alexey Milovidov
269b6383f5 Check for #pragma once in headers 2020-10-10 21:37:02 +03:00
Alexey Milovidov
9f15daf45c Remove useless metrics to avoid confusion 2020-10-10 18:52:44 +03:00
Alexey Milovidov
a2ef0f6cba Minor changes in BigInt hash 2020-10-10 18:46:41 +03:00
Alexey Milovidov
4f2d4988c6 Fix build on Mac OS 2020-10-10 13:51:57 +03:00
Alexey Milovidov
2c71327ff5 Fix build on Mac OS 2020-10-10 11:02:02 +03:00
Azat Khuzhin
f4f79aa84a Add HashTable::reserve() (for preallocated hashed/sparse_hashed dictionaries) 2020-10-09 21:53:57 +03:00
Azat Khuzhin
553f6aa4cd Remove unused functions 2020-10-07 21:30:53 +03:00
alexey-milovidov
97d97f6b2e
Merge pull request #15513 from ClickHouse/aku/error-context
Add some context to an error message
2020-10-03 16:24:19 +03:00
alexey-milovidov
ae61f8f7a6
Update filesystemHelpers.cpp 2020-10-03 15:57:35 +03:00
alexey-milovidov
4d6402525a
Update filesystemHelpers.h 2020-10-03 15:57:12 +03:00
Alexey Milovidov
d426ba3074 Step 4: cleanup 2020-10-03 03:07:55 +03:00
Alexey Milovidov
b6ca8a0676 Step 3: check other usages, add a comment 2020-10-03 03:05:54 +03:00
Alexey Milovidov
2441be4b66 Step 2: move code to .cpp 2020-10-03 03:02:47 +03:00
Alexey Milovidov
6608de470d Step 1: handle EINTR in statvfs 2020-10-03 03:01:32 +03:00
Alexander Kuzmenkov
3be7c7745e Use a separate overload for formatting with fmt 2020-10-02 14:06:38 +03:00
Alexander Kuzmenkov
6e07bfe7bc return the comment 2020-10-01 17:29:22 +03:00
Alexander Kuzmenkov
c5d6e2e67c Add context to error messages 2020-10-01 14:02:53 +03:00
Nikolai Kochetov
45618c9d4c
Merge pull request #15437 from ClickHouse/azat-ThreadPool-UAF-fixes
Destroy resources captured by lambda after `ThreadFromGlobalPool::join()`
2020-09-30 16:50:30 +03:00
alesapin
01d8a36cd6
Merge pull request #15456 from ClickHouse/more-exception-safety-in-shellcommand
Fix exception safety in ShellCommand
2020-09-30 12:56:55 +03:00
Nikolai Kochetov
0e412686bc Better comments. 2020-09-30 11:25:22 +03:00
alexey-milovidov
412a54e356
Merge pull request #14693 from hustnn/zk_exist_fix2
Fix potential memory leak caused by zookeeper exist calling
2020-09-30 04:48:11 +03:00
Alexey Milovidov
78dbf10c7b Fix exception safety in ShellCommand 2020-09-30 03:00:45 +03:00
Nikolai Kochetov
727289cb09 Destroy resurces captured by lambda after ThreadFromGlobalPool::join(). 2020-09-29 23:43:02 +03:00
Nikolai Kochetov
a2c70c4611 Destroy resurces captured by lambda after ThreadFromGlobalPool::join(). 2020-09-29 22:11:40 +03:00
Nikolai Kochetov
a7e7fd084f Destroy resurces captured by lambda after ThreadFromGlobalPool::join(). 2020-09-29 13:48:11 +03:00
Azat Khuzhin
789434994a Reset job on failure too in ThreadPool::worker()
job should be reseted before decrementing scheduled_jobs to
ensure that the Job destroyed before wait() returns.
2020-09-29 10:56:36 +03:00
tavplubix
4578d89819
Merge pull request #15348 from ClickHouse/replicate_default_args
Continuation of #14791
2020-09-28 18:53:02 +03:00
tavplubix
421d3b0b86
Merge pull request #14760 from bharatnc/ncb/event_time_microsec_p2
add event_time_microseconds field for system.{trace,text,query,query_thread}_log tables
2020-09-28 18:34:21 +03:00
hustnn
a7024134dd Merge remote-tracking branch 'upstream/master' into zk_exist_fix2 2020-09-28 14:44:55 +08:00
Alexander Tokmakov
3bc8d9daa9 fix sync 2020-09-27 14:10:45 +03:00
Alexander Tokmakov
34addcf61f add review suggestions 2020-09-26 22:18:28 +03:00
alexey-milovidov
bbbe51033d
Merge pull request #15321 from ClickHouse/query-obfuscator
Query obfuscator
2020-09-26 19:43:36 +03:00
Alexey Milovidov
5e146eda04 Fix error 2020-09-26 06:02:05 +03:00
Alexey Milovidov
62c2c2000c Query obfuscator: development 2020-09-26 03:00:54 +03:00
bharatnc
24ea6b2380 TraceCollector - time s&us using same timespec 2020-09-25 10:39:37 -07:00
bharatnc
b0d4fe5114 TraceLog - add field event_time_microseconds 2020-09-25 10:39:37 -07:00
tavplubix
b96157e32b
Merge branch 'master' into enable_atomic_database_by_default 2020-09-25 13:42:39 +03:00
alexey-milovidov
13529265c4
Revert "Avoid deadlocks in Log/TinyLog" 2020-09-25 02:28:57 +03:00
Alexander Tokmakov
fb826557b7 Merge branch 'master' into enable_atomic_database_by_default 2020-09-25 02:04:01 +03:00
Alexey Milovidov
dce6a436f3 Fix strange code 2020-09-24 19:35:17 +03:00
Vitaly Baranov
0605808ed1
Merge pull request #14492 from vitlibar/use-previous-users-xml-if-failed-to-reload
Use previous users.xml if failed to reload
2020-09-24 16:25:19 +03:00
Alexander Kuzmenkov
813a876e93
Merge pull request #14962 from ClickHouse/log-avoid-deadlock
Avoid deadlocks in Log/TinyLog
2020-09-24 13:54:11 +03:00
Alexander Tokmakov
f0f91f84af Merge branch 'master' into enable_atomic_database_by_default 2020-09-23 21:50:15 +03:00
Alexander Tokmakov
a8266a3d3c fix DDDL with cross-replication and Atomic 2020-09-23 21:28:59 +03:00
Alexander Kuzmenkov
679c0988a5 Merge remote-tracking branch 'origin/master' into HEAD 2020-09-22 16:25:52 +03:00
Alexander Kuzmenkov
dde4cf70e1 Merge remote-tracking branch 'origin/master' into HEAD 2020-09-22 14:03:59 +03:00
Alexander Kuzmenkov
478c7309d4
Merge pull request #14843 from ClickHouse/aku/global-pool
Exception on double init of global thread pool
2020-09-22 13:44:39 +03:00
Alexander Kuzmenkov
c0241b617a Merge remote-tracking branch 'origin/master' into HEAD 2020-09-22 13:14:31 +03:00
hustnn
3a59a7d5b6 Remove root path before adding to watches 2020-09-22 09:28:13 +08:00
Niu Zhaojie
76e0147bf4 Use opt num to identify request type 2020-09-22 09:28:12 +08:00
hustnn
35f1db0043 Fix potential memory leak caused by zookeeper exist calling 2020-09-22 09:28:12 +08:00
Alexey Milovidov
1e65105b06 Merge branch 'master' into log-avoid-deadlock 2020-09-21 21:09:06 +03:00
alexey-milovidov
e29c4c3cc4
Merge pull request #15024 from ClickHouse/fix_renameat2_einval_on_macos
Fix EINVAL in renameat2 on MacOS
2020-09-21 21:08:17 +03:00
alexey-milovidov
10d3a1d730
Update ThreadPool.cpp 2020-09-21 20:49:15 +03:00
tavplubix
fd2cc343e6
Update renameat2.cpp 2020-09-21 15:37:34 +03:00
tavplubix
450c1a5709
Update renameat2.cpp 2020-09-21 13:19:02 +03:00
Alexander Tokmakov
ef85ce90c3 fix build 2020-09-21 13:17:33 +03:00
Azat Khuzhin
30f96dc525 Fix possible UAF from jobs in the ThreadPool on shutdown
ThreadPoolImpl<>::worker signaling that job is done while still storing
std::function<> object, and this can lead to problems on shutdown, since
in in this cast std::function<> can refers to some global/static object
that had been already destroyed (typical example is Logger).

I believe that this is exactly what TSAN reports about (decoded
manually, since llvm-symbolizer does not work in the test env):

<details>

```

- 2020-09-20 17:44:43   Write of size 8 at 0x7b1000008f78 by main thread (mutexes: write M1432):
    operator delete(void*, unsigned long)
    ??:0:0

    Poco::Logger::~Logger()
    /build/obj-x86_64-linux-gnu/../contrib/poco/Foundation/src/Logger.cpp:39:1
    non-virtual thunk to Poco::Logger::~Logger()
    /build/obj-x86_64-linux-gnu/../contrib/poco/Foundation/src/Logger.cpp:0:0

    Poco::RefCountedObject::release() const
    /build/obj-x86_64-linux-gnu/../contrib/poco/Foundation/include/Poco/RefCountedObject.h:82:24
    Poco::Logger::shutdown()
    /build/obj-x86_64-linux-gnu/../contrib/poco/Foundation/src/Logger.cpp:346:16

    Poco::AutoLoggerShutdown::~AutoLoggerShutdown()
    /build/obj-x86_64-linux-gnu/../contrib/poco/Foundation/src/Logger.cpp:459:4

    cxa_at_exit_wrapper(void*)
    ??:0:0

```

```
- 2020-09-20 17:44:43   Previous atomic read of size 4 at 0x7b1000008f78 by thread T116:

    __tsan_atomic32_load
    ??:0:0

    int std::__1::__cxx_atomic_load<int>(std::__1::__cxx_atomic_base_impl<int> const*, std::__1::memory_order)
    /build/obj-x86_64-linux-gnu/../contrib/libcxx/include/atomic:970:12
    std::__1::__atomic_base<int, false>::load(std::__1::memory_order) const
    /build/obj-x86_64-linux-gnu/../contrib/libcxx/include/atomic:1487:17
    std::__1::__atomic_base<int, false>::operator int() const
    /build/obj-x86_64-linux-gnu/../contrib/libcxx/include/atomic:1491:53
    Poco::Logger::is(int) const
    /build/obj-x86_64-linux-gnu/../contrib/poco/Foundation/include/Poco/Logger.h:1264:9
    MemoryTracker::logPeakMemoryUsage() const
    /build/obj-x86_64-linux-gnu/../src/Common/MemoryTracker.cpp:59:5

    MemoryTracker::~MemoryTracker()
    /build/obj-x86_64-linux-gnu/../src/Common/MemoryTracker.cpp:46:13

    DB::ThreadGroupStatus::~ThreadGroupStatus()
    /build/obj-x86_64-linux-gnu/../src/Common/ThreadStatus.h:51:7
    std::__1::__shared_ptr_emplace<DB::ThreadGroupStatus, std::__1::allocator<DB::ThreadGroupStatus> >::__on_zero_shared()
    /build/obj-x86_64-linux-gnu/../contrib/libcxx/include/memory:3602:23

    std::__1::__shared_count::__release_shared()
    /build/obj-x86_64-linux-gnu/../contrib/libcxx/include/memory:3440:9
    std::__1::__shared_weak_count::__release_shared()
    /build/obj-x86_64-linux-gnu/../contrib/libcxx/include/memory:3482:27
    std::__1::shared_ptr<DB::ThreadGroupStatus>::~shared_ptr()
    /build/obj-x86_64-linux-gnu/../contrib/libcxx/include/memory:4207:19
    DB::PipelineExecutor::executeImpl(unsigned long)::$_4::~$_4()
    /build/obj-x86_64-linux-gnu/../src/Processors/Executors/PipelineExecutor.cpp:720:34
    ThreadFromGlobalPool::ThreadFromGlobalPool<DB::PipelineExecutor::executeImpl(unsigned long)::$_4>(DB::PipelineExecutor::executeImpl(unsigned long)::$_4&&)::'lambda'()::~()
    /build/obj-x86_64-linux-gnu/../src/Common/ThreadPool.h:161:54
    std::__1::__compressed_pair_elem<ThreadFromGlobalPool::ThreadFromGlobalPool<DB::PipelineExecutor::executeImpl(unsigned long)::$_4>(DB::PipelineExecutor::executeImpl(unsigned long)::$_4&&)::'lambda'(), 0, false>::~__compressed_pair_elem()
    /build/obj-x86_64-linux-gnu/../contrib/libcxx/include/memory:2188:8
    std::__1::__function::__alloc_func<ThreadFromGlobalPool::ThreadFromGlobalPool<DB::PipelineExecutor::executeImpl(unsigned long)::$_4>(DB::PipelineExecutor::executeImpl(unsigned long)::$_4&&)::'lambda'(), std::__1::allocator<ThreadFromGlobalPool::ThreadFromGlobalPool<DB::Pip>
    /build/obj-x86_64-linux-gnu/../contrib/libcxx/include/functional:1559:38
    std::__1::__function::__func<ThreadFromGlobalPool::ThreadFromGlobalPool<DB::PipelineExecutor::executeImpl(unsigned long)::$_4>(DB::PipelineExecutor::executeImpl(unsigned long)::$_4&&)::'lambda'(), std::__1::allocator<ThreadFromGlobalPool::ThreadFromGlobalPool<DB::PipelineE>
    /build/obj-x86_64-linux-gnu/../contrib/libcxx/include/functional:1706:10

    std::__1::__function::__value_func<void ()>::~__value_func()
    /build/obj-x86_64-linux-gnu/../contrib/libcxx/include/functional:1828:19
    std::__1::function<void ()>::~function()
    /build/obj-x86_64-linux-gnu/../contrib/libcxx/include/functional:2460:43
    ThreadPoolImpl<std::__1::thread>::worker(std::__1::__list_iterator<std::__1::thread, void*>)
    /build/obj-x86_64-linux-gnu/../src/Common/ThreadPool.cpp:268:5

    void ThreadPoolImpl<std::__1::thread>::scheduleImpl<void>(std::__1::function<void ()>, int, std::__1::optional<unsigned long>)::'lambda1'()::operator()() const
    /build/obj-x86_64-linux-gnu/../src/Common/ThreadPool.cpp:116:73
    decltype(std::__1::forward<void>(fp)(std::__1::forward<void ThreadPoolImpl<std::__1::thread>::scheduleImpl<void>(std::__1::function<void ()>, int, std::__1::optional<unsigned long>)::'lambda1'()>(fp0)...)) std::__1::__invoke<void ThreadPoolImpl<std::__1::thread>::scheduleI>
    /build/obj-x86_64-linux-gnu/../contrib/libcxx/include/type_traits:3519:1
    void std::__1::__thread_execute<std::__1::unique_ptr<std::__1::__thread_struct, std::__1::default_delete<std::__1::__thread_struct> >, void ThreadPoolImpl<std::__1::thread>::scheduleImpl<void>(std::__1::function<void ()>, int, std::__1::optional<unsigned long>)::'lambda1'(>
    /build/obj-x86_64-linux-gnu/../contrib/libcxx/include/thread:273:5
    void* std::__1::__thread_proxy<std::__1::tuple<std::__1::unique_ptr<std::__1::__thread_struct, std::__1::default_delete<std::__1::__thread_struct> >, void ThreadPoolImpl<std::__1::thread>::scheduleImpl<void>(std::__1::function<void ()>, int, std::__1::optional<unsigned lon>
    /build/obj-x86_64-linux-gnu/../contrib/libcxx/include/thread:284:5

    __tsan_thread_start_func
    ??:0:0
```

```
- 2020-09-20 17:44:43   Mutex M1432 (0x0000181213a8) created at:
    pthread_mutex_init
    ??:0:0

    Poco::MutexImpl::MutexImpl()
    /build/obj-x86_64-linux-gnu/../contrib/poco/Foundation/src/Mutex_POSIX.cpp:64:6

    Poco::Mutex::Mutex()
    /build/obj-x86_64-linux-gnu/../contrib/poco/Foundation/src/Mutex.cpp:34:8

    __cxx_global_var_init
    /build/obj-x86_64-linux-gnu/../contrib/poco/Foundation/src/Logger.cpp:28:15
    _GLOBAL__sub_I_Logger.cpp
    /build/obj-x86_64-linux-gnu/../contrib/poco/Foundation/src/Logger.cpp:0:0

    __libc_csu_init
    ??:0:0
```

</details>
2020-09-20 23:46:28 +03:00
alexey-milovidov
7b35a6a59a
Merge pull request #15028 from ClickHouse/fix-bar
Fix buffer overflow in "bar" function
2020-09-20 19:04:15 +03:00
alexey-milovidov
1474b80ecc
Merge pull request #15008 from ClickHouse/clang-tidy-11-without-enabling
Fix terribly wrong code
2020-09-20 02:00:54 +03:00
Alexey Milovidov
dae3b40a55 Fix buffer overflow in "bar" function 2020-09-19 22:15:16 +03:00
Alexey Milovidov
059646743b Remove OpenCL 2020-09-19 17:20:00 +03:00
Alexander Tokmakov
46aa307d0a fix EINVAL in renameat2 on MacOS 2020-09-19 17:19:06 +03:00
Vitaly Baranov
33efb36714 Use previous users.xml if failed to reload. 2020-09-19 16:21:12 +03:00
Alexey Milovidov
4d06bc62b1 Allow concurrent reads while writing to TinyLog 2020-09-19 14:02:11 +03:00
alexey-milovidov
c461d782e4
Merge pull request #14929 from ClickHouse/mlock-code-segment
Only mlock code segment
2020-09-19 13:46:49 +03:00
Alexey Milovidov
ef5363b87f Fix terribly wrong code 2020-09-19 02:05:13 +03:00
Alexey Milovidov
7d0f3db639 Fix annoying "Arcadia" 2020-09-18 23:19:41 +03:00
Alexey Milovidov
8a8e4f8a41 Attempt to speed-up clang build 2020-09-18 21:58:57 +03:00
Alexey Milovidov
6e6909f47d Fix "Arcadia" 2020-09-18 21:54:54 +03:00
Alexey Milovidov
72c2201287 Fix "Arcadia" 2020-09-18 17:39:33 +03:00
Alexander Kuzmenkov
a9b2bff8ba Merge remote-tracking branch 'origin/master' into HEAD 2020-09-18 13:43:29 +03:00
Alexey Milovidov
1752bbc1ed Fix "Arcadia" build 2020-09-18 01:29:15 +03:00
Alexey Milovidov
a783fe110f Fix build 2020-09-17 21:15:19 +03:00
Alexey Milovidov
eb523f1a7c Merge branch 'master' into mlock-code-segment 2020-09-17 21:15:09 +03:00
Alexey Milovidov
20d07ed405 Update comment 2020-09-17 21:04:11 +03:00
Alexander Kuzmenkov
fb64cf210a straighten the protocol version 2020-09-17 17:37:29 +03:00
Vitaly Baranov
3356d75b23
Merge pull request #13156 from azat/cluster-secure
Secure inter-cluster query execution (with initial_user as current query user) [v3]
2020-09-17 17:11:00 +03:00
alexey-milovidov
496df5b3e9
Merge pull request #14678 from sundy-li/patch-2
dynamic zookeeper config when session expired
2020-09-17 17:05:22 +03:00
Alexey Milovidov
068e8576b7 Corrections 2020-09-17 15:53:52 +03:00
Alexey Milovidov
8bce20076c Only mlock code segment 2020-09-17 15:39:37 +03:00
Nikolai Kochetov
959d755a1b
Update Visitor.h 2020-09-17 15:08:55 +03:00
Nikolai Kochetov
225b85624e Merge branch 'master' into inline-gather-utils 2020-09-17 11:17:32 +03:00
sundy-li
544b2cb20d add configChanged method for zookeeper
fix logic error && skip reload testkeeper
2020-09-17 13:33:45 +08:00
Alexander Kuzmenkov
bcea99f2e5
Update ThreadPool.cpp 2020-09-16 11:59:58 +03:00
Alexander Kuzmenkov
5afb19faf1
Update ThreadPool.cpp 2020-09-15 19:58:09 +03:00
Alexander Kuzmenkov
a792850ecd
Update ThreadPool.cpp 2020-09-15 18:05:42 +03:00
alexey-milovidov
018f596d21
Merge pull request #14685 from ClickHouse/remap-executable
Attempt to make performance test more reliable
2020-09-15 15:09:47 +03:00
Alexander Kuzmenkov
d943bac1a4 Exception on double init of global thread pool 2020-09-15 13:30:16 +03:00
Artem Zuikov
51ba12c2c3
Try speedup build (#14809) 2020-09-15 12:55:57 +03:00
Nikolai Kochetov
95ae1105d9 Remove virtual destructors for Visitor. 2020-09-15 02:05:43 +03:00
Azat Khuzhin
785d1b2a75 OpenSSLHelpers cleanup
Add few more specializations for encodeSHA256():
- std::string encodeSHA256(const std::string_view &);
- std::string encodeSHA256(const void *, size_t);
- void encodeSHA256(const void *, size_t, unsigned char *);
2020-09-15 01:36:28 +03:00
Nikolai Kochetov
65a1057aae Revert "Try simplify Visitor."
This reverts commit 9fcfa560ae.
2020-09-15 00:40:41 +03:00
Nikolai Kochetov
9fcfa560ae Try simplify Visitor. 2020-09-14 23:35:45 +03:00
Nikita Mikhaylov
ddea62211d
Merge pull request #11948 from CurtizJ/fsync-parts
Experiment. Allow to turn on fsync on inserts, merges and fetches.
2020-09-14 22:37:14 +04:00
Alexey Milovidov
3530f83c01 Remove debug output 2020-09-14 21:12:09 +03:00
Alexey Milovidov
f9361acb88 Disable in shared libraries mode 2020-09-14 21:00:45 +03:00
Alexey Milovidov
0e73b8acf3 Merge branch 'master' into remap-executable 2020-09-14 20:26:16 +03:00
Alexey Milovidov
b966697939 Style 2020-09-14 16:31:30 +03:00
alexey-milovidov
cc3d1a3922
Merge pull request #14471 from ClickHouse/git-to-clickhouse
Added a script to import git repository to ClickHouse
2020-09-12 03:56:31 +03:00
Anton Popov
f2a5216e97 add waiting for fsync in WAL 2020-09-11 02:28:50 +03:00
Anton Popov
af4089c606 Merge remote-tracking branch 'upstream/master' into HEAD 2020-09-11 00:39:21 +03:00
Alexey Milovidov
5675efbd47 Fix build 2020-09-10 20:16:12 +03:00
Alexander Tokmakov
f19f02028b fix misleading exception message about uuid macro 2020-09-10 17:50:10 +03:00
Alexey Milovidov
65e9c678f8 Disable under certain conditions 2020-09-10 17:47:02 +03:00
Alexey Milovidov
532d121100 Fix typo 2020-09-10 12:14:31 +03:00
Alexey Milovidov
a644733139 Attempt to make performance test more reliable 2020-09-10 12:05:57 +03:00
alexey-milovidov
e65e29d537
Merge pull request #14647 from fastio/master
Add QueryMemoryLimitExceeded event
2020-09-10 06:12:39 +03:00
Nikita Mikhaylov
44726c37c3
Merge branch 'master' into fix-executable-dictionary-source-hangup 2020-09-09 23:01:41 +04:00
alexey-milovidov
453914b6b8
Update ProfileEvents.cpp 2020-09-09 21:02:53 +03:00
Peng Jian
9fa04cf48b Add QueryMemoryLimitExceeded event 2020-09-10 00:59:38 +08:00
Vasily Nemkov
3973a17530
MySql datatypes dateTime64 and decimal (#11512) 2020-09-09 15:18:02 +03:00
Artem Zuikov
36972d34a7
Fix logical error in GLOBAL JOIN with table function (#14545) 2020-09-09 13:03:13 +03:00
Ilya Yatsishin
a3d6732662
Merge pull request #14558 from bharatnc/ncb/improve-config-path-processing
use std::filesystem::path in ConfigProcessor for filepath concatenation
2020-09-08 14:39:23 +03:00
Nikita Mikhaylov
80f193f615
Merge pull request #14252 from bharatnc/ncb/time-query-log-in-ms
add query_start_time_microseconds field to system.query_log & system.query_thread_log tables
2020-09-08 15:11:50 +04:00
Ilya Yatsishin
11a247d2f4
Merge pull request #14556 from ClickHouse/fix-arcadia-2
Lower binary size in "Arcadia" build
2020-09-08 12:08:35 +03:00
alesapin
4364bff3bc
Merge pull request #12761 from kssenii/rabbitmq-improvements
RabbitMQ improvements
2020-09-08 09:38:25 +03:00
Alexey Milovidov
e3924b8057 Fix "Arcadia" 2020-09-08 01:14:13 +03:00
bharatnc
7b89adb10d use std::filesystem::path in ConfigProcessor
This PR improves the way the ClickHouse config path,
preprocessed_configs path etc are being joined inside
`ConfigProcessor.cpp`.

Uses `std::filesystem::path` to join the paths instead of
standard string concatenation. This would improve path concatenation.
Current method of concatenation results in:

```bash
➜  clickhouse-server ls -latr
total 68
-rw-r--r--   1 root root  5587 Aug 31 05:00 users.xml
drwxr-xr-x 143 root root 12288 Sep  7 11:23 ..
lrwxrwxrwx   1 root root    41 Sep  7 11:23 preprocessed -> /var/lib/clickhouse//preprocessed_configs
drwxr-xr-x   2 root root  4096 Sep  7 11:23 users.d
-rw-r--r--   1 root root 34252 Sep  7 11:28 config.xml
drwxr-xr-x   4 root root  4096 Sep  7 11:28 .
drwxr-xr-x   2 root root  4096 Sep  7 11:28 config.d
```

The symlink `/var/lib/clickhouse//preprocessed_configs` will still work.
amd this PR is an improvement to the current method of path
concatenation.
2020-09-07 12:45:52 -07:00
alexey-milovidov
e1104135c8
Merge pull request #13939 from fastio/master
Multithreading implementation of Kafka engine
2020-09-07 20:12:06 +03:00
kssenii
40c8290dde Tiny fixes, better tests 2020-09-07 14:48:50 +00:00
alesapin
17650e803f Tiny improvements 2020-09-07 14:08:53 +03:00
Alexey Milovidov
04a6965006 Fix error with executable dictionary source 2020-09-07 09:40:01 +03:00
Alexey Milovidov
1400bdbf83 Fix unit tests 2020-09-07 06:11:35 +03:00
Alexey Milovidov
83d2eafd12 Merge branch 'master' of github.com:yandex/ClickHouse into git-to-clickhouse 2020-09-07 03:19:44 +03:00
bharatnc
fd22450a2a Merge remote-tracking branch 'upstream/master' into ncb/time-query-log-in-ms 2020-09-06 13:19:27 -07:00
alexey-milovidov
a78b04b56a
Merge pull request #14455 from ClickHouse/prepare-clang-11
Prepare for clang 11
2020-09-06 11:02:58 +03:00
Peng Jian
e6bfd9d586 1. Add new setting for Kafka engine, named kafka_thread_per_consumer which default value is false. 2. Create separate thread pool for Kafka engine. 2020-09-06 11:17:19 +08:00
Anton Popov
3b9be70c8c Merge remote-tracking branch 'upstream/master' into HEAD 2020-09-05 18:53:55 +03:00
bharatnc
44e168bea7 query_start_time_microseconds field in system.query_log
Add a new field called `query_start_time_microseconds`  that will add
`microseconds`. This new field will be of type `DateTime64`.
2020-09-04 09:42:18 -07:00
Artem Zuikov
7c20aa2c62
Another 256-bit integers (strict 32 bytes) (#14229) 2020-09-04 16:33:02 +03:00
alexey-milovidov
54ede2e1bb
Merge pull request #14467 from ClickHouse/topk-check-overflow
Check for array size overflow in topK
2020-09-04 09:15:33 +03:00
Alexey Milovidov
d3fa22280a Merge branch 'prepare-clang-11' into git-to-clickhouse 2020-09-04 09:12:27 +03:00
Alexey Milovidov
23b9677879 Added a script to import git repository to ClickHouse 2020-09-04 08:46:58 +03:00
Alexey Milovidov
1cee6d5a31 Check for array size overflow in topK #14452 2020-09-04 04:05:57 +03:00
Alexey Milovidov
4b3220f79a Prepare for clang 11 2020-09-04 03:39:56 +03:00
Amos Bird
3817c0efa7
Remove redundant conditions 2020-09-04 02:13:57 +08:00
Anton Popov
4fe57fc169 Merge remote-tracking branch 'upstream/master' into HEAD 2020-09-02 01:29:44 +03:00
Artem Zuikov
d304d522cc
Refactoring: rename types to allow change bigint library (#14219) 2020-09-01 12:54:50 +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
alexey-milovidov
7271c9c983
Merge pull request #14059 from azat/gcc10-fixes
gcc10 build fixes
2020-08-26 03:31:03 +03:00
vladimir golovchenko
b0dd1d92b4 Added date_trunc function. 2020-08-25 16:41:08 -07:00
Azat Khuzhin
9071457d3f Fix C++20 comparison calls recursively with reversed arguments in UInt128.h (over.match.oper#3.4.4 in gcc10)
Due to [1], gcc10 reports:

    ../src/Common/UInt128.h:92:81: error: in C++20 this comparison calls the current function recursively with reversed arguments [-Werror]
       92 | template <typename T> bool inline operator == (T a, const UInt128 b) { return b == a; }

  [1]: http://eel.is/c++draft/over.match.oper#3.4.4
2020-08-25 21:19:57 +03:00
Alexander Tokmakov
59d879b1fe fix "no space left" extra info for Poco::Exception 2020-08-25 18:06:24 +03:00
Anton Popov
4df5c72878 Merge remote-tracking branch 'upstream/master' into HEAD 2020-08-24 12:57:27 +03:00
Vasily Nemkov
f94f786cc3 First attempt to fix data race in ConnectionPoolWithFailover::getStatus() 2020-08-20 23:25:38 +03:00
Artem Zuikov
becc186c91
Add support for extended precision integers and decimals (#13097) 2020-08-19 14:52:17 +03:00
Alexey Milovidov
5a00941303 Fix "Arcadia" 2020-08-19 12:31:28 +03:00
Alexey Milovidov
5c0a9648fb Remove even more useless code 2020-08-18 22:03:23 +03:00
Alexey Milovidov
eeb769d2d4 Remove useless code around zkutil 2020-08-18 22:02:07 +03:00
Artem Zuikov
bc6ddac52c one more unroll for arerage.cpp 2020-08-17 19:23:05 +03:00
Alexey Milovidov
09846a92cd Fix typos 2020-08-16 15:09:41 +03:00
alexey-milovidov
751cce6dfc
Update gtest_thread_pool_schedule_exception.cpp 2020-08-16 11:10:36 +03:00
Alexey Milovidov
1b929ec54a Fix flaky unit test 2020-08-16 11:07:36 +03:00
Alexey Milovidov
696f773267 Remove ZooKeeper from unit tests 2020-08-15 07:29:02 +03:00
Alexey Milovidov
52cf85eaee Fix clang build 2020-08-13 23:13:13 +03:00
tavplubix
4aff48dc3f
Merge pull request #10851 from zhang2014/feature/materialize_mysql_database
ISSUES-4006 support MaterializeMySQL database engine
2020-08-12 15:59:28 +03:00
Alexander Kuzmenkov
d42dbfce98 Do not overallocate when creating PODArray with given size
Another part of #12278
2020-08-10 23:36:52 +03:00
Alexey Milovidov
8054a08c55 Fix build after merge 2020-08-10 03:44:21 +03:00
Vitaly Baranov
2e6ba2a05d
Merge pull request #13496 from vitlibar/compound-identifiers-for-custom-settings
Support compound identifiers for custom settings.
2020-08-10 01:03:02 +03:00
alexey-milovidov
180ea39bf8
Merge pull request #13099 from ClickHouse/fixed-hash-map-implicit-zero-6
Slightly improve performance of aggregation by UInt8/UInt16 keys, part 6
2020-08-09 23:13:53 +03:00
Vitaly Baranov
2c5a2b2f43 Add function isValidIdentifier(). 2020-08-09 02:46:42 +03:00
Alexey Milovidov
182e2929f3 Merge branch 'master' into embed-configs 2020-08-09 02:41:44 +03:00
Alexey Milovidov
a2d9be1ed4 Merge branch 'fixed-hash-map-implicit-zero-6' of github.com:yandex/ClickHouse into fixed-hash-map-implicit-zero-6 2020-08-09 01:50:41 +03:00
Alexey Milovidov
d2351dc7f3 Fix clang static analyzer 2020-08-09 01:50:20 +03:00
Alexey Milovidov
350b8e87a7 Merge branch 'master' into fixed-hash-map-implicit-zero-6 2020-08-09 01:48:12 +03:00
alexey-milovidov
8e3f8aa0ab
Merge pull request #13491 from ClickHouse/aku/podarray
Avoid overallocation in PODArray assignment
2020-08-09 01:41:47 +03:00
alexey-milovidov
beed3c8244
Merge pull request #13500 from ClickHouse/hardening-and-better-error-messages
Hardening and better error messages
2020-08-08 17:13:43 +03:00
alexey-milovidov
c0fef71507
Merge pull request #13511 from ClickHouse/codespell
Fix typos in code with codespell.
2020-08-08 17:09:16 +03:00
Alexey Milovidov
0f79eb3cc5 Embed configs into binary 2020-08-08 06:42:42 +03:00
alexey-milovidov
321d4ed643
Merge pull request #13490 from zlobober/patch-4
Demangle exception classname for std::exception
2020-08-08 05:10:39 +03:00
Alexey Milovidov
12f66fa82c Fix 99% of typos 2020-08-08 04:01:47 +03:00
Alexey Milovidov
edd89a8610 Fix half of typos 2020-08-08 03:47:03 +03:00
alexey-milovidov
378b2b7e04
Update average.cpp 2020-08-08 02:06:55 +03:00
Alexander Kuzmenkov
ddf0fe30b3
Merge pull request #13336 from ianton-ru/select_insert_time
Add QueryTimeMicroseconds, SelectQueryTimeMicroseconds and InsertQueryTimeMicroseconds
2020-08-08 01:05:46 +03:00
Alexey Milovidov
b6625006dc Hardening and better error messages 2020-08-07 22:36:04 +03:00
Alexander Kuzmenkov
c06210a89a Avoid overallocation in PODArray assignment
Part of #12438
2020-08-07 18:18:32 +03:00
Max Akhmedov
026cb4ac1b
Demangle exception classname for std::exception 2020-08-07 17:52:32 +03:00
Alexander Kuzmenkov
5d60ab33a5
Merge pull request #13147 from ClickHouse/aku/podarray
Assert that the source type is the same before memcpy in PODArray::insert
2020-08-07 16:58:14 +03:00
alexey-milovidov
b5667e3b0f
Merge pull request #13441 from ClickHouse/fix-parse-date-time-best-effort
Fix error in parseDateTimeBestEffort
2020-08-07 14:02:59 +03:00
Alexey Milovidov
5c1703bd6c Merge branch 'master' into fixed-hash-map-implicit-zero-6 2020-08-07 02:58:57 +03:00
Alexey Milovidov
241017bc1f Fix error in parseDateTimeBestEffort 2020-08-07 02:52:18 +03:00
Alexander Kuzmenkov
da7bc8962d
Merge pull request #13417 from vladimir-golovchenko/fix-quota-statements-interval-formatting
Fix a 'Week'-interval formatting for ATTACH/ALTER/CREATE QUOTA-statements
2020-08-07 01:50:25 +03:00
Alexander Kuzmenkov
e7e71b8615 Use the memcpy predicate from 6f8a274ba0 2020-08-06 16:34:23 +03:00
Alexander Kuzmenkov
9409629511 Merge remote-tracking branch 'origin/master' into HEAD 2020-08-06 16:29:43 +03:00
vladimir golovchenko
3c307064b9 Fix a 'Week'-interval formatting for ATTACH/ALTER/CREATE QUOTA-statements. 2020-08-06 05:45:01 -07:00
Alexey Milovidov
8fd4038234 Fix UBSan error 2020-08-06 04:59:02 +03:00
Alexander Kuzmenkov
ead62bc9d7 Remove everything except static_assert for same type 2020-08-05 17:12:41 +03:00
Alexander Kuzmenkov
aa629a4c82 Merge remote-tracking branch 'origin/master' into HEAD 2020-08-05 17:09:56 +03:00
Alexander Kuzmenkov
0eaab3d095
Merge pull request #13191 from ClickHouse/aku/semicolon-cleanup
Cleanup for #12999. NFC
2020-08-05 14:53:27 +03:00
alexey-milovidov
85f28db714
Merge pull request #11524 from ClickHouse/stack-frams-size-limit
Avoid too large stack frames
2020-08-05 13:12:08 +03:00
Alexander Kuzmenkov
0d947b64bd fixup 2020-08-05 02:23:31 +03:00
Anton Ivashkin
327090b7ea Add QueryTimeMicroseconds, SelectQueryTimeMicroseconds and InsertQueryTimeMicroseconds to system.events, second attempt 2020-08-04 19:38:13 +03:00
Alexey Milovidov
d91471ea00 Merge branch 'master' into stack-frams-size-limit 2020-08-04 15:28:47 +03:00
zhang2014
c99da34039 ISSUES-4006 try fix unit test failure 2020-08-04 19:09:30 +08:00
Azat Khuzhin
d28c4c4a6c Merge remote-tracking branch 'upstream/master' into roundUpToPowerOfTwoOrZero-safety
* upstream/master:
  fix left asof join with join_use_nulls (#13291)
  Revert "Add QueryTimeMicroseconds, SelectQueryTimeMicroseconds and InsertQuer…"
  Add test
  Added another check just in case
  Fixup
  Fix range checks in h3 functions
  Fix configs
  Update tests
  Check ALTERs; update test
  Sanity checks for MergeTreeSettings
2020-08-04 09:29:46 +03:00
zhang2014
da2ad0799f ISSUES-4006 try fix build failure after merge master 2020-08-04 10:31:27 +08:00
zhang2014
7ea2eee98a ISSUES-4006 add some check & add comment 2020-08-04 10:31:27 +08:00
zhang2014
c173bd391f ISSUES-4006 try fix build & test failure 2020-08-04 10:31:27 +08:00
zhang2014
6b452cf83d ISSUES-4006 try fix build failure & fix float 32 parser 2020-08-04 10:31:27 +08:00
zhang2014
74f354d840 ISSUES-4006 add some check before create materialize mysql database 2020-08-04 10:31:27 +08:00
zhang2014
4e161bb42a ISSUES-4006 remove unused metric 2020-08-04 10:31:26 +08:00
zhang2014
4a99ca0d80 ISSUES-4006 refactor 2020-08-04 10:31:25 +08:00
Alexey Milovidov
05bfb70c7a Addition to Revert "Less indirection in FixedHashTable" 2020-08-04 01:40:55 +03:00
Alexey Milovidov
a7e5feb8b4 Added another method 2020-08-04 01:40:55 +03:00
Alexey Milovidov
d94717c699 Add one more method to the test 2020-08-04 01:40:55 +03:00
alexey-milovidov
4d5ba3571b Update average.cpp 2020-08-04 01:40:55 +03:00
Alexey Milovidov
f428c2da70 Add a test 2020-08-04 01:40:55 +03:00