Download raw body.
mail/dovecot: fix infinity loop in replicator
ports@,
Here a patch which fixed an infinity loop inside dovecot replicator when it
is used with any value of replication_sync_timeout.
This patch was backported to upstream as
https://github.com/dovecot/core/pull/223 but replicator was removed from the
next release and I doubt that it will be merged.
Anyway, I'm using it for a more than a week and quite happy with it.
Index: Makefile
===================================================================
RCS file: /cvs/ports/mail/dovecot/Makefile,v
retrieving revision 1.318
diff -u -p -r1.318 Makefile
--- Makefile 16 Aug 2024 10:56:01 -0000 1.318
+++ Makefile 4 Oct 2024 21:53:30 -0000
@@ -11,6 +11,7 @@ COMMENT-postgresql= PostgreSQL authentic
V_MAJOR= 2.3
V_DOVECOT= 2.3.21.1
EPOCH= 0
+REVISION= 0
DISTNAME= dovecot-${V_DOVECOT}
PKGNAME= dovecot-${V_DOVECOT}
Index: patches/patch-src_replication_replicator_replicator-queue_c
===================================================================
RCS file: patches/patch-src_replication_replicator_replicator-queue_c
diff -N patches/patch-src_replication_replicator_replicator-queue_c
--- /dev/null 1 Jan 1970 00:00:00 -0000
+++ patches/patch-src_replication_replicator_replicator-queue_c 4 Oct 2024 21:53:30 -0000
@@ -0,0 +1,11 @@
+Index: src/replication/replicator/replicator-queue.c
+--- src/replication/replicator/replicator-queue.c.orig
++++ src/replication/replicator/replicator-queue.c
+@@ -333,6 +333,7 @@ replicator_queue_handle_sync_lookups(struct replicator
+ } else {
+ array_push_back(&callbacks, &lookups[i]);
+ array_delete(&queue->sync_lookups, i, 1);
++ count--;
+ }
+ }
+
--
wbr, Kirill
mail/dovecot: fix infinity loop in replicator