please appreciate that i
am trying to help ....
after much testing i can now reporduce the replication issues at
hand
I am running on freebsd 12 & 13 stable (both test and
production servers)
sdram drives etc ...
Basically replication works fine until reaching a folder quantity
of ~ 256 or more
to reproduce using doveadm i created folders like
INBOX/folder-0
INBOX/folder-1
INBOX/folder-2
INBOX/folder-3
and so forth ......
I created 200 folders and they replicated ok on both servers
I created another 200 (400 total) and the replicator got stuck and
would not update the mbox on the alternate server anymore and is
still updating 4 days later ?
basically replicator goes so far and either hangs or more likely
bails on an error that is not reported to the debug reporting ?
however dsync will sync the two servers but only when run manually
(ie all the folders will sync)
I have two test servers avaliable if you need any kind of access -
again here to help.
[07:28:42] mail18.scom.ca [root:0] ~
# sync.status
Queued 'sync' requests
0
Queued 'high' requests
6
Queued 'low' requests
0
Queued 'failed' requests
0
Queued 'full resync' requests
0
Waiting 'failed' requests
0
Total number of known users
255
username type
status
paul@scom.ca normal Waiting for dsync to
finish
keith@elirpa.com incremental Waiting for dsync to
finish
ed.hanna@dssmgmt.com incremental Waiting for dsync to
finish
ed@scom.ca incremental Waiting for dsync to
finish
nick@elirpa.com incremental Waiting for dsync to
finish
paul@paulkudla.net incremental Waiting for dsync to
finish
i have been going through the c code and it seems the replication
gets requested ok
replicator.db does get updated ok with the replicated request for
the mbox in question.
however i am still looking for the actual replicator function in
the lib's that do the actual replication requests
the number of folders & subfolders is defanately the issue -
not the mbox pyhsical size as thought origionally.
if someone can point me in the right direction, it seems either
the replicator is not picking up on the number of folders to
replicat properly or it has a hard set limit like 256 / 512 /
65535 etc and stops the replication request thereafter.
I am mainly a machine code programmer from the 80's and have
concentrated on python as of late, 'c' i am starting to go through
just to give you a background on my talents.
It took 2 months to finger this out.
this issue also seems to be indirectly causing the duplicate
messages supression not to work as well.
python programming to reproduce issue (loops are for last run
started @ 200 - fyi) :
# cat mbox.gen
#!/usr/local/bin/python2
import os,sys
from lib import *
user = 'paul@paulkudla.net'
"""
for count in range (0,600) :
box = 'INBOX/folder-%s' %count
print count
command = '/usr/local/bin/doveadm mailbox create -s -u %s
%s' %(user,box)
print command
a = commands.getoutput(command)
print a
"""
for count in range (0,600) :
box = 'INBOX/folder-0/sub-%' %count
print count
command = '/usr/local/bin/doveadm mailbox create -s -u %s
%s' %(user,box)
print command
a = commands.getoutput(command)
print a
#sys.exit()