Commit Graph

100 Commits

Author SHA1 Message Date
reshke f0ee140956
Fix memory leaks with system server shutdown, fix prepared statemnet memeory leak (#458)
Fix memory leaks with system server shutdown. 
Fix prepared statemnet memeory leak. 
Skip volatile param caching.
2022-08-23 18:39:43 +05:00
kirill reshke 42103a04b0
Add aarch64 support for machinarium context switch function (#446) 2022-07-25 12:50:55 +05:00
vadv 01ca5b345c
fix compression build (#441)
Co-authored-by: Dmitry Vasiliev <dmitrivasilyev@ozon.ru>
2022-06-23 12:30:10 +05:00
Firm 42663bb273
[#348] Add detailed descriptions for SSL_get_verify_result() errors. (#431)
* [#348] Add detailed descriptions for SSL_get_verify_result() errors.

* [#348] Fix formating in tls.c.
2022-03-30 17:10:16 +05:00
kirill reshke 8fcbabf518
Fix unnamed prepared statement polling (#416)
* Fix unnamed prepared statement polling

* Send on read signal if ssl readahead is not exhaused

* remote null byte from snprintf

Co-authored-by: Kirill Reshke <reshke@yandex-team.ru>
2022-02-14 21:37:45 +05:00
kirill reshke fade74703a
Reserve prep stmt (#397)
* Add typedef to enum declaration

* preserve prepared statement basics

* murmur hash impl

* Hash set and hash map

* Hash set and hash map

* Allow relay to rewrite packets

* Fixes

* tmp

* Fmt

* Rebase fixes

* Min working version

* Fix heap buffer overflow

* Add show server_prep_smtms command to console db

* Store prep stmts by body hash

* Fix deadlock in console show prep stmts

* Better discard

* CLeanup code

* Support for multiple override msgs

* Remove rewrite logic

* Config validation

* Fixes

* Fmt

* Deploy rewrited msgs only on sync state

* Fix memoty issues allocaltion

* Smart discard

* Fix asan

* Handle fronent close prepered statement msg

* Fix memory leak

* Fixes

* Tests

* Fix tests

* fix tests

* remove bin

* fix clang compiler warns

* Reduse matrix to 1 case, because it doesnt change anything, as tests runs inside docker
2022-01-18 14:08:15 +05:00
kirill reshke d215160b3a
Fix compiler warnings (#386) 2021-12-09 16:34:04 +05:00
kirill reshke ba6513323f
Add storage watchdog with standby lag polling support (#380)
* Move auth query server querying logic to separate file

* Refactor query code to support not only "auth_query" like queries

* Move storage logic to separate file & add storage watchdog

* Force several settings on starts

* Fix simple query parsing

* Fixed bugs

* Fix config reload

* Add tests

* Move cathcup logic to separate func

* Fix tests[2]

Co-authored-by: Andrey Borodin <amborodin@acm.org>
2021-12-08 15:54:43 +05:00
reshke 74623edfb5 LDAP auth in od 2021-04-28 17:54:56 +05:00
reshke a7870abee0 fmt 2021-03-16 16:11:13 +05:00
Andrey Borodin d0c3238cc4 Preformat query for backward compatibility and fix some misplaces ) 2021-03-16 10:59:14 +05:00
Andrey Borodin 3706f0eb2d Fix some warnings 2021-03-05 10:45:22 +05:00
kirill reshke f0fee5feea
using limited channel in async log worker (#285)
* using limited channel in async log worker

* fmt

Co-authored-by: reshke <Kirill Reshke>
2021-03-01 17:01:04 +05:00
kirill reshke b546551bb8
do not hold repilation connections while online restart + drop conn rate logic (#266)
* do not hold repilation connections while online restart

* drop connection wtih rate (no more that 1 per sec)

* fix review

* eject info per-server

* use per thread global state to smoothly eject old connection

Co-authored-by: reshke <Kirill Reshke>
2021-01-23 18:49:54 +05:00
kirill reshke 3a55be6e61
change formatting (#250)
Co-authored-by: reshke <Kirill Reshke>
2020-12-28 15:43:31 +05:00
kirill reshke fb3ce93f56
fix one more compiler warning (#238)
Co-authored-by: reshke <Kirill Reshke>
2020-11-30 17:33:45 +05:00
kirill reshke 89ef383056
fix build (#237)
Co-authored-by: reshke <Kirill Reshke>
2020-11-27 23:03:42 +05:00
kirill reshke dd52fbd83e
compiler hints + just make world a better place & formatting things (#236) 2020-11-25 15:17:15 +05:00
Daniil Zakhlystov e6781e8a4e
Rename OD_ escaping to MM_ && fix indentation for cmakelists (#235) 2020-11-23 18:57:56 +05:00
Daniil Zakhlystov e97f7e1f1c
Add compression toggle to config, cmake && Add dependencies to BuildDebian (#234)
* Add compression option to config

* Add BUILD_COMPRESSION option to cmake

* Escape identifiers

* Add preprocessing directives for OD_BUILD_COMPRESSION

* Add dependencies for BuildDebian

* apply fmt

Co-authored-by: root <root@ubuntu-build-machine.ru-central1.internal>
2020-11-23 16:55:42 +05:00
kirill reshke 785e85ab6f
Fix leaks and improve locking in cron (#229)
Also fix some warnings.
2020-11-23 14:13:28 +05:00
Daniil Zakhlystov 222da0c70a
Implement libpq compression (#230)
* Add zlib and zstd to cmake

* Add zpq_stream to machinarium

--
zpq_stream is used for streaming compression/decompression of Postgres protocol

* Add zpq_stream-related functions to machinarium

* Add compression set/free/read/write logic to machinarium

* Add startup packet compression var to kiwi

* Add compression_ack backend message support for kiwi

* Add compression setup logic for main odyssey project

* apply fmt

* fix format #2

Co-authored-by: root <root@ubuntu-build-machine.ru-central1.internal>
2020-11-23 13:22:17 +05:00
kirill reshke bc568250bf
odyssey tests with asan, little test refactor (#225)
* odyssey tests with asan

* better headers, rework test

Co-authored-by: reshke <Kirill Reshke>
2020-10-27 13:47:25 +05:00
kirill reshke a5f716025c
fix coveirty issues + remove legacy (#224)
* fix a couple of severity issues

* emove lagacy

* zero cost debug macros on release

* dbg macro fix

* apply fmt

Co-authored-by: reshke <Kirill Reshke>
2020-10-26 17:29:05 +05:00
kirill reshke 129ec0be83
fix scram, use postgresql 13 in build & tests (#223)
* fix scram, use postgresql 13 in build & tests

* move scram test inside docker

Co-authored-by: reshke <Kirill Reshke>
2020-10-26 10:00:17 +05:00
kirill reshke 7135f2f0c8
fix CI (#213)
Co-authored-by: reshke <Kirill Reshke>
2020-10-16 21:30:45 +05:00
reshke 52b0abb647 fix infinte loop + add signals tests 2020-08-10 13:39:09 +05:00
reshke f030093484 use SO_REUSEPORT to graceful shutdown 2020-08-10 13:39:09 +05:00
reshke bde82dec9b tcp keepalive settings 2020-07-22 13:05:16 +05:00
lowgear e9bed0c0cf
put void into arglist of functions if empty (#175)
* put void into arglist of functions if empty

* trigger CI recheck
2020-06-14 22:02:07 +05:00
Islamov A 6d1728aa0e fix memory leaks in tests, fixed type overflow in random 2020-06-10 18:59:53 +05:00
lowgear ea79d800d2
added style check to travis (#158)
* added style check to travis

* fixed style

* missing change

* check style first

* no excludes, use certain clang-format version

* install clang-format-9

* added submodule

* fix exclude
2020-06-04 22:35:44 +05:00
Georgy Rylov b51317b254
t-digest for latencies (#147) 2020-05-28 11:12:10 +05:00
Georgy Rylov 626067abb3
tsan: fix data race in sleeplock (#145) 2020-04-15 16:40:01 +05:00
Georgy Rylov c25c5bd050
Applying clang-format with saving indentations (#140)
* applying clang-format with saving indentations

* rebase
2020-04-02 16:00:56 +05:00
Andrey Borodin 6776e43134 Try to stop TLS handshakes on shutdown 2020-03-23 18:14:18 +05:00
Andrey Borodin c0d972e779 Fix multiple listeners 2020-02-24 15:18:35 +05:00
Andrey Borodin 79b737d1d9 Remove extroueous include 2020-02-24 15:18:35 +05:00
Andrey Borodin 553f176e99 Move contexts under mm_self 2020-02-24 15:18:35 +05:00
Andrey Borodin c4b7a3cc18 Use one tls cts per thread 2020-02-24 15:18:35 +05:00
Andrey Borodin b2d75b0b3c
Coverity scan results (#119)
A lot of small fixes for small bugs of various severity
2020-02-18 18:05:02 +05:00
Andrey Borodin 59857936cd Fix ignoring of SIGPIPE 2019-12-18 14:32:36 +05:00
Andrey Borodin 6705c040a0 Set SSL server session id 2019-12-04 15:21:50 +05:00
Andrey Borodin eb7299748d Implement login timeout 2019-12-02 18:28:39 +05:00
Andrey Borodin f43ac71d26 Optimize clocks 2019-12-02 18:19:44 +05:00
Andrey Borodin e053d76b16 Use only one TLS context per machine
Previously we recreated TLS context. This could cause extre files being
read during TLS handshake.
2019-11-11 10:31:52 +03:00
Dmitry Simonenko 76b64c7401 odyssey: minor fixes 2019-09-28 17:42:29 +03:00
Dmitry Simonenko c6542d7003 odyssey: post merge fixes 2019-09-27 16:47:45 +03:00
Dmitry Simonenko 2c1e05d5d6 machinarium: fix channel/event_mgr timeout race 2019-08-11 15:08:55 +03:00
Dmitry Simonenko d784c2ad19 odyssey: make restart read logic explicit in router attach 2019-06-13 11:55:01 +03:00