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
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
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
Andrey Borodin
b74b817564
Allow cert files reload
2020-07-08 20:16:51 +05:00
kirill reshke
66c1c63751
odyssey erros stats ( #187 )
2020-07-08 11:26:17 +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
efimkin
60d7229cdc
Enhance settings for replication support ( #107 )
2020-01-27 18:01:53 +05:00
Andrey
8496cde80a
Implement server_max_routing restriction
2020-01-23 11:35:47 +05:00
Andrey Borodin
298cdca895
Implement client_max_routing ( #72 )
2019-10-15 17:15:37 +03:00
Andrey Borodin
d5ba841106
Limit global max_clients before doing tls handshake
2019-10-11 13:33:28 +05:00
Dmitry Simonenko
6f018e48e5
odyssey: rework connection retry logic for too many connections case
2019-08-10 21:03:41 +03:00
Andrey Borodin
6a3c1f78f7
Implement router retry timeout
2019-06-27 17:24:44 +05:00
Andrey Borodin
76ec3581a1
Use pg_lrand48 for portability ( #48 )
2019-01-30 14:30:31 +05:00
Dmitry Simonenko
2e03af9c88
odyssey: major router and shared logic rework
...
Goal is to improve overall performance during massive peaks
of connecting clients.
This patch makes router a shared structure, instead of
being run in separate system worker thread/coroutine.
Now router and each route object is protected by
separate mutex. Worker threads directly access router object
without calls to separate thread.
2018-12-06 17:23:15 +03:00
Dmitry Simonenko
da7e6ea7a5
odyssey: major io rework and refactoring
...
This patch moves Odyssey from stream based write caching
to message driven. All write operations are delayed
and happen on a group of messages.
This removes necessity to do IO and wait for write completion during calls
from SSL_write() context. Write timings should behave more predictable now and
number of used syscalls should be also decreased.
This patch also simplifies caching management. All clients are simply
reusing cached messages without prolonged contention.
Several configuration options are no longer used:
pipeline, cache, cache_chunk
2018-08-28 17:43:46 +03:00
Dmitry Simonenko
5ca3fa926a
odyssey: update source file headers
2018-04-04 16:19:58 +03:00
Dmitry Simonenko
20a092098e
odyssey: remake system_t as global_t
2018-03-13 16:17:27 +03:00
Dmitry Simonenko
f108dcba09
odyssey: project rename
2018-03-12 17:03:15 +03:00
Dmitry Simonenko
a19f18cef1
odissey: rework router cancel logic
2018-02-22 16:43:52 +03:00
Dmitry Simonenko
17673c123a
odissey: rework internal services init logic
2018-02-02 15:50:23 +03:00
Dmitry Simonenko
981a4c6626
odissey: update to latest machinarium changes
2018-02-02 14:49:10 +03:00
Dmitry Simonenko
57f6df77c7
odissey: do retry in and separate frontend attach logic
2017-12-08 16:30:42 +03:00
Dmitry Simonenko
8283a2d665
odissey: update banners
2017-07-05 15:42:49 +03:00
Dmitry Simonenko
9e096b96b2
odissey: rework file naming and include path
2017-07-05 15:15:17 +03:00