Главная страница


ru.unix

 
 - RU.UNIX ----------------------------------------------------------------------
 From : Solar Designer                       2:5020/400     23 Jun 2001  17:17:37
 To : All
 Subject : Re: popa3d & flock & deliver
 -------------------------------------------------------------------------------- 
 
 Maxim Timofeyev <Maxim.Timofeyev@p1.f1763.n5030.z2.fidonet.org> wrote:
 
 > А в чем глубокий смысл делать flock только во время изменений?
 
 (Hе только во время изменений, но и shared лок во время чтения.)
 
 Ровно в том чтобы доставка работала даже во время открытой POP3 сессии
 (или, не ограничиваясь данным примером, запущенного mutt и т.п.).
 
 > Писал я тут deliver, проверяю flock'ом LOCK_EX и все равно deliver
 > доставляет почту, даже когда popa3d читает ящик... Пришлось
 > позакомментаривать LOCK_UN везде и вставить в mailbox_close().
 > Теперь хотя бы deliver ожидает когда же там ящик освободят.
 
 В чем нет ничего хорошего. Вот накопится сотня таких deliver'ов. И еще
 ничего если только одна.
 
 А работа MUA заключается в том числе в том чтобы разобраться что же
 там изменилось в ящике пока лок был снят (разумеется, _перед_ такой
 проверкой лок должен быть получен заново).
 
 Кстати, на Linux'ах все-таки fcntl-локинг ящиков более "стандартен",
 чем flock. То что в popa3d-0.4 поддерживался только flock нехорошо с
 моей стороны. Hе собирался я оставлять ту версию последней так долго.
 Сейчас советую ориентироваться на 0.4.9.x, за которыми последует 0.5.
 
 > P.S. Кстати что лучше: ожидать, пока снимут lock или же сразу отваливаться с
 > EX_TEMPFAIL (для sendmail'а) например (перепосылает sendmail данное сообщение
 > в этом случае)?
 
 Типичный подход -- ожидать, но не дольше чем некоторый таймаут.
 
 > Есть еще вопросик по deliver'у:
 > Как между собой делить сообщения в mailbox'е? Что по этому поводу почитать?
 
 Пустой строкой перед "From " + выставлять правильный Content-Length (если
 для полученного от MTA это почему-то не так) + escape'ить уже имеющиеся в
 сообщении "From "'ы.
 
 > Я ставлю '\n', вроде работает. Правда popa3d добавляет в конце сообщения из-за
 > этого лишний '\n'. Это правильно?
 
 Hесовсем. Это из желания работать с ящиками где после последнего сообщения
 пустой строки нет и нежелания обрабатывать этот случай отдельно. Поправлю.
 Спасибо.
 
 -- 
 /sd
 --- ifmail v.2.15dev5
  * Origin: DataForce ISP (2:5020/400)
 
 

Вернуться к списку тем, сортированных по: возрастание даты  уменьшение даты  тема  автор 

 Тема:    Автор:    Дата:  
 Re: popa3d & flock & deliver   Solar Designer   23 Jun 2001 17:17:37 
 Re: popa3d & flock & deliver   yx   24 Jun 2001 01:36:05 
 Re: popa3d & flock & deliver   Vladimir Dozen   24 Jun 2001 12:16:09 
 Re: popa3d & flock & deliver   yx   24 Jun 2001 16:25:15 
 Re: popa3d & flock & deliver   yx   25 Jun 2001 06:38:26 
 Re: popa3d & flock & deliver   Vladimir Dozen   25 Jun 2001 22:04:50 
 Re: popa3d & flock & deliver   yx   26 Jun 2001 03:34:31 
 Re: popa3d & flock & deliver   Valentin Nechayev   26 Jun 2001 10:51:08 
 Re: popa3d & flock & deliver   Eugene B. Berdnikov   26 Jun 2001 12:04:46 
 Re: popa3d & flock & deliver   Valentin Nechayev   26 Jun 2001 13:58:48 
 Re: popa3d & flock & deliver   Vladimir Dozen   26 Jun 2001 23:14:06 
 Re: popa3d & flock & deliver   yx   27 Jun 2001 04:29:07 
 Re: popa3d & flock & deliver   Vladimir Dozen   26 Jun 2001 23:14:06 
 Re: popa3d & flock & deliver   yx   27 Jun 2001 04:11:02 
 Re: popa3d & flock & deliver   Solar Designer   24 Jun 2001 17:13:26 
 Re: popa3d & flock & deliver   yx   25 Jun 2001 06:18:21 
 Re: popa3d & flock & deliver   Valentin Nechayev   25 Jun 2001 09:18:05 
Архивное /ru.unix/187864f02a998.html, оценка 2 из 5, голосов 10
Яндекс.Метрика
Valid HTML 4.01 Transitional