Возникла проблема с данным почтовиком. При получении по протоколу pop3 больших (2-3 Мб) писем передача останвавливается на одном и том же месте - на слове, содержащем букву "я". Т.е письмо передается ровно до первой буквы "я", после чего образается. Причем маленькие письма (до 500 кб), содержащие такие же поля проходят нормально. В логах все нормально - клиент подключился, письмо снял, удалил, вышел.
Куда копать?
Решено: Почтовик Zimbra и русская буква "я" в заголовке писем
Модераторы: SLEDopit, Модераторы разделов
-
VZhiK84
- Сообщения: 67
- ОС: OpenSUSE 11.1, SLES 10
-
VZhiK84
- Сообщения: 67
- ОС: OpenSUSE 11.1, SLES 10
Re: Решено: Почтовик Zimbra и русская буква "я" в заголовке писем
Опытным путем только что выяснил, что предел - 1,6 Мб, если письмо больше - оно обрезается по букву "я". Причем по протоколам IMAP и через веб-морду все прекрасно, но всвязи с использование6м спецефического ПО нужно именно pop3.
-
vlakas
- Сообщения: 109
- ОС: Linux Debian
Re: Решено: Почтовик Zimbra и русская буква "я" в заголовке писем
Т.е. вы хотите сказать, что большие письма без буквы "я" скачиваются нормально? Может быть дело в таймаутах или что-то в этом роде, а не с буквой? А логи pop3 сервиса что рисуют?
-
VZhiK84
- Сообщения: 67
- ОС: OpenSUSE 11.1, SLES 10
Re: Решено: Почтовик Zimbra и русская буква "я" в заголовке писем
Была такая мысль, но обрезание не зависит от того, доставляется сообщение локально (100 Мб до почтовика) или на дохлом канале (2 спутниковых прыжка, 2,5 секунды пингов).
Сообщение меньше 1,6 Мб:

Сообщение больше 1,6 Мб:

10-ти метровые файлы без букв "я" в письме доставляются без проблем.
Причем повторяется на всех 3-х почтовиках и только при получении писем по протоколу pop3 (imap и веб-морда работают прекрасно, поэтому заметил только спустя полгода).
Если мне не изменяет память, русская буква "я", написанная в cp1251 означает окончание строки в UTF-8 (или что-то в этом роде).
Но почему письма меньше 1,6 Мб пролазят без проблем, а больше - стопорятся именно на этом символе?
Сообщение меньше 1,6 Мб:

Сообщение больше 1,6 Мб:

10-ти метровые файлы без букв "я" в письме доставляются без проблем.
Причем повторяется на всех 3-х почтовиках и только при получении писем по протоколу pop3 (imap и веб-морда работают прекрасно, поэтому заметил только спустя полгода).
Если мне не изменяет память, русская буква "я", написанная в cp1251 означает окончание строки в UTF-8 (или что-то в этом роде).
Но почему письма меньше 1,6 Мб пролазят без проблем, а больше - стопорятся именно на этом символе?
-
KiWi
- Бывший модератор
- Сообщения: 2521
- Статус: статус, статус, статус
Re: Решено: Почтовик Zimbra и русская буква "я" в заголовке писем
А почтовик небось Outlook?
-
VZhiK84
- Сообщения: 67
- ОС: OpenSUSE 11.1, SLES 10
Re: Решено: Почтовик Zimbra и русская буква "я" в заголовке писем
Почтовик - Zimbra (писалось в названии темы).
Почтовый клиент - любой. На принтскринах показан Thunderbird на opensuse 11.1.
У меня не один почтовый сервер. Но такая проблема только с Зимбрами и только при доставке почты по pop3.
Почтовый клиент - любой. На принтскринах показан Thunderbird на opensuse 11.1.
У меня не один почтовый сервер. Но такая проблема только с Зимбрами и только при доставке почты по pop3.
-
bormant
- Сообщения: 1354
Re: Решено: Почтовик Zimbra и русская буква "я" в заголовке писем
В cp1251 код буквы "я" 255. Если при компиляции char был знаковый, получается -1, который трактуется как EOF -- конец файла.
Предположительно, в ПО реализованы 2 стратегии: при небольшом размере (до 1,6Мб) письмо целиком обрабатывается в памяти, без участия файловых операций, а при превышении этого порога, пишется/читается во временный текстовый файл. Получив при чтении "я", оно же, -1, оно же EOF, считает, что файл окончен и перестает читать его продолжение.
Другого объяснения в голову не приходит.
Предположительно, в ПО реализованы 2 стратегии: при небольшом размере (до 1,6Мб) письмо целиком обрабатывается в памяти, без участия файловых операций, а при превышении этого порога, пишется/читается во временный текстовый файл. Получив при чтении "я", оно же, -1, оно же EOF, считает, что файл окончен и перестает читать его продолжение.
Другого объяснения в голову не приходит.
-
VZhiK84
- Сообщения: 67
- ОС: OpenSUSE 11.1, SLES 10
Re: Решено: Почтовик Zimbra и русская буква "я" в заголовке писем
Огромное спасибо за подсказку!
Теперь я знаю, в каком направлении копать.
Теперь я знаю, в каком направлении копать.
-
VZhiK84
- Сообщения: 67
- ОС: OpenSUSE 11.1, SLES 10
Re: Решено: Почтовик Zimbra и русская буква "я" в заголовке писем
Все, проблема решена.
Если память сервера позволяет, то
zmprov mcf zimbraMessageCacheSize <размер побольше, например, 100000000>
Это позволит ему использовать большой кэш и пропадет необходимость активно использовать временные файлы.
Если память сервера позволяет, то
zmprov mcf zimbraMessageCacheSize <размер побольше, например, 100000000>
Это позволит ему использовать большой кэш и пропадет необходимость активно использовать временные файлы.