Назад | Перейти на главную страницу

Ошибка Dovecot: «Порядок сообщений неожиданно изменился» после миграции с курьера

Я настраивал новый почтовый сервер и скопировал на него старую почту нашего клиента. На старом сервере есть Courier (под Plesk), мы используем Dovecot на новом сервере.

Кажется, что большинство учетных записей работают нормально (под IMAP или POP3), но для некоторых мы получаем следующее в /var/log/mail.err.

Error: Message ordering changed unexpectedly (msg #1: storage seq 140 -> 1)
Fatal: Can't finish POP3 UIDL command

И затронутые учетные записи не могут получить доступ к своей электронной почте. Все работает нормально, если люди переходят на IMAP, но для некоторых наших клиентов это является проблемой, поэтому нам действительно нужно, чтобы POP3 работал.

Я использовал данный Perl-скрипт Вот преобразовать почтовые ящики.

Я пробовал искать эти ошибки, и все, что я получаю, ссылается на исходный код Dovecot, и я просто недостаточно знаю о POP3, UIDL или Dovecot, чтобы это могло помочь.

Заранее благодарю за любую помощь.

Что-то пошло не так при миграции, uidl list не был должным образом перенесен, и dovecot не хочет изменять порядок uidl list, потому что это заставит почтовый клиент видеть все сообщения как новые и повторно загружать их.

Могут быть некоторые варианты сценария, которые разрешают эту проблему, но быстрое и грязное решение - удалить dovecot-uidlist и пусть dovecot восстановит его, он заставит клиента повторно загрузить всю свою почту, но после этого uidlist будут действительны, и они будут загружать только новую почту. В конце концов, дубликаты писем - это раздражение, а невозможность получать новые письма - гораздо более серьезная проблема.