[dovecot/core] 71aa99: director: Ignore refresh requests for already expi...
GitHub
noreply at github.com
Sun Nov 26 13:30:14 EET 2017
Branch: refs/heads/master-2.2
Home: https://github.com/dovecot/core
Commit: 71aa992ac1e51345b33c11a7f2019e9f4163c286
https://github.com/dovecot/core/commit/71aa992ac1e51345b33c11a7f2019e9f4163c286
Author: Timo Sirainen <timo.sirainen at dovecot.fi>
Date: 2017-11-26 (Sun, 26 Nov 2017)
Changed paths:
M src/director/director-connection.c
Log Message:
-----------
director: Ignore refresh requests for already expired user timestamps
Commit: 0cd150f5774a76edf92d5d9d1abb1f509c53c056
https://github.com/dovecot/core/commit/0cd150f5774a76edf92d5d9d1abb1f509c53c056
Author: Timo Sirainen <timo.sirainen at dovecot.fi>
Date: 2017-11-26 (Sun, 26 Nov 2017)
Changed paths:
M src/director/director-connection.c
M src/director/director.h
Log Message:
-----------
director: Replace USER command during handshake with "U"
This clearly differentiates the two commands and allows extending the USER
command with new parameters without mixing it up with the handshake-USER.
Commit: 93616be1837458d187d38e289236a228ef8e31bc
https://github.com/dovecot/core/commit/93616be1837458d187d38e289236a228ef8e31bc
Author: Timo Sirainen <timo.sirainen at dovecot.fi>
Date: 2017-11-26 (Sun, 26 Nov 2017)
Changed paths:
M src/director/director-connection.c
M src/director/director.c
M src/director/director.h
M src/director/user-directory.h
Log Message:
-----------
director: Avoid USER loops when ring latency is over 1 second
Do this by adding a timestamp parameter to USER events. This way if it
takes over 1 second for the USER event to traverse the ring, it won't get
into an infinite loop getting the user updated over and over again.
Commit: f481219748978a74c4060ca41d56f184b358e30a
https://github.com/dovecot/core/commit/f481219748978a74c4060ca41d56f184b358e30a
Author: Timo Sirainen <timo.sirainen at dovecot.fi>
Date: 2017-11-26 (Sun, 26 Nov 2017)
Changed paths:
M src/director/director-connection.c
Log Message:
-----------
director: Avoid USER loops with >1s ring latency also with old directors
Do this by ignoring USER refreshes that were already updated recently.
The "recently" is calculated by director_user_expire/4 seconds ago, but
with an upper limit of 15 secs. This means that the USER loops can now
only exist if the director ring latency is above 15 seconds. (Once all
directors in the ring are running the new version, there's no looping
at any latency.)
Commit: 4207e64a04998380c88f94b159ffaf1cddfeec5d
https://github.com/dovecot/core/commit/4207e64a04998380c88f94b159ffaf1cddfeec5d
Author: Timo Sirainen <timo.sirainen at dovecot.fi>
Date: 2017-11-26 (Sun, 26 Nov 2017)
Changed paths:
M src/director/user-directory.c
Log Message:
-----------
director: Delay sorting users until there are no more user iterators
This shouldn't have normally happened. Only when an outgoing handshake was
going on at the same time as a) another outgoing handshake was going on, or
b) doveadm was doing HOST-RESET-USERS
Commit: b0d1558c88147d3ec3d18ba0ee7fa18e11c619d0
https://github.com/dovecot/core/commit/b0d1558c88147d3ec3d18ba0ee7fa18e11c619d0
Author: Timo Sirainen <timo.sirainen at dovecot.fi>
Date: 2017-11-26 (Sun, 26 Nov 2017)
Changed paths:
M src/director/director-connection.c
M src/director/director.c
M src/director/director.h
M src/director/doveadm-connection.c
M src/director/test-user-directory.c
M src/director/user-directory.c
M src/director/user-directory.h
Log Message:
-----------
director: Don't send USERs in handshake that were already sent between handshake
If the user was refreshed since the handshake was started, it means that
the same user was already sent to the other side (added to the stream
immediately after it was received/handled). There's no need to send it
again.
This fixes a potentally infinite handshake when users are rapidly changing
and the handshake iterator never sees the end of the list. (Each refreshed
user is moved to the end of the list, so handshaking can keep sending the
same user over and over again.)
Commit: a03f855192a8bd76487b1be1517bd84515c91ab5
https://github.com/dovecot/core/commit/a03f855192a8bd76487b1be1517bd84515c91ab5
Author: Timo Sirainen <timo.sirainen at dovecot.fi>
Date: 2017-11-26 (Sun, 26 Nov 2017)
Changed paths:
M src/director/director-connection.c
Log Message:
-----------
director: Include number of USERs received in disconnection log lines
Separate handshake and refresh USERs.
Commit: 7cadc7cbbb58ee83848207e6ac347d4c9f698123
https://github.com/dovecot/core/commit/7cadc7cbbb58ee83848207e6ac347d4c9f698123
Author: Timo Sirainen <timo.sirainen at dovecot.fi>
Date: 2017-11-26 (Sun, 26 Nov 2017)
Changed paths:
M src/director/director-connection.c
M src/director/director.h
M src/director/main.c
Log Message:
-----------
director: Show number of incoming USERs/sec in ps title
Commit: 2d3dc75c297cb8873e4e827aaff5d205da0e3d7f
https://github.com/dovecot/core/commit/2d3dc75c297cb8873e4e827aaff5d205da0e3d7f
Author: Timo Sirainen <timo.sirainen at dovecot.fi>
Date: 2017-11-26 (Sun, 26 Nov 2017)
Changed paths:
M src/director/director-connection.c
Log Message:
-----------
director: Include number of users sent in handshake in disconnection log lines
Commit: ba2b252ef82ac1935c127c94d84d64c1e12e20c1
https://github.com/dovecot/core/commit/ba2b252ef82ac1935c127c94d84d64c1e12e20c1
Author: Timo Sirainen <timo.sirainen at dovecot.fi>
Date: 2017-11-26 (Sun, 26 Nov 2017)
Changed paths:
M src/director/director-connection.c
M src/director/director-connection.h
M src/director/doveadm-connection.c
Log Message:
-----------
director: DIRECTOR-LIST - Show number of USERs sent/received in "handshaking" state
Commit: 6ee46c4926122f780fc9eb312ef4683d5bd2678a
https://github.com/dovecot/core/commit/6ee46c4926122f780fc9eb312ef4683d5bd2678a
Author: Timo Sirainen <timo.sirainen at dovecot.fi>
Date: 2017-11-26 (Sun, 26 Nov 2017)
Changed paths:
M src/director/doveadm-connection.c
Log Message:
-----------
director: DIRECTOR-LIST - Add "ring " prefix to self's status
This is to make it a bit easier to understand the difference between a
connection's "handshaking" state vs. "ring handshaking" state.
Commit: e85d0e59257ea1423e024d60d568f2594b771c5f
https://github.com/dovecot/core/commit/e85d0e59257ea1423e024d60d568f2594b771c5f
Author: Timo Sirainen <timo.sirainen at dovecot.fi>
Date: 2017-11-26 (Sun, 26 Nov 2017)
Changed paths:
M src/director/director-connection.c
Log Message:
-----------
director: Log exactly how long PING was waited on before it timed out.
Commit: 52065f18ba829be34060b05da249542e4330e97e
https://github.com/dovecot/core/commit/52065f18ba829be34060b05da249542e4330e97e
Author: Timo Sirainen <timo.sirainen at dovecot.fi>
Date: 2017-11-26 (Sun, 26 Nov 2017)
Changed paths:
M src/director/director-connection.c
M src/director/director-settings.c
M src/director/director-settings.h
Log Message:
-----------
director: Add director_ping_idle/max_timeout setting.
director_ping_idle_timeout is used when there's otherwise no input coming
from the connection. Changed its default from 10 secs to 30 secs.
director_ping_max_timeout is used when the other director keeps sending
input, but among it is no PONG reply.
Commit: 1942cad5514e554c22acb41c6c6afe9b88c3a189
https://github.com/dovecot/core/commit/1942cad5514e554c22acb41c6c6afe9b88c3a189
Author: Timo Sirainen <timo.sirainen at dovecot.fi>
Date: 2017-11-26 (Sun, 26 Nov 2017)
Changed paths:
M src/director/director-connection.c
Log Message:
-----------
director: Improve PING/PONG timeout errors and add new warnings
Log a warning if PING-PONG takes over 5 secs in total, or also if the
recipient notices that the PING took >= 5 seconds to receive.
Compare: https://github.com/dovecot/core/compare/7e6f293db826...1942cad5514e
More information about the dovecot-cvs
mailing list