[dovecot/core] 154f91: director: Ignore refresh requests for already expi...
GitHub
noreply at github.com
Sun Nov 26 13:00:12 EET 2017
Branch: refs/heads/master
Home: https://github.com/dovecot/core
Commit: 154f91726624265fce15097eb4bbbf6e55f8c477
https://github.com/dovecot/core/commit/154f91726624265fce15097eb4bbbf6e55f8c477
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: 05b7b8f14426b5fe5d016940eb5916033f0bc841
https://github.com/dovecot/core/commit/05b7b8f14426b5fe5d016940eb5916033f0bc841
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: b3e36790ca9e16d022118012b46ed50f73a45046
https://github.com/dovecot/core/commit/b3e36790ca9e16d022118012b46ed50f73a45046
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: edaa9f5c32594e7af8c0b862cd3a0c188d55ac7b
https://github.com/dovecot/core/commit/edaa9f5c32594e7af8c0b862cd3a0c188d55ac7b
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: efd72f0559ac15585ec5f48893f2e13eb6cf7738
https://github.com/dovecot/core/commit/efd72f0559ac15585ec5f48893f2e13eb6cf7738
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: 14660f677e16a5c36f3c43e9e64f5e021fda627b
https://github.com/dovecot/core/commit/14660f677e16a5c36f3c43e9e64f5e021fda627b
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: 58a102564ba58e2713e02ab86054978eb611cb81
https://github.com/dovecot/core/commit/58a102564ba58e2713e02ab86054978eb611cb81
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: dd19de9b6382c9a47b65df6b2396789df37a19fb
https://github.com/dovecot/core/commit/dd19de9b6382c9a47b65df6b2396789df37a19fb
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: e5ef6fa616e0b0ed1bf545b39f0d9e8dea48c970
https://github.com/dovecot/core/commit/e5ef6fa616e0b0ed1bf545b39f0d9e8dea48c970
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: 5cdaaf2ecfed02503572935266f55123923ba00a
https://github.com/dovecot/core/commit/5cdaaf2ecfed02503572935266f55123923ba00a
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: 193a587e51288e59d9ed80609e1b8854a24bb708
https://github.com/dovecot/core/commit/193a587e51288e59d9ed80609e1b8854a24bb708
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.
Compare: https://github.com/dovecot/core/compare/94fb15fffc81...193a587e5128
More information about the dovecot-cvs
mailing list