Commit Graph

58 Commits

Author SHA1 Message Date
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 070c2a7fe1
apply fmt && fix CI second try (#215)
Co-authored-by: reshke <Kirill Reshke>
2020-10-19 14:51:02 +05:00
reshke 57a9e84150 show errors per route 2020-09-03 14:04:28 +05:00
reshke 20e97cae09 drop steal users connections on restart 2020-09-02 11:49:14 +05:00
reshke 15adddf05a tcp connectios count per route 2020-09-01 12:38:49 +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
Islamov A 6d1728aa0e fix memory leaks in tests, fixed type overflow in random 2020-06-10 18:59:53 +05:00
lowgear 1d5d1b5c21
treat buffer respecting size (1) (#160) 2020-06-09 11:51:13 +05:00
Islamov A 62bfebfc1a copy new script to build directory 2020-06-04 19:24:42 +05:00
Islamov A 324e3bde46 only stop pg on test failed but keep artifacts 2020-06-04 19:17:57 +05:00
Islamov A 0cd37f0316 call teardown if setup or any test failed 2020-06-03 19:12:25 +05:00
Islamov A b77eab297e added odyssey to odyssey_test dependencies 2020-06-02 21:47:50 +05:00
Georgy Rylov b51317b254
t-digest for latencies (#147) 2020-05-28 11:12:10 +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 438e6ae1e7
Extended show pools (#135)
* Extended show pools

* Output time quantiles in SHOW POOLS EXTENDED

One important caveat is that quantiles itself will be taken from console database.
But if route does not have quantiles defined all stats will be zero.

* Change quantile refresh period
2020-03-18 10:12:53 +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 507682fdd5
Quantiles for transactions and queries (#95) 2020-01-24 17:31:15 +05:00
Andrey Borodin 59857936cd Fix ignoring of SIGPIPE 2019-12-18 14:32:36 +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
Dima Starkov 95f1740031 Add integration tests for SCRAM Authentication (#78)
* Add integration tests for SCRAM Authentication

* Made tests independent of the postgresql version
2019-11-24 21:00:00 +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 c6542d7003 odyssey: post merge fixes 2019-09-27 16:47:45 +03:00
Andrey Borodin 7681160dd1 Avoid private inclusion (fix #67) 2019-08-23 09:45:35 +05:00
Dmitry Simonenko 1dc7f58c73 odyssey: fix warning and misc fixes 2019-08-08 17:39:13 +03:00
Andrey Borodin 13bd4f1998 Fix slow test 2019-07-31 14:56:45 +05:00
Andrey Borodin 4619365642 Use milliseconds for test measurements 2019-07-31 14:48:28 +05:00
Andrey Borodin 52fc083a30 Measure test time 2019-07-31 14:40:04 +05:00
Andrey Borodin 770e242e72 Add few sleeplock test 2019-07-31 14:17:46 +05:00
Dmitry Simonenko af015839b0 machinarium: fix readers race in fast_channel implementation 2019-03-12 19:39:46 +03:00
Dmitry Simonenko 6c0a1f09f8 odyssey: major rework of io architecture
This patch intend is to improve overall io performance, reduce
cpu and system usage.

Machinarium:

IO read/write logic is highly simplified and now based on conditions
instead of previously made internal readahead buffer and msg
queues. This allows to give user more control over io operations and
avoid doing undesired readahead copying.

Above that, TLS implementation reworked to use async logic instead of
separate BIO layer.

Direct pooling functions removed.

New objects machine_cond_t and machine_iov_t objects.

Odyssey:

Introduced readahead, io and relay objects.

Relay allows to connect two io handles for direct data retransmission
without double copying.

Removed configuration options no longer needed:
packet_read_size, packet_write_queue
2019-01-23 18:43:52 +03:00
Dmitry Simonenko c4f383ccfb odyssey: introduce pool_discard configuration parameter 2018-12-11 12:57:52 +03:00
Dmitry Simonenko c61c1e81f7 machinarium: rework msg_cache/coroutine_cache per machine thread 2018-11-19 17:52:37 +03:00
Dmitry Simonenko 14d4a7f478 odyssey: add cache_msg_gc_size option and disable default caching 2018-09-26 18:18:17 +03:00
Dmitry Simonenko 366f9b5312 odyssey: fix machinarium stat tests 2018-09-05 16:08:29 +03:00
Dmitry Simonenko 5e1e96987c odyssey: update stat tests 2018-08-30 17:24:07 +03:00
Dmitry Simonenko 82e6c1a7a6 odyssey: remove shapito library 2018-08-23 16:24:07 +03:00
Dmitry Simonenko c84fde8da7 odyssey: update tests 2018-08-23 15:16:21 +03:00
Dmitry Simonenko c4e06c165c odyssey: major tests upgrade for new machinarium io api 2018-08-23 12:29:19 +03:00
Dmitry Simonenko f77d7ccf02 odyssey: set nodelay for tls_read_var test 2018-08-15 14:57:32 +03:00
Dmitry Simonenko ef5fd84fb8 machinarium: implement machine_eventfd() 2018-07-17 17:22:09 +03:00
Dmitry Simonenko d614f87109 machinarium: add unix sockets tests (+ tls) 2018-06-28 15:26:36 +03:00
Dmitry Simonenko 4759630e2e odyssey: make -Wgnu-folding-constant happy 2018-06-13 18:56:59 +03:00
Dmitry Simonenko b8008653c3 odyssey: set errno to zero before test run 2018-06-13 16:25:31 +03:00
elsid 281f50c205
Print errno and error message on test failure 2018-06-10 12:41:53 +03:00
Dmitry Simonenko f3d5fb7327 machinarium: send chunks in test_tls_read_multithread 2018-06-07 15:17:33 +03:00
Dmitry Simonenko 838aad609d machinarium: add multi-threaded tls read/write test 2018-06-07 15:11:30 +03:00