Ondřej Kuzník
4588f4e528
ITS#9597 Fix NoD support
2021-08-13 16:01:13 +01:00
Ondřej Kuzník
e78ecead09
ITS#9600 Support closing connections on request
2021-08-13 10:57:14 +01: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
6d95cc3935
ITS#9599 Online latency tracking
2021-08-13 10:57:14 +01:00
Ondřej Kuzník
8219a3a414
ITS#9599 Push based latency tracking
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
1ca559668f
ITS#9599 Add latency tracking
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
b66a62799d
ITS#9597 Send Notice of Disconnection when shutting down a client connection
2021-08-13 10:57:13 +01:00
Ondřej Kuzník
96d0eec034
ITS#8747 Use the same message when upstream connection is ready
2021-08-13 10:57:13 +01:00
Ondřej Kuzník
8b24104d1a
ITS#9624 Read state while holding relevant mutex, cache if needed
2021-08-04 15:30:36 +00:00
Ondřej Kuzník
71de64fac4
ITS#9624 Make sure we reset only for Binds
2021-08-04 15:30:36 +00:00
Ondřej Kuzník
7c17f06197
ITS#9624 We've already checked before we call request_extended
2021-08-04 15:30:36 +00:00
Ondřej Kuzník
b4afe00942
ITS#9576 Put the used table in ConfigArgs
2021-06-21 16:36:06 +00:00
Ondřej Kuzník
3138c8d5db
ITS#9363 Some missed MAGIC defaults
2021-06-21 16:36:06 +00:00
Ondřej Kuzník
2d78b6274f
ITS#8747 Allow olcBkLloadClientMaxPending in cn=config
2021-06-21 16:36:06 +00:00
Ondřej Kuzník
cba03e49a4
ITS#8747 Protect shutdown code while workers are still alive
2021-05-10 18:49:13 +00: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
1cb65102ce
ITS#8747 Keep an explicit backend pointer
2021-05-10 18:49:13 +00:00
Ondřej Kuzník
3802fa9217
ITS#8747 Fix lloadd builds --without-tls
2021-05-10 18:49:13 +00:00
Ondřej Kuzník
a186fd70ab
ITS#8747 Do not continue reading if connection is dying
2021-05-10 18:49:13 +00:00
Ondřej Kuzník
4f4997551d
ITS#8747 Avoid epoch recursion in connection_write_cb
2021-05-10 18:49:13 +00:00
Ondřej Kuzník
2c1bb42f01
ITS#8747 Do not observe an epoch while calling dispose_cb
2021-05-10 18:49:13 +00:00
Ondřej Kuzník
9bbbbf5f6a
ITS#9502 TCP_USER_TIMEOUT for lloadd
2021-04-22 21:52:12 +00:00
Ondřej Kuzník
72caa56a8c
ITS#8707 systemd notifications from lloadd
2021-04-20 22:54:19 +00:00
SATOH Fumiyasu
f3501534d4
ITS#8707 - Add slapd.service and lloadd.service for systemd
2021-04-20 22:54:19 +00:00
Ondřej Kuzník
e36d1e31c5
ITS#9001 manual changes
2021-03-30 15:46:40 +01:00
Howard Chu
829263c454
ITS#8847 move lutil_sockaddrstr() to ldap_pvt_sockaddrstr()
2021-03-26 13:45:26 +00:00
Howard Chu
bb6844e296
ITS#7295 don't init TLS threads by default
...
Do it explicitly in servers
2021-03-21 15:26:57 +00:00
Paul B. Henson
146889f205
ITS#9419 Add support for HAProxy proxy protocol v2
2021-02-24 18:11:09 +00:00
Paul B. Henson
dcca73370b
Move slap_sockaddrstr into liblutil
2021-02-24 18:11:09 +00:00
Ondřej Kuzník
5fa0a651f5
revert: libevent 2.0 support
2021-02-24 18:11:09 +00:00
Quanah Gibson-Mount
5b2988ca54
ITS#9327 - Use STRIP_OPTS for lloadd
2021-02-17 19:55:25 +00:00
Quanah Gibson-Mount
ce2c5173bd
ITS#9161 - Fix various typos
...
Fix a number of different typos across the code base
2021-02-17 18:42:46 +00:00
Ondřej Kuzník
e030e5eadd
Do not redefine lload_change everywhere
2021-02-04 18:07:25 +00:00
Quanah Gibson-Mount
6c469f0793
ITS#7790 - Rename config.h
...
Rename slapd/config.h to slap-config.h and update accordingly
Rename lloadd/config.h to lload-config.h and update accordingly
2021-02-02 21:26:39 +00:00
Quanah Gibson-Mount
efaf9a4a17
Happy New Year!
2021-01-11 19:25:53 +00:00
Ondřej Kuzník
323bb1d9a4
Handle upstream rejecting a StartTLS exop
2020-11-17 17:58:15 +00:00
Ondřej Kuzník
0abf3f5bc9
Flush cache before calling dispose()
...
This needs to be confirmed:
Location based atomics do not imply a full fence of the same level. So
to get the code in dispose() read the actual data, it seems we need to
initiate a fence.
2020-11-17 17:58:15 +00:00
Ondřej Kuzník
dfbed44b3e
Do not accept requests with msgid == 0
...
It is used internally to identify pinned operations and should not be
encountered over the wire.
2020-11-17 17:58:15 +00:00
Ondřej Kuzník
dfbf25d579
Honour keepalive settings for upstreams
2020-11-17 17:58:15 +00:00
Ondřej Kuzník
25fff30e39
Let the last thread dispose of pending references
...
If we're idle, there might be objects pending cleanup for the last two
epochs. Unless another thread comes in and checks into a new epoch or we
shut down, they will linger forever.
If one of the objects was a connection, it wouldn't get closed and be
stuck in CLOSE_WAIT state, potentially refusing another ligitimate
connection if its socket address were to match the one we're yet to
close.
2020-11-17 17:58:15 +00:00
Ondřej Kuzník
41a74b4689
Introduce the notion of experimental features
2020-11-17 17:58:15 +00:00
Ondřej Kuzník
1f6d8611a3
Implement read throttling when writes backlog
...
Reject operations in such a case with LDAP_BUSY. If read_event feature
is on, just stop reading from the connection. However this could still
result in deadlocks in reasonable situations. Need to figure out better
ways to make it safe and still protect ourselves.
2020-11-17 17:58:15 +00:00
Ondřej Kuzník
68b163fca9
Introduce mutex checks
...
Switched off unless thread debugging is on, but still useful for static
analysis.
2020-11-17 17:58:15 +00:00
Ondřej Kuzník
62a806b243
Thread error checking
2020-11-17 17:58:15 +00:00
Ondřej Kuzník
1328777a85
Fix a SASL channel-binding leak
2020-11-17 17:58:15 +00:00