Commit Graph

45 Commits

Author SHA1 Message Date
Haavard Kvaalen
efa94c5735 Fix use after free in mysqlxx::Pool::tryGet()
tryGet() created an Entry object that referenced a Connection, but then
deleted the Connection just before the Entry went out of scope.
2021-03-04 16:51:27 +01:00
Alexander Kazakov
63b95c7451
MySQL dictionary source: A mechanism for retrying unexpected connection loss during communication with mysql server (#21237)
* Added a new type of Exception

for better recognition of connection failures

* Added more logging for mysql communication

* Retries on connection loss during query.

Make MySQL dictionary source resilient to unexpected loss of connection
during querying MySQL. This behavior is controlled with
".fail_on_connection_loss" config parameter, which defaults to false.

* Stripped some debugging leftover garbage

* Minor followup corrections

* Corrections after PR comments

* Yet more fixes
2021-02-27 11:18:28 +03:00
Alexander Kazakov
66f603512c
A followup correction to #19998 (#21221) 2021-02-26 11:42:37 +03:00
Alexander Kazakov
4bcaed98d8
Added "opt_reconnect" parameter to config for controlling MYSQL_OPT_RECONNECT option (#19998)
* Support for MYSQL_OPT_RECONNECT option

It can now be controlled by .opt_reconnect = {true|false} parameter in
the mysql replica config section
2021-02-26 09:49:49 +03:00
Alexander Kazakov
196d454114 Initialize random engine with clock and thread_id
Thread-safe and fairly descent approach in our case
2021-02-24 14:55:16 +03:00
Alexander Kazakov
deb566a40b Resorted from std::random_device to std::rand() 2021-02-24 11:48:04 +03:00
Alexander Kazakov
0296d7d026 Added some explanations on randomization 2021-02-17 21:51:05 +03:00
Alexander Kazakov
acb5fb8179 Randomly shuffle replicas withing the same priority 2021-02-17 20:58:04 +03:00
Alexey Milovidov
940b337eec Remove useless files 2021-02-03 10:03:32 +03:00
Alexey Milovidov
f8592f4539 Remove useless files 2021-02-03 10:03:13 +03:00
Alexey Milovidov
12485eee6b Fix some of the issues found by Coverity 2021-02-02 22:07:23 +03:00
Alexey Milovidov
f7fffe173c Set charset to utf8mb4 in mariadb-connector 2021-01-29 10:57:22 +03:00
tavplubix
f13de96afc
Merge pull request #17366 from zhang2014/fix/ISSUES-16835
ISSUES-16835 try fix miss match header with MySQL SHOW statement
2020-12-09 23:12:47 +03:00
zhang2014
2f735aa61d ISSUES-16835 try fix review comment 2020-12-09 16:19:09 +08:00
Alexander Kazakov
0e41af11c7
Fixed typo in message format (#17900) 2020-12-08 14:28:35 +03:00
Winter Zhang
972cb41fae
Merge branch 'master' into fix/ISSUES-16835 2020-12-08 15:32:58 +08:00
Alexander Kazakov
81d9d3237f
In mysqlxx::Pool: fix for reconnection problem (#17681)
Remove stalled unrecoverable connections from myqsl connections pool
2020-12-03 23:36:10 +03:00
zhang2014
a74235397e ISSUES-16835 try fix miss match header with MySQL SHOW statement 2020-11-24 23:31:43 +08:00
alesapin
16fa71a4c9 Missed comment 2020-10-08 20:46:59 +03:00
alesapin
70f2a3328d Better atomic operations on refcount 2020-10-08 20:45:18 +03:00
alesapin
de722cd57c Fix race condition in MySQL pool 2020-10-08 18:50:09 +03:00
Vasily Nemkov
3973a17530
MySql datatypes dateTime64 and decimal (#11512) 2020-09-09 15:18:02 +03:00
Yatsishin Ilya
a47ffd191d Change my_bool to bool.
The my_bool type no longer exists, and people may have been using it in their own code since some mysql.h functions have been returning that. The recommended fix is to use bool or int, which will work both in 8.0 and older versions.

https://bugs.mysql.com/bug.php?id=85131
2020-08-28 11:59:50 +03:00
Konstantin Podshumok
ef858027d4
unbundled: fix detection of mariadb headers
Squashed:
- unbundled: add warning about mariadbclient dependencies

Signed-off-by: Konstantin Podshumok <kpp.live+signed@gmail.com>
2020-08-25 20:16:42 +03:00
Alexey Milovidov
0cbbe153cd Fix typos, the last 1% 2020-08-08 04:21:04 +03:00
Ivan
47ad338cb2
Refactor CMake build files (#11390)
* Get rid of lib_name.cmake
* Refactor Boost and HyperScan libraries
* Refactor lz4
* Fix build with xxHash
2020-06-09 13:54:49 +03:00
Alexey Milovidov
45b65a462e Better code 2020-05-10 02:33:11 +03:00
Alexey Milovidov
715b6f3617 Better code 2020-05-10 02:31:44 +03:00
Alexey Milovidov
a576a4fbcd Enable extra warnings for base, utils, programs 2020-05-10 01:59:34 +03:00
Ivan
85d783c247
Poco contrib refactoring (#10396)
* Remove config_common.h
* Refactor libcpuid contrib
* Remove support for libcpuinfo
* Define USE_CPUID in Arcadia
* Refactor Poco libraries
2020-05-08 17:11:19 +03:00
alexey-milovidov
c7863e1ac6
Clang Tidy, part 7 (#9799)
* Attempt to enable identifier naming check

* Attempt to enable identifier naming check, continue

* Progress on identifier names

* Adopt identifier names check

* Fixed error

* Merge with master

* Fixed build

* Fixed build

* Fixed build

* Fixed build

* Fixed build

* Fixed error

* Fixed error

* Fixed error
2020-03-23 05:12:31 +03:00
Ivan
571d0d541c
Improve CCTZ contrib (#9687)
* common/Types.h → common/types.h
  Also split Core/Defines.h and merge with common/likely.h
* Improve cctz contrib
* Fix ALWAYS_INLINE and unbundled build
* Update Dockerfile from master
* Fix test for unbundled library
2020-03-19 13:38:34 +03:00
Ivan
b7ef5a699c
Move FastMemcpy to contribs (#9219)
* Get rid of non-existent vectorclass
* Move FastMemcpy to contribs
* Restore comments
* Disable FastMemcpy on non-Linux
* Fix cmake file
* Don't build FastMemcpy for ARM64
* Replace FastMemcpy submodule with its contents
* Fix cmake file
* Move widechar_width to contrib/
* Move sumbur to contrib/
* Move consistent-hashing to contrib/
* Fix UBSan tests
2020-03-13 01:26:16 +03:00
Alexey Milovidov
7334c13de9 clang-tidy, part 13 2020-03-09 04:50:33 +03:00
Alexey Milovidov
7a7e45e248 clang-tidy, part 1 2020-03-09 00:04:10 +03:00
Alexey Milovidov
c968e55da7 Miscellaneous #9409 2020-03-05 23:00:49 +03:00
Alexey Milovidov
5696806426 Translate a comment in mysqlxx #4904 2020-03-05 22:55:39 +03:00
Clément Rodriguez
3f82059536 Fixed some encoding style issues 2020-03-02 18:21:46 +01:00
Clément Rodriguez
491f454b54 MySQL connection mutualize connection + integration test 2020-02-27 10:34:06 +01:00
Clément Rodriguez
94d3802baa Merge branch 'master' of https://github.com/clemrodriguez/ClickHouse 2020-02-24 15:28:46 +01:00
Clément Rodriguez
a978662a01 Merge remote-tracking branch 'upstream/master' 2020-02-24 15:28:24 +01:00
Alexey Milovidov
e1b3c58746
More strict aliasing 2020-02-22 10:17:24 +08:00
Clément Rodriguez
1f275c965f Rebase with upstream/master 2020-02-20 16:32:05 +01:00
Clément Rodriguez
cdd99d7f23 Merge 2020-02-19 15:23:17 +01:00
Ivan Lezhankin
2d44fa59b5 libs/ → base/ 2020-02-14 17:48:30 +03:00