Quanah Gibson-Mount
073232bbc7
Happy New Year!
2024-03-26 19:45:07 +00:00
Ondřej Kuzník
923483ccea
ITS#9959 Track actual connection local/peername
2023-09-27 14:44:52 +00:00
Ondřej Kuzník
034225ff5c
ITS#9907 Some tools consider abandoned global data a leak
2022-09-15 17:33:39 +01:00
Ondřej Kuzník
333d61d7eb
ITS#9907 Plug shutdown related leaks in lloadd
2022-09-01 10:09:23 +01:00
Quanah Gibson-Mount
788e9592ba
Happy New Year!
2022-01-07 18:40:00 +00:00
Ondřej Kuzník
e9dfb7d21d
ITS#9600 Rework monitor entry management
...
Connection entries are now persistent and can be addressed, preparing
the ground so we can process modify operations on individual entries.
2021-08-13 10:57:14 +01:00
Ondřej Kuzník
84dab3f961
ITS#9599 Add bestof tier implementation
2021-08-13 10:57:14 +01:00
Ondřej Kuzník
ab90bfd95c
ITS#9599 Implement tiered load balancing
2021-08-13 10:57:14 +01:00
Ondřej Kuzník
ddc9430727
ITS#9598 Per OID restrictions
2021-08-13 10:57:14 +01:00
Ondřej Kuzník
0190f18b4c
ITS#9598 Introduce backend-restricted selection
2021-08-13 10:57:14 +01:00
Ondřej Kuzník
7173e4726e
ITS#9598 Factor out upstream checking
2021-08-13 10:57:13 +01:00
Ondřej Kuzník
8e4d7ffe79
ITS#8747 Remove c_private from LloadConnection
2021-05-10 18:49:13 +00:00
Ondřej Kuzník
e030e5eadd
Do not redefine lload_change everywhere
2021-02-04 18:07:25 +00:00
Quanah Gibson-Mount
efaf9a4a17
Happy New Year!
2021-01-11 19:25:53 +00:00
Ondřej Kuzník
b49f51879f
Implement client pending operation limits
2020-11-17 17:58:15 +00:00
Ondřej Kuzník
dc1961cb15
Epoch based memory reclamation
...
Similar to the algorithm presented in
https://www.cl.cam.ac.uk/techreports/UCAM-CL-TR-579.pdf
Not completely lock-free at the moment. Also the problems with epoch
based memory reclamation are still present - a thread actively observing
an epoch getting stuck will prevent LloadConnections and LloadOperations
being freed, potentially running out of memory.
2020-11-17 17:58:15 +00:00
Ondřej Kuzník
25a4d684fc
Permit lloadd to share slapd TLS context
2020-11-17 17:58:15 +00:00
Ondřej Kuzník
3bd2d7483e
Reuse connection_walk for client matters
2020-11-17 17:58:15 +00:00
Ondřej Kuzník
b4f43ed8e1
Refactor backend reset
...
Reuse the connection walking facility in timeout management.
2020-11-17 17:58:15 +00:00
Ondřej Kuzník
bd7a6f67de
Introduce lload_open_new_listener
2020-11-17 17:58:15 +00:00
Ondřej Kuzník
757c8beda7
Switch to ldap_parse_url_ext
...
This simplifies port parsing in the end. Also pass the url to
ldap_open_listener in anticipation of incremental listener config.
2020-11-17 17:58:15 +00:00
Ondřej Kuzník
07401e5829
Implement runtime monitor (un)registration
...
Unregistration is a hack and we shoould either make the subsystems into
an entry (if monitor allows subentry generation) or implement subsystem
unregistration in back-monitor.
2020-11-17 17:58:15 +00:00
Ondřej Kuzník
05d6aae40f
Rework lloadd startup
2020-11-17 17:58:15 +00:00
Ondřej Kuzník
a7f8f58a63
expose task functions for invalidation
2020-11-17 17:58:14 +00:00
Ondřej Kuzník
bf9f99dd88
Split backend destruction from resetting it
2020-11-17 17:58:14 +00:00
Ondřej Kuzník
7f22bac4ac
Introduce a new connection status - gentle shutdown
2020-11-17 17:58:14 +00:00
Ondřej Kuzník
485a169758
Implement pause handlers
2020-11-17 17:58:14 +00:00
Ondřej Kuzník
22818e8583
Module shutdown
2020-11-17 17:58:14 +00:00
Ondřej Kuzník
dab9054794
Rework monitor startup
...
Takes care of dealing with monitor not present/not configured and fix a
monitor startup issue.
2020-11-17 17:58:14 +00:00
Nadezhda Ivanova
678fa100f7
Convert the load balancer into a backend
2020-11-17 17:58:14 +00:00
Nadezhda Ivanova
7771606984
Use slapd's config.h
2020-11-17 17:58:14 +00:00
Nadezhda Ivanova
2d33032504
Lload cn=monitor initial implementation
2020-11-17 17:58:14 +00:00
Ondřej Kuzník
7a69017f6f
Resolve authzid after a successful auth
2020-11-17 17:58:14 +00:00
Ondřej Kuzník
003a35c62f
SASL bind support
...
Introduces pinned operations. When SASL bind finishes, we might still
have to maintain a link between the client an an upstream for future
bind operations if we got a SASL Bind in Progress result code. We zero
out the msgids and remember a server-unique identifer on the client and
the relevant operation that lets us retrieve that link again. This
operation is reclaimed just like anything else when connections drop.
Hopefully, this should work for LDAP TXN and VC Exop support with SASL
later as well since it allows for many-to-many links to exist.
2020-11-17 17:58:14 +00:00
Ondřej Kuzník
ddd1acc327
Passing the client directly will allow clearing it from op
2020-11-17 17:58:14 +00:00
Ondřej Kuzník
66f06f3fa9
Initial extension to upstream selection
2020-11-17 17:58:14 +00:00
Nadezhda Ivanova
8bc7650a7c
Clean ups and renames to coexist with slapd
2020-11-17 17:58:14 +00:00