I have a replication set up with two dovecot 2.3.4 servers.

Messages appear to be replicating fine between them, however there is an oddity when I run doveadm replicator status '*' and I'm worried work is being carried out needlessly.

Both machines have identical configs and have a mysql backend for username/passwords.  Both machines point to the same mysql server and same tables.

When I run

doveadm user '*'

On either machine I am presented with the same correct list of users.  The users are presented in the form: username and not username@domain.

When I run

doveadm replicator status '*'

On either machine I receive a list of usernames which includes not only username but also username@domain.  Both of these "accounts" have fast sync, full sync and success sync entries and these are not the same times between username and username@domain (hence I'm worried unnecessary work is being carried out).

My ee dovecot-sql.conf.ext

Has these entires re usernames

user_query = SELECT home, uid, gid FROM users WHERE username = '%n'

password_query = SELECT username AS user, domain, password, home AS userdb_home, uid AS userdb_uid, gid AS userdb_gid FROM users WHERE username = '%u'

[Having copied these in I do see the different usage of %u and %n]

iterate_query = SELECT username AS user,domain FROM users

The users table is as follows

+--------------+--------------+------+-----+---------+-------+
| Field        | Type         | Null | Key | Default | Extra |
+--------------+--------------+------+-----+---------+-------+
| username     | varchar(128) | NO   |     | NULL    |       |
| domain       | varchar(128) | NO   |     | NULL    |       |
| password     | varchar(64)  | NO   |     | NULL    |       |
| home         | varchar(255) | NO   |     | NULL    |       |
| uid          | int(11)      | NO   |     | NULL    |       |
| gid          | int(11)      | NO   |     | NULL    |       |
| active       | char(1)      | NO   |     | Y       |       |
| mail_replica | varchar(255) | NO   |     | NULL    |       |
+--------------+--------------+------+-----+---------+-------+

I assume that the duplication of username with and without domains isn't as intended, any suggestions where I am going wrong?

I did previously have the servers running with the iterate query commented out and when that was the case

doveadm user '*'

returned the correct number of accounts but in the format username@domain and the replicator status again 'double listed' accounts as described above.

Thank you for any tips!



--
Daniel Schütze

Director



------------------

CWA International
Balmoral House
9 John Street
London
WC1N 2ES

(t) + 44 (0)20 7242 8444
(e)  d...@cwa.uk.com
(w)  http://www.cwa.uk.com/

Reply via email to