Alexey Milovidov
2ad5dbdfe8
Rename "common" to "base"
2021-10-02 11:30:38 +03:00
Alexey Milovidov
fe6b7c77c7
Rename "common" to "base"
2021-10-02 10:13:14 +03:00
Azat Khuzhin
cab0551c5b
Add ability to compile using newer version fo glibc w/o using new symbols
...
In glibc 2.32 new version of some symbols had been added [1]:
$ nm -D clickhouse | fgrep -e @GLIBC_2.32
U pthread_getattr_np@GLIBC_2.32
U pthread_sigmask@GLIBC_2.32
[1]: https://www.spinics.net/lists/fedora-devel/msg273044.html
Right now ubuntu 20.04 is used as official image for building
ClickHouse, however once it will be switched someone may not be happy
with that fact that he/she cannot use official binaries anymore because
they have glibc < 2.32.
To avoid this dependency, let's force previous version of those
symbols from glibc.
Note, that I've tested this by compiling with glibc 2.32 and verifying
that output ELF does not have @GLIBC_2.32 symbols and also running that
binary inside ubuntu:20.04 image (that has glibc 2.31).
v1: -Wl,--wrap
v2: -Wl,--defsym
v3: -include
v4: fix versioning for aarch64
2021-10-01 21:01:59 +03:00
Mike Kot
e8625e85a4
Fixing integration tests
2021-10-01 19:13:14 +02:00
Mike Kot
38b02b121a
Merge remote-tracking branch 'upstream/master' into improvement/fn-traits
2021-10-01 16:55:28 +02:00
Mike Kot
5e560ff9d7
fix
2021-10-01 16:55:01 +02:00
Anton Popov
515cc74530
generalize code in IColumn::updatePermutation
2021-10-01 00:11:54 +03:00
Azat Khuzhin
a4f2663b82
Log queries to external databases (since they may be rewriten)
...
By rewritten means that some expression from WHERE can be removed, yes
there is external_table_strict_query, but sometimes it is too strict.
2021-09-29 21:56:28 +03:00
Mike Kot
7670ea50c1
Replacing std::function to Fn in some places
...
to avoid dynamic allocating while keeping desired function signature
clear.
Simplifying SimpleCache (CachedFn) using C++20
2021-09-29 13:09:39 +02:00
Alexey Milovidov
cd7f9d981c
Remove ya.make
2021-09-25 04:22:54 +03:00
Alexey Milovidov
894f4908fa
Add comments
2021-09-19 22:26:16 +03:00
Alexey Milovidov
86f38283ff
Merge branch 'master' into better-memequal
2021-09-19 21:54:15 +03:00
alexey-milovidov
20d8523a2e
Merge pull request #28888 from azat/mysql-in-fix
...
Fix queries to external databases (i.e. MySQL) with multiple columns in IN ( i.e. `(k,v) IN ((1, 2))` )
2021-09-18 15:53:40 +03:00
alexey-milovidov
c4b3add859
Update Query.cpp
2021-09-18 15:46:48 +03:00
Maksim Kita
7c748b6140
Merge pull request #27963 from zhanglistar/overflow_bugfix
...
Overflow bugfix
2021-09-15 23:31:43 +03:00
Sergei Semin
12e24a23d3
Merge branch 'master' into fix-build-clang-13-2
2021-09-12 19:30:55 +03:00
alexey-milovidov
ea13a8b562
Merge pull request #28659 from myrrc/improvement/tostring_to_magic_enum
...
Improving CH type system with concepts
2021-09-12 15:26:29 +03:00
Sergei Semin
f74350c148
fix special build
2021-09-12 02:49:31 +03:00
Mike Kot
3401b32e37
Adapted usage of is_decimal concept
2021-09-11 19:35:12 +02:00
Azat Khuzhin
c77c4e22ae
Add MySQL query into after transformation in case of BadQuery
...
Since it may differs from the user input
2021-09-11 14:06:19 +03:00
mergify[bot]
5db3ba7414
Merge branch 'master' into better-memequal
2021-09-11 02:54:07 +00:00
Mike Kot
bce011cb33
Replacing IsDecimalNumber
2021-09-11 00:40:18 +02:00
Mike Kot
c4385a2c40
Simplifying exception messages
2021-09-11 00:40:18 +02:00
Sergei Semin
baa7253677
fix -Wreserved-identifier in base/daemon/BaseDaemon.cpp
2021-09-10 11:41:49 +03:00
Sergei Semin
61d46c09ee
fix problem with phdr_cache.cpp (second try)
2021-09-09 23:51:47 +03:00
Sergei Semin
ecff16de48
ignore diagnostic -Wreserved-identifier in file base/common/unit.h
2021-09-09 23:51:47 +03:00
Sergei Semin
39929e52bd
add ignore of -Wreserved-identifier into LineReader.cpp, ThreadFuzzer.cpp, ReadBufferFromFileDescriptor.cpp
2021-09-09 23:51:47 +03:00
Sergei Semin
a46d23fa79
ignore reserved-macro-identifier when building lib mysqlxx
2021-09-09 23:51:47 +03:00
Sergei Semin
a7b2867d3d
fix reserved-identifier in readpassphrase.c
2021-09-09 23:51:47 +03:00
Sergei Semin
338020e8ed
rename __lsan_ignore_object --> lsan_ignore_object in phdr_cache.cpp
2021-09-09 23:51:47 +03:00
Alexey Milovidov
81975a00fe
Better memequal implementation
2021-09-09 05:42:13 +03:00
Alexey Milovidov
0e8b4e608b
Better memequal implementation
2021-09-09 05:38:48 +03:00
Dmitrii Kovalkov
b073d5a4b4
Default argument for Pool.get()
2021-09-08 13:11:38 +03:00
Maksim Kita
7a4a0b0ede
Merge pull request #28474 from azat/mysql-connection_no_block
...
Introduce connection_wait_timeout for MySQL engine.
2021-09-07 12:28:02 +03:00
Mike Kot
8e9aacadd1
Initial: replacing hardcoded toString for enums with magic_enum
2021-09-06 16:24:03 +02:00
alesapin
497c225203
Test log level for CI
2021-09-03 13:07:40 +03:00
Azat Khuzhin
ed70ed6f71
Introduce connection_no_wait setting for MySQL engine.
...
This will allow to avoid superfluous sleep during query execution, since
this not only not desired behavoiur, but also may hang the server, since
if you will execute enough queries that will use MySQL database but will
not allow enough connections (or your MySQL server is too slow) then you
may run out of threads in the global thread pool.
Also note that right now it is possible to get deadlock when the mysql
pool is full, consider the following scenario:
- you have m1 and m2 mysql tables
- you have q1 and q2 queries, bot queries join m1 and m2
- q1 allocated connection for m1 but cannot allocate connection for m2
- q2 allocated connection for m2 but cannot allocate connection for m1
- but to resolve the lock one should give up on the locking while it is not possible right now...
And then you got no free threads and this:
# grep -h ^202 /proc/$(pgrep clickhouse-serv)/task/*/syscall | cut -d' ' -f2 | sort | uniq -c | sort -nr | head
1554 0x7ffb60b92fe8 # mutex in mysqlxx::PoolWithFailover::get
1375 0x7ffb9f1c4748 # mutex in ::PoolEntryHelper::~PoolEntryHelper from DB::MultiplexedConnections::invalidateReplica
1160 0x7ffb612918b8 # mutex in mysqlxx::PoolWithFailover::get
42 0x7ffb9f057984 # mutex in ThreadPoolImpl<std::__1::thread>::worker
*NOTE: 202 is a `futex` with WAIT*
(Went with `syscall` because debugging 10k+ threads is not easy, and
eventually it may TRAP)
2021-09-02 22:23:37 +03:00
Maksim Kita
e5ee3752ef
BorrowedObjectPool fix style
2021-09-02 16:18:10 +03:00
tavplubix
c36fe210b8
Revert "Add test for #13398 "
2021-08-27 21:07:10 +03:00
Kruglov Pavel
5bc332c40c
Merge pull request #28054 from kssenii/mysql
...
Add test for #13398
2021-08-26 16:39:43 +03:00
alexey-milovidov
c6f40c5c2d
Revert "Revert "less sys calls #2 : make vdso work again""
2021-08-25 14:19:20 +03:00
kssenii
0d5000f917
Merge branch 'master' of https://github.com/ClickHouse/ClickHouse into mysql
2021-08-24 07:30:42 +00:00
kssenii
962f415740
Add test and settings
2021-08-23 22:18:04 +00:00
Vitaly Baranov
c1177ee562
Support implicit cast std::pair<UInt64, UInt64> to UInt128.
2021-08-23 23:41:45 +03:00
Vitaly Baranov
9a5eeb5d41
Add utility function insertAtEnd().
2021-08-23 23:41:45 +03:00
Vladimir C
bce6d092ea
Merge pull request #27858 from ianton-ru/MDB-14264
...
Use Multipart copy upload for large S3 objects
2021-08-23 11:32:19 +03:00
listar
b4a33ce001
1. fix oveflow bug
2021-08-21 19:08:34 +00:00
vdimir
e77ff2740a
Add common/unit.h
2021-08-20 13:57:05 +03:00
tavplubix
9ef45d92c2
Merge pull request #27755 from ClickHouse/ncb/server_uuid
...
Merging #20089
2021-08-19 14:59:18 +03:00
alexey-milovidov
8f280c9ccb
Merge pull request #27829 from ClickHouse/revert-27492-less_clock_gettime2
...
Revert "less sys calls #2 : make vdso work again"
2021-08-19 12:50:50 +03:00
alexey-milovidov
3db3b40b5e
Revert "less sys calls #2 : make vdso work again"
2021-08-19 01:38:12 +03:00
Alexander Tokmakov
31d75c9c38
fix split build
2021-08-18 15:15:31 +03:00
Sergei Semin
da3f5612ae
rename _Bits -> _bits
2021-08-17 23:08:17 +03:00
Alexander Tokmakov
df1a4e90a8
Merge branch 'master' into ncb/server_uuid
2021-08-17 19:42:47 +03:00
Alexander Tokmakov
4d71f65082
fix build
2021-08-17 16:24:14 +03:00
Alexander Tokmakov
9e9fa043ca
minor improvements, add test
2021-08-16 21:30:53 +03:00
Alexey Milovidov
9a4a8d3943
Fix build with clang-13
2021-08-16 03:16:45 +03:00
Alexey Milovidov
f063e44131
Whitespaces
2021-08-15 09:00:28 +03:00
alexey-milovidov
fe356a716e
Merge pull request #27492 from filimonov/less_clock_gettime2
...
less sys calls #2 : make vdso work again
2021-08-13 03:13:11 +03:00
Vitaly Baranov
213e6366c2
Update getauxval.c
2021-08-12 13:44:09 +03:00
Vitaly Baranov
3d9a4adfbf
Better handling case when __environ is null
2021-08-12 13:43:06 +03:00
Maksim Kita
34682c98c7
Merge pull request #27605 from Enmk/fix_27193_toDateTime64_conversion
...
Fixed parsing DateTime64 value from string.
2021-08-12 13:32:59 +03:00
Vitaly Baranov
9243e89150
Update getauxval.c
2021-08-12 12:10:37 +03:00
Vitaly Baranov
242d8e1861
__auxv_init lazy initialization
2021-08-12 11:06:12 +02:00
Mikhail Filimonov
2c01e2789a
make vdso work again
2021-08-12 11:06:06 +02:00
Vasily Nemkov
bdc4d9fe75
Fixed parsing DateTime64 value from string.
...
The time offset undeflowed on positive values.
2021-08-12 10:37:46 +03:00
Raúl Marín
8bae14acb1
Separate minute intervals
...
Instead of mixing multiple rounding, use toStartOfMinuteInterval for all
minute related calculations
2021-08-10 17:01:56 +02:00
Raúl Marín
ede5369265
Revert toMinute changes and add additional roundDown fastpath
2021-08-10 12:55:49 +02:00
Raúl Marín
0771329bf3
Improvements based on review
2021-08-09 16:16:17 +02:00
Raúl Marín
367b314df6
Linter
2021-08-09 15:45:51 +02:00
Raúl Marín
5921f0cc82
Make gcc happy
2021-08-09 15:45:51 +02:00
Raúl Marín
abeaf60e4a
Improve compatibility with non-whole-minute timezone offsets
2021-08-09 15:45:51 +02:00
Alexey Milovidov
7fa700de00
Merge branch 'master' into roaring-memory-tracker
2021-08-05 22:17:10 +03:00
alexey-milovidov
44441535ff
Update BaseDaemon.cpp
2021-07-30 09:21:03 +03:00
Nikolai Kochetov
3d029e66fe
Update BaseDaemon.cpp
2021-07-29 17:00:33 +03:00
Nikolai Kochetov
3b8cb7e4bf
Print trace from std::terminate exception line-by-line to make it grep easier.
2021-07-29 15:49:31 +03:00
Vitaly Baranov
19d5a6ab2f
Merge pull request #26714 from vitlibar/new-function-current-profiles
...
New functions currentProfiles(), enabledProfiles(), defaultProfiles().
2021-07-23 09:10:29 +03:00
Vitaly Baranov
7afcc65060
Add new functions currentProfiles(), enabledProfiles(), defaultProfiles().
2021-07-22 22:20:53 +03:00
Alexey Milovidov
2df3e14559
Attempt to add memory tracking to RoaringBitmaps
2021-07-22 02:56:17 +03:00
Azat Khuzhin
cfc79d9146
Fix history file conversion if file is empty
2021-07-20 21:00:53 +03:00
kssenii
3ba2d114d5
Revert "Merge pull request #26352 from ClickHouse/revert-25774-datatype-date32"
...
This reverts commit 94a210650f
, reversing
changes made to 0893b9ff8e
.
2021-07-15 11:41:52 +00:00
alexey-milovidov
9ba4064c86
Revert "Datatype Date32, support range 1925 to 2283"
2021-07-15 10:53:35 +03:00
neng.liu
dfe05ca583
fix test error
2021-07-11 06:14:03 -07:00
neng.liu
4669839fbb
add comment and update ya.make
2021-07-11 04:55:42 -07:00
NengLiu
78f0bb9e24
add type cast
2021-07-09 15:28:44 +08:00
NengLiu
1d7d973dea
change addWeeks delta's datatype from Int64 to Int32
2021-07-09 11:42:32 +08:00
NengLiu
e172ca240b
change addQuarter delta's datatype from Int64 to Int32
2021-07-09 11:35:12 +08:00
neng.liu
e47aadfdef
Merge branch 'datatype-date32' of https://github.com/liuneng1994/ClickHouse into datatype-date32
2021-07-08 00:09:48 -07:00
neng.liu
100d30a5ba
fix pr comment
2021-07-08 00:06:36 -07:00
NengLiu
8b88988618
Merge branch 'master' into datatype-date32
...
# Conflicts:
# src/DataStreams/PostgreSQLBlockInputStream.cpp
2021-07-05 10:18:38 +08:00
NengLiu
dc0c65ef4f
Merge remote-tracking branch 'origin/master' into datatype-date32
2021-07-05 10:15:08 +08:00
alexey-milovidov
fef7c557f6
Merge pull request #24789 from kitaisreal/compile-aggregation-functions
...
Compile aggregate functions
2021-07-05 02:57:49 +03:00
Maksim Kita
55220d49f9
Fixed code review issues
2021-07-03 16:29:32 +03:00
feng lv
1d332da0ed
fix special build on clang 11
2021-07-02 05:51:53 +00:00
alexey-milovidov
24759a9b67
Update ReplxxLineReader.cpp
2021-07-02 04:26:49 +03:00
alexey-milovidov
a41a1b7c74
Update ReplxxLineReader.cpp
2021-07-02 04:25:07 +03:00
Maksim Kita
9b71b1040a
Aggregate functions update compile interface
2021-07-01 22:56:35 +03:00
Maksim Kita
3fe559b31f
Compile aggregate functions
2021-07-01 22:56:35 +03:00
Azat Khuzhin
626f47e044
Convert history file from readline format to replxx format
...
replxx requires each history line to prepended with time line:
### YYYY-MM-DD HH:MM:SS.SSS
select 1
And w/o those service lines it will load all lines from history file as
one history line for suggestion. And if there are lots of lines in file it
will take lots of time (getline() + tons of reallocations).
2021-06-30 22:06:16 +03:00
NengLiu
00377e7c9b
fix style error
2021-06-30 17:29:13 +08:00
Alexey Milovidov
d611297a7f
Add comment
2021-06-29 02:19:09 +03:00
Alexey Milovidov
f4f85a387d
Fix DateLUT on Darwin
2021-06-29 02:16:19 +03:00
neng.liu
ec7604b013
add parquet test and fix add interval error when type is date32
2021-06-28 16:36:54 +08:00
Ivan
14e43cfafa
Add CI check for darwin-aarch64 ( #25560 )
...
* Add support for darwin-aarch64
* Fix PVS warnings
* Add build configuration
* Fix packager args
2021-06-25 18:21:56 +03:00
Neng Liu
aadc2af5cb
add some functional test
2021-06-22 19:10:56 +08:00
Neng Liu
7ed1728a37
Merge branch 'master' into datatype-date32
...
# Conflicts:
# src/DataTypes/IDataType.h
# src/Functions/CustomWeekTransforms.h
2021-06-22 10:00:18 +08:00
Evgeniy Gatov
2487063be3
METR-41529
2021-06-21 22:31:42 +03:00
Azat Khuzhin
4dcbf3a5c5
Replace __pthread_get_minstack() with a const
2021-06-20 14:03:04 +03:00
Azat Khuzhin
0286673f8f
Fix __pthread_get_minstack()
...
This is the function that should take into account TLS block, and 1MB is
too high, since it will be used for sigaltstack() on SIGSEGV
v0: copy-paste glibc __pthread_get_minstack()
v2: return static 16K instead of 1MB
2021-06-19 21:27:02 +03:00
alexey-milovidov
48980b9c31
Merge pull request #25279 from ClickHouse/fix-wide-int-ub
...
Fix incorrect behaviour and UBSan report in big integers.
2021-06-17 01:35:48 +03:00
Maksim Kita
67e9b85951
Merge ext into common
2021-06-16 23:28:41 +03:00
Kseniia Sumarokova
b4840bc4a9
Merge pull request #25280 from kssenii/bridges-constraints
...
Privilege drop and resource constraints for bridge processes
2021-06-16 22:13:16 +03:00
Maksim Kita
67884ec50c
SimpleCache key constructor improvement
2021-06-16 01:40:16 +03:00
Alexey Milovidov
c41b58b148
Fix UBSan report
2021-06-15 06:52:49 +03:00
kssenii
b152d7589f
Bridge contsraints
2021-06-15 01:01:10 +00:00
Alexey Milovidov
3ee26c822d
Remove unused function
2021-06-15 03:30:01 +03:00
Alexey Milovidov
6eb06d84d4
Fix decomposed float
2021-06-15 03:29:44 +03:00
Alexey Milovidov
c5181cf897
Fix wrong code in wide_int
2021-06-15 03:29:20 +03:00
Alexey Milovidov
6738774722
Minor change
2021-06-13 21:54:55 +03:00
alexey-milovidov
a2c6b98b94
Merge pull request #25146 from oxidecomputer/master
...
Adds a better way to include binary resources
2021-06-13 16:13:34 +03:00
Benjamin Naecker
f5cf9adc66
Removes unused CMake variable and fixes clang-tidy lint
2021-06-11 14:35:40 -07:00
Benjamin Naecker
e4e0bd557a
Style fix
2021-06-09 15:53:56 -07:00
Benjamin Naecker
c3506bf16d
Adds a better way to include binary resources
...
- Uses a small assembly file to include binary resources, rather than
objcopy
- Updates `base/common/getResource.cpp` for this new method of inclusion
- Removes linux-only guards in CMake files, as this solution is
cross-platform.
The resulting binary resources are available in the ClickHouse server
binary on Linux, macOS, and illumos platforms. FreeBSD has not been
tested, but will likely work as well.
2021-06-09 14:03:30 -07:00
Neng Liu
88a0d0be62
add datetype32 part2
2021-06-08 20:31:41 +08:00
neng.liu
120da1fd73
date32 initial code
2021-06-07 06:41:58 -07:00
Azat Khuzhin
c65ae8ac31
Do not check writeRetry errors in OwnSplitChannel
...
Should fix PVS warning:
"There are identical sub-expressions '!writeRetry(2, "\n")' to the left and to the right of the '||' operator."
2021-06-07 09:40:29 +03:00
Azat Khuzhin
3d9218dbfa
Use writeRetry in case of exception during writing to the log
2021-06-07 09:38:15 +03:00
Azat Khuzhin
b9c869871b
Block memory tracking during catching exceptions in OwnSplitChannel
2021-06-07 09:38:15 +03:00
Azat Khuzhin
89a4d886bf
Suppress exceptions from logger code
...
Some code does not expect from the logger code to throw, and this can
lead to the problems like:
- marking distributed batch as broken (in
StorageDistributedDirectoryMonitor)
- some MergeTree code may also be affected.
So instead of throwing the exception, it will be logged to the stderr
(if it is possible).
2021-06-07 09:38:15 +03:00
kssenii
2a631aaf08
Final fixes
2021-05-29 00:34:44 +03:00
kssenii
f66c67a979
Fixes
2021-05-27 15:42:46 +03:00
kssenii
31107816bb
fs::absolute to fs::canonical
2021-05-24 20:37:54 +03:00
kssenii
866b29fb5a
Return list fds with Poco, more canonical
2021-05-23 10:56:13 +03:00
kssenii
1c43b333ea
Merge branch 'master' of github.com:ClickHouse/ClickHouse into poco-file-to-std-fs
2021-05-22 21:26:48 +03:00
kssenii
8bac10d24f
Update base/*
2021-05-22 21:24:13 +03:00
Vitaly Baranov
b89da7b420
Merge pull request #21858 from BoloniniD/yaml-cfg
...
YAML Configuration for ClickHouse
2021-05-22 10:29:51 +03:00
BoloniniD
33755f1f3d
Implemented YAMLParser class
2021-05-21 21:56:22 +03:00
Azat Khuzhin
4f41ebcae3
Add settings (for connections) for MySQL storage engine
...
Default settings are not very efficient, since they do not even reuse
connections.
And when each query requires connection you can have only ~80 QPS, while
by simply enabling connection reuse (connection_auto_close=false) you
can have ~500 QPS (and by increasing connection_pool_size you can have
better QPS throughput).
So this patch allows to pass through some connection related settings
for the StorageMySQL engine, like:
- connection_pool_size=16
- connection_max_tries=3
- connection_auto_close=true
v2: remove connection_pool_default_size
v3: remove num_tries_on_connection_loss
2021-05-20 22:44:52 +03:00
alesapin
83627de2b8
Merge branch 'master' into standalone_keeper
2021-05-15 17:15:06 +03:00
Kruglov Pavel
7b26483080
Rename param
2021-05-13 16:37:44 +03:00
Kruglov Pavel
fb17078af3
Merge branch 'master' into filimonov-logger-levels
2021-05-13 16:10:01 +03:00
alesapin
41eadf9127
Something working
2021-05-12 16:04:34 +03:00
Alexey Milovidov
9753ddc8a0
Merge branch 'master' of github.com:yandex/ClickHouse into normalize-bigint
2021-05-09 18:54:29 +03:00
Alexey Milovidov
3b2f897f3a
Fix UBSan
2021-05-09 02:25:36 +03:00
Alexey Milovidov
037d06bb2a
Fix warnings by PVS-Studio
2021-05-08 23:50:12 +03:00
Alexey Milovidov
0af587a346
Fix warnings by PVS-Studio in some third-party code
2021-05-08 22:31:11 +03:00
Alexey Milovidov
604daa9581
Fix a bunch of warnings from PVS-Studio
2021-05-08 19:09:17 +03:00
Alexey Milovidov
9e1a5f41fc
A bunch of changes for PVS-Studio
2021-05-08 17:43:03 +03:00
Alexey Milovidov
e9c7aa5ab5
Remove some code
2021-05-08 17:12:26 +03:00
divanorama
b6ea00cf29
Update glibc_compatibility check: ARCH_ARM -> ARCH_AARCH64
2021-05-08 14:24:04 +02:00