On 1/28/25 11:53 AM, Aki Tuomi wrote:
It's maybe
https://github.com/dovecot/core/commit/d3a097075afb7b5d8955978ed4a2ae99add11f88.patch
That was still giving me occasional crashes.
This seems to not crash, but I don't know that it is sensible:
--- a/src/replication/replicator/replicator-queue.c
+++ b/src/replication/replicator/replicator-queue.c
@@ -286,17 +286,19 @@ replicator_queue_handle_sync_lookups(struct
replicator_queue *queue,
lookups = array_get_modifiable(&queue->sync_lookups, &count);
for (i = 0; i < count; ) {
if (lookups[i].user != user)
- i++;
+ {
+ // Skip user.
+ }
else if (lookups[i].wait_for_next_push) {
/* another sync request came while user was being
replicated */
i_assert(user->priority ==
REPLICATION_PRIORITY_SYNC);
lookups[i].wait_for_next_push = FALSE;
- i++;
} else {
array_push_back(&callbacks, &lookups[i]);
array_delete(&queue->sync_lookups, i, 1);
}
+ i++;
}
array_foreach_modifiable(&callbacks, lookups)
Reactions?
-kb
_______________________________________________
dovecot mailing list -- dovecot@dovecot.org
To unsubscribe send an email to dovecot-le...@dovecot.org