19557f192d37cd54a1a090a8a26d9d47265e4413 |
|
01-Nov-2017 |
Aki Tuomi <aki.tuomi@dovecot.fi> |
global: Fix spelling mistakes in comments
Original work by @andreasschulze and @jsoref |
4a62ed78e6fb17876e5db7280580897d55e7a4b2 |
|
25-Aug-2017 |
Timo Sirainen <timo.sirainen@dovecot.fi> |
master: Improve killing processes when they don't die after reload
The old behavior was:
1. Send SIGTERM to all processes, except log
2. Send SIGTERM to all processes, including log
3. Send SIGKILL to all processes, including log
The new behavior is now:
1. Send SIGTERM to all processes, except log
2. Send SIGKILL to all processes, except log
Only after there aren't any processes left except log, send SIGTERM to it.
If that doesn't work, send SIGKILL. |
77a41c18e6c37ea9d88a300173672746e29fe61b |
|
25-Jul-2017 |
Timo Sirainen <timo.sirainen@dovecot.fi> |
doveadm service status: Add doveadm_stop field
This indicates whether "doveadm service stop" was used for the service. |
164f8e81a078c7b8f679fdd04892ffc9ba14bfa0 |
|
29-Jun-2016 |
Timo Sirainen <timo.sirainen@dovecot.fi> |
master: Allow stopping specific services via master socket. |
0153cf542884f8f50d17a0d909c2da98a37dafdc |
|
29-Jun-2016 |
Timo Sirainen <timo.sirainen@dovecot.fi> |
master: Added support for stopping specific services.
We need to have a per-service fd for detecting a dead master. |
0dffa25d211be541ee3c953b23566a1a990789df |
|
06-Jun-2016 |
Timo Sirainen <timo.sirainen@dovecot.fi> |
global: unsigned int:1 -> bool:1
perl -i -pe 's/unsigned int ([^,:;]+):1;/bool $1:1;/' **/*.[ch] |
5d4c793b4e3dbc07f08daa4465594b1857f80725 |
|
23-Sep-2013 |
Timo Sirainen <tss@iki.fi> |
master: Added reuse_port setting to inet_listeners, which enables SO_REUSEPORT if available.
After forking a new service process, a new listener socket is created for
each such inet_listener. Linux v3.9+ added SO_REUSEPORT feature, which
should distribute clients more uniformly to the processes. I'm not sure if
this makes any difference in BSDs.
At least in Linux v3.9 there was still a bug that if the number of listening
processes changed, some TCP handshakes might not finish. I don't see if this
has already been fixed, so this is probably safe to use only for services
whose process count doesn't change (e.g. process_min_avail is set high
enough). |
e7a4c77db3a37224b91e16d139fa80ce67dc37ff |
|
02-Sep-2013 |
Timo Sirainen <tss@iki.fi> |
master: Pre-fork processes only while master doesn't have more important things to do. |
bdd36cfdba3ff66d25570a9ff568d69e1eb543cf |
|
03-Oct-2012 |
Timo Sirainen <tss@iki.fi> |
Renamed network.[ch] to net.[ch].
The function prefixes already started with net_ instead of network_.
And icecap wants to use network.h for other purpose. :) |
a75d470c9223a75801418fcdda258885c36317e0 |
|
20-Aug-2012 |
Timo Sirainen <tss@iki.fi> |
Reverted "support for non-pointers" part of the hash table API changes.
Originally I wrote it using clang, which didn't give as many warnings as gcc
did. I guess this way is safer anyway.. |
4ee00532a265bdfb38539d811fcd12d51210ac35 |
|
19-Aug-2012 |
Timo Sirainen <tss@iki.fi> |
Array API changed: ARRAY_DEFINE(name, type) -> ARRAY(type) name
Easy way to update your existing code:
perl -i -pe 's:ARRAY_DEFINE\(([^,]+), *([^)]+)\);:ARRAY($2) $1;:' **/*.[ch] |
678d0463849ba777106eb7875f27db07a5d8e3df |
|
19-Aug-2012 |
Timo Sirainen <tss@iki.fi> |
Hash table API is now (mostly) type safe. |
321f17803ad71171ad2408399b6cc8efd2d1479a |
|
27-Jan-2012 |
Timo Sirainen <tss@iki.fi> |
master: Throttle rapid exit failures only if there have never been any exit successes.
This should still catch buggy services without allowing intentional DoSing. |
cb211cc64c1c6ac8343d60e7a058be42fdba2f71 |
|
27-Jan-2012 |
Timo Sirainen <tss@iki.fi> |
master: Make service throttling seconds incremental, starting from 2 secs. |
870bcf0d0c07f7d915f1f571f38968426ba575a1 |
|
27-Jan-2012 |
Timo Sirainen <tss@iki.fi> |
master: If 10 service processes die within a second with no successes inbetween, throttle the service. |
f7423cbbd9dea363a5df18ebb96da055a977ae79 |
|
29-Dec-2011 |
Timo Sirainen <tss@iki.fi> |
Listener names are now in struct master_service_connection.name
This allows service to use the names to figure out what type the listener
is. |
1c7b0cbdb08cccbd25c19ae0fb69abe8ed9ee9b4 |
|
05-Nov-2011 |
Timo Sirainen <tss@iki.fi> |
master: Wait for services to stop listening before unlinking the pid file. |
acef354e742a39416b0697e1554f5d49b0369850 |
|
20-Oct-2011 |
Timo Sirainen <tss@iki.fi> |
master: When process_limit fills up, wait 10s before closing pending connections.
It might have only been a temporary burst that gets resolved quickly enough. |
29f32cdcf44cda9688576bfdc7450a8a15e90e86 |
|
04-Mar-2011 |
Timo Sirainen <tss@iki.fi> |
master: Use per-services_list "master is dead" fd, so services know when config is reload. |
d5eb47a791ec56149fd711cd8e44efc8babeaae5 |
|
10-Feb-2011 |
Timo Sirainen <tss@iki.fi> |
Added import_environment setting.
This also cleans up different places in code where TZ and other environments
are preserved. If it's not in the import_environment setting, it's not
preserved. |
dc07b75b7ea83ff5f447970a20419032725271a7 |
|
09-Aug-2010 |
Timo Sirainen <tss@iki.fi> |
master: Added service type=startup for starting one service process at startup. |
93a7d1ee4b518b5c85f9721dc6539e4dab6aae00 |
|
25-Jun-2010 |
Timo Sirainen <tss@iki.fi> |
Added support for per-service idle kill timeout.
Director and anvil services are by default never killed.
This also fixes the errors about idling director process not dying.
--HG--
branch : HEAD |
230ef558135f16a66b86cbe3762524eaa9ae9d81 |
|
11-Dec-2009 |
Timo Sirainen <tss@iki.fi> |
anvil: After master gets a SIGHUP, start logging via new log process.
--HG--
branch : HEAD |
61618d4c58080570f689614fec204ae14e90cef2 |
|
10-Nov-2009 |
Timo Sirainen <tss@iki.fi> |
Added "size" setting type, which supports B/k/M/G/T suffixes.
--HG--
branch : HEAD |
4f4943f6ef1bc45c23de73eebe83779712b3c8cb |
|
27-Oct-2009 |
Timo Sirainen <tss@iki.fi> |
master: anvil process now stays alive across SIGHUPs.
--HG--
branch : HEAD |
cf0ad1a0bddb0787f3d7b408a96d721a8b2a98a3 |
|
20-Oct-2009 |
Timo Sirainen <tss@iki.fi> |
Redesigned how login process passes connections to mail processes and changed related APIs.
Master process is no longer in the middle.
--HG--
branch : HEAD |
2cd2518bab14292a67cf8a490b58ab9ef89879da |
|
20-Oct-2009 |
Timo Sirainen <tss@iki.fi> |
master: Keep service's processes in an easily accessible linked list.
--HG--
branch : HEAD |
c3946f20964338d16bd5ee0c79c7fccf148df5bf |
|
09-Oct-2009 |
Timo Sirainen <tss@iki.fi> |
master: Added back "listen" setting, which is the default address for inet_listeners.
--HG--
branch : HEAD |
614529ee060755c0b282102b70daf56bcd64222d |
|
09-Oct-2009 |
Timo Sirainen <tss@iki.fi> |
master: Added default_vsz_limit setting, which defaults to 256 MB.
--HG--
branch : HEAD |
cf2e6953d03a1c22f272ec19432fc03c136ac1bb |
|
30-Sep-2009 |
Timo Sirainen <tss@iki.fi> |
master: If anvil isn't used, read and discard all anvil input coming from mail processes.
--HG--
branch : HEAD |
6fdfa4d4cf14d1d7764d7faa8258f112e39c8dbe |
|
11-Sep-2009 |
Timo Sirainen <tss@iki.fi> |
*-login: Fixed dropping oldest connection when reaching all limits.
--HG--
branch : HEAD |
d0867802ab23e2b4ea78113c97df3b0898620a92 |
|
09-Sep-2009 |
Timo Sirainen <tss@iki.fi> |
dovecot -p (ask ssl key password from command line) works again.
--HG--
branch : HEAD |
e4427a13680e8b7db98fb7eb9ef2e5f788e84212 |
|
09-Sep-2009 |
Timo Sirainen <tss@iki.fi> |
master: Minor cleanups.
--HG--
branch : HEAD |
3b959c98e05e780de2a063a4a9d8d393dc61ed58 |
|
04-Sep-2009 |
Timo Sirainen <tss@iki.fi> |
master: Several fixes to handling SIGHUPs.
--HG--
branch : HEAD |
3a0f9aa9504497e4e47f32df54fbf47fdc7423b6 |
|
31-Aug-2009 |
Timo Sirainen <tss@iki.fi> |
master: Fixes to checks using service's client_limit.
--HG--
branch : HEAD |
bad5fa318c6c1384ab83bd72d53ce06593274c18 |
|
15-Aug-2009 |
Timo Sirainen <tss@iki.fi> |
master: Support reloading configuration.
--HG--
branch : HEAD |
b2ed2b25c4c457ec1c99ebe5e9bd66a2e2f89cfd |
|
22-Jun-2009 |
Timo Sirainen <tss@iki.fi> |
master: If time moves backwards, delay launching new processes.
--HG--
branch : HEAD |
6c2ce1d5bf17b21e804a079eb0f973b7ab83e0d8 |
|
06-May-2009 |
Timo Sirainen <tss@iki.fi> |
Implemented anvil service, which is used to implement mail_max_userip_connections.
--HG--
branch : HEAD |
78fa3c578c14ee8a612f86cf73b6181c7f16463f |
|
05-May-2009 |
Timo Sirainen <tss@iki.fi> |
master: Fixes to handling logging.
Master now has a non-blocking write pipe to log process, so it no longer
blocks if log process is hanging. Also it's cleaner to send log commands via
a pipe specifically meant for them.
--HG--
branch : HEAD |
55bc6a7a0940ec48a68558ef70838991c5d301d2 |
|
05-May-2009 |
Timo Sirainen <tss@iki.fi> |
Require each service to have a unique name. Log service errors using service_error().
--HG--
branch : HEAD |
d176f84ce5ca2073f4dfbafb457b9c74f6bf0d76 |
|
24-Apr-2009 |
Timo Sirainen <tss@iki.fi> |
Initial commit for v2.0 master rewrite. Several features are still missing.
--HG--
branch : HEAD |