Commit Graph

492 Commits

Author SHA1 Message Date
Howard Chu
d6fbe1c7ca ITS#6361 remove asserts 2009-11-13 23:48:51 +00:00
Howard Chu
b0fdc08e06 ITS#6276 wake up blocked writers if we're pausing 2009-08-28 23:00:46 +00:00
Howard Chu
a975c61451 More for #6220, don't timeout idle connections when writetimeout is
set and idletimeout is not.
2009-08-17 11:28:25 +00:00
Howard Chu
553f0f2ffd ITS#6220 don't check write timeouts when global_writetimeout isn't set 2009-07-21 02:04:46 +00:00
Hallvard Furuseth
0f5378c8f7 Fix Debug format in last commit 2009-06-28 21:23:59 +00:00
Howard Chu
c62ebb9da2 ITS#6189 delay resetting the SLAP_C_BINDING state until the Bind handler
has fully returned to the connection manager. This may result in
"deferring operation: binding" messages being logged again (ITS#3850) but
it should not cause any hangs.
2009-06-28 03:37:20 +00:00
Hallvard Furuseth
41fa4f03b6 More ITS#6104: mutex-protected check of o_cancel value from other thread 2009-06-05 23:26:09 +00:00
Howard Chu
8edeaefe72 ITS#6056 partially revert ITS#5886, close sequencing was broken 2009-05-28 17:46:25 +00:00
Howard Chu
aa9e241581 ITS#6111 connection_state_closing() -> connection_valid() 2009-05-14 04:03:23 +00:00
Howard Chu
9767c87531 Partially revert prev commit, leave rs->sr_err == SLAPD_ABANDON 2009-05-11 04:23:51 +00:00
Howard Chu
2889cc9b1d ITS#6103 send cancelled response back to client 2009-05-11 04:16:57 +00:00
Howard Chu
f11fcf47d2 Add missing extended/intermediate handlers for fake connections 2009-04-20 09:07:48 +00:00
Howard Chu
f2cc7e8a0a ITS#5836, add writetimeout keyword for timing out hung writers 2009-03-10 00:42:10 +00:00
Howard Chu
5f809c45eb check mutex in connection_write() 2009-01-29 22:43:18 +00:00
Howard Chu
1a1d226dad Revert prev commit, unnecessary 2009-01-27 18:16:28 +00:00
Howard Chu
05ec9552a7 Use epoll in edge-triggered mode 2009-01-27 08:00:50 +00:00
Kurt Zeilenga
4af9eb9715 Update copyright notices 2009-01-22 00:40:04 +00:00
Howard Chu
9b8dd2033f Revert prev commit, better fix - make sure client conns are closed
as expected
2009-01-16 21:49:00 +00:00
Howard Chu
a4167862c3 Client connection might get closed implicitly 2009-01-16 21:28:46 +00:00
Howard Chu
dd15627a5e Fix prev commit, c_writers check should be mutex'd 2009-01-15 21:22:35 +00:00
Howard Chu
1a171b07d3 ITS#5835 fix connection teradown when there are waiting writers 2009-01-15 20:41:40 +00:00
Howard Chu
96192064f3 ITS#5886 fix epoll hangup handling 2009-01-14 04:28:24 +00:00
Howard Chu
f54bb377df Revert prev commit 2009-01-13 00:08:36 +00:00
Howard Chu
43c1f42461 ITS#5835 tentative fix - remove bogus call to connection_close().
Note that with this change, all calls to connection_closing() and
connection_close() always occur in pairs - probably the two
functions should be collapsed into one.
2009-01-13 00:03:23 +00:00
Howard Chu
b25c74777a Let the idletimeout check kill hung writers 2008-11-28 23:45:56 +00:00
Howard Chu
e2ee5844e0 ITS#5835 change some DEBUG_TRACE messages to DEBUG_CONNS for easier debug 2008-11-28 21:09:34 +00:00
Pierangelo Masarati
e5867e2f30 improve previous commit (ITS#5814) 2008-11-16 23:58:46 +00:00
Pierangelo Masarati
b52c62e69f don't assert on unprotected data (ITS#5814) 2008-11-16 20:29:26 +00:00
Rein Tollevik
d2c08ebb4f ITS#5725: Don't enable connection for events twice. 2008-10-05 19:17:56 +00:00
Howard Chu
cfb478679f ITS#5469 check earlier for write waiters 2008-04-15 22:17:50 +00:00
Hallvard Furuseth
cd63a0c43b Warning cleanup: function ptr <=> void* at ldap_pvt_thread_pool_<set/get>key() 2008-01-11 06:07:43 +00:00
Kurt Zeilenga
c890c96d13 Happy New Year (belated) 2008-01-08 00:19:56 +00:00
Pierangelo Masarati
30f401c628 rename ldap_pvt_thread_pool_setkey_x() to ldap_pvt_thread_pool_setkey() (as part of ITS#5309) 2008-01-07 21:35:03 +00:00
Howard Chu
d0eac819f7 ITS#5259 fix sasl_auxprop_store to allow cleanup after bindop is gone 2007-12-22 22:53:58 +00:00
Howard Chu
eb16972d23 Streamlined Winsock connection management 2007-11-26 17:03:26 +00:00
Howard Chu
e8d7074802 Fix connection teardown 2007-11-24 11:33:04 +00:00
Howard Chu
8429013957 Fix test050 2007-11-20 14:56:20 +00:00
Howard Chu
233632fa04 Use per-thread slap_counters to eliminate lock contention 2007-10-25 08:45:00 +00:00
Howard Chu
68ebee4726 Concurrency tweaks:
store conn->c_sd, don't use ber_sockbuf_ctrl to retrieve it.
  use per-thread free lists for operations, no mutexes needed.
2007-10-25 02:22:40 +00:00
Pierangelo Masarati
5acbf5997c re-sort funcs (and enums) in "logical" order 2007-08-17 09:49:17 +00:00
Pierangelo Masarati
c77e65c274 fix SASL ssf logging (ITS#5001) 2007-06-09 15:31:46 +00:00
Hallvard Furuseth
46d420565b thread pool data was accessed through the wrong type 2007-05-31 20:52:15 +00:00
Hallvard Furuseth
93fbb87545 Give OperationBuffer normal struct members instead of using
LBER_ALIGNED_BUFFER(OPERATION_BUFFER_SIZE), as discussed in ITS#4078.
Add a corresponding SyncOperationBuffer in overlays/syncprov.c.
2007-05-18 23:54:26 +00:00
Hallvard Furuseth
584ea90db2 Remove unused variables 2007-05-09 19:11:44 +00:00
Hallvard Furuseth
bbc719ca56 ITS#4948: '#if <undefined macro>' -> '#ifdef' warning cleanup 2007-05-09 18:17:10 +00:00
Howard Chu
63bef22335 Cleanup conditional arg in prev commit 2007-03-31 00:40:22 +00:00
Howard Chu
c6df30118f ITS#4893 fix prev commit 2007-03-25 12:18:06 +00:00
Howard Chu
7426ab07fc ITS#4893 define LDAP_PF_LOCAL_SENDMSG in <ac/socket.h> if a message must
be sent to transmit client credentials. Buffer the message data.
2007-03-25 04:40:22 +00:00
Pierangelo Masarati
639d678592 cleanup struct declarations 2007-03-20 01:07:10 +00:00
Howard Chu
06212e9de9 Plug leaks 2007-02-16 02:22:24 +00:00
Howard Chu
e28627f1e2 Added "slapd" rewrite map handler, connection_fake_init2 to use existing
tmpmemctx without reinitializing
2007-02-14 08:51:47 +00:00
Howard Chu
9b5dbf9e35 Remove extraneous debug statements 2007-01-25 13:53:08 +00:00
Howard Chu
4b4072eb44 Use thread keys to plug slapi leak in connection_fake_init() 2007-01-25 11:55:40 +00:00
Howard Chu
0126348461 connection_fake_init can leak SLAPI extensions. 2007-01-25 07:22:39 +00:00
Quanah Gibson-Mount
7b503e6290 logging cleanup 2007-01-12 22:55:39 +00:00
Kurt Zeilenga
da6d9eb046 happy new year 2007-01-02 20:00:42 +00:00
Howard Chu
ff93c6bef7 Don't log EAGAIN returns from ber_get_next() 2006-12-31 16:15:45 +00:00
Howard Chu
d2fc667fe7 Fix connection_get race condition on Windows 2006-12-26 23:40:00 +00:00
Howard Chu
df54b1a244 In connections_shutdown - check for Uninitialized struct first, since
attempting to lock an unint'd mutex may crash on some platforms. And
there is no chance for an unint'd conn to get init'd while shutdown
is occurring, so the unprotected check of struct state is safe.
2006-12-21 06:06:32 +00:00
Pierangelo Masarati
d29d83a80e protect assertion behind mutex (test should be atomic anyway...) 2006-12-14 19:22:00 +00:00
Howard Chu
4d9d4e2538 Fix connections_shutdown() 2006-12-14 02:12:39 +00:00
Pierangelo Masarati
9fdb9b6e02 give cleanup another chance to free the temporary callback (ITS#4771) 2006-12-07 19:44:04 +00:00
Pierangelo Masarati
0b29856b16 don't use conditionals in macro arguments (ITS#4769) 2006-12-06 11:39:07 +00:00
Howard Chu
47793aa3c9 Fix typo in prev commit 2006-11-09 06:47:47 +00:00
Howard Chu
6ac62a7573 Fix - failed Binds could leave a closing connection open. 2006-11-09 01:42:21 +00:00
Howard Chu
44475373db Fix prev commit again (ITS#4722) 2006-10-26 22:10:12 +00:00
Howard Chu
9a3138cb55 Fix typo in prev commit 2006-10-17 19:45:55 +00:00
Howard Chu
eb16636abe Tweak prev commit, add more notes (re ITS#4667) 2006-10-17 19:37:10 +00:00
Howard Chu
354e90a0d9 From rev 1.373, releasing the mutex means connection_close() may get called
from another thread. Drop the assert, just return instead.
2006-10-17 19:31:42 +00:00
Howard Chu
57c329a3af ITS#4606 errno is not per-thread on WIN32, always use WSAGet/SetLastError
(with notable exceptions: ignore tests for EINTR which winsock never sets)
2006-09-14 06:35:34 +00:00
Howard Chu
3e50687bf7 In connection_next, sockets may not be contiguous on Unix if syslog etc are
active. Just search to the end of the table, tracking the max isn't worth
the lock overhead.
2006-09-11 21:19:38 +00:00
Howard Chu
f82ee25ec1 ITS#4667 in connection_closing, release c_mutex to allow waiters
to clear out.
2006-09-08 23:31:53 +00:00
Howard Chu
da6a4bcd3e ITS#4667 fix assert in connection_next() for PENDING connections 2006-09-08 23:30:31 +00:00
Pierangelo Masarati
0d2e2772d5 move req2op selection into a helper 2006-09-04 07:17:34 +00:00
Pierangelo Masarati
faa13725e6 remove unnecessary assertion; add test for pending ops 2006-09-01 10:41:54 +00:00
Pierangelo Masarati
9e8725a3cc add an assertion to track ITS#4659; minor cleanup 2006-09-01 10:00:50 +00:00
Howard Chu
69fa2d9f93 Move ber_sockbuf_free() to slapd_remove() to avoid using AC_SOCKET_INVALID 2006-08-18 23:54:24 +00:00
Howard Chu
2e3e7ed14f Fix prev commit 2006-08-18 01:17:44 +00:00
Howard Chu
098153c5bb Move socket close into slapd_remove, don't close until after socket
is removed from daemon control.
2006-08-17 00:44:38 +00:00
Pierangelo Masarati
f26bef66c6 cleanup 2006-05-20 15:49:18 +00:00
Howard Chu
9de3d9c277 Fix idletimeout deadlock 2006-05-19 22:47:33 +00:00
Howard Chu
813b95941e Fixed version of rev 1.361 2006-05-14 03:37:17 +00:00
Howard Chu
1cf58aba1c Revert prev commit, spoke too soon, close race condition came back. 2006-05-13 12:35:12 +00:00
Howard Chu
d74a230229 Simplify connection mutexes 2006-05-13 11:50:00 +00:00
Luke Howard
87051a2a4a ITS#4525 2006-05-08 08:58:33 +00:00
Howard Chu
a8f8dfe747 Use ldap_pvt_thread_pool_tid() 2006-05-02 00:58:05 +00:00
Howard Chu
daec2febfb ITS#4476 revert connection_write processing back into main thread 2006-04-06 04:34:37 +00:00
Hallvard Furuseth
da0c0360e4 Warnings: Unused vars. funcptr=0, not =NULL. if(b=...) -> if((b=...) != NULL). 2006-04-02 19:54:24 +00:00
Pierangelo Masarati
e21ec88c88 fix previous commit (ITS#4465) 2006-04-01 15:31:35 +00:00
Pierangelo Masarati
3aac54f089 fix bound check (ITS#4449) 2006-04-01 15:22:13 +00:00
Pierangelo Masarati
fc89650cce add a cleanup handler for binds (ITS#4465) 2006-04-01 15:21:00 +00:00
Howard Chu
c41a151d1e Cleanup 2006-03-31 12:53:32 +00:00
Kurt Zeilenga
5487575086 Add link to FAQ entry on BDB tuning 2006-03-30 17:56:56 +00:00
Kurt Zeilenga
71511a0569 more txn infrastructure 2006-03-08 05:54:10 +00:00
Kurt Zeilenga
247536744e Some more txn infrastructure 2006-03-07 08:07:21 +00:00
Pierangelo Masarati
693697bfd9 cleanup callback freeing 2006-01-06 16:24:37 +00:00
Kurt Zeilenga
acbb5cf689 Happy new year! 2006-01-03 23:11:52 +00:00
Luke Howard
d8647e5c07 Create SLAPI object extensions in connection_fake_init() 2005-12-24 10:59:46 +00:00
Kurt Zeilenga
c106f49029 Primitive handling of dontUseCopy (always error). 2005-11-26 07:09:59 +00:00
Pierangelo Masarati
4dcccd3ca2 valgrind keeps complaining (it makes sense) but the bus error problem disappeared 2005-11-14 23:14:31 +00:00