Показать сообщение отдельно
  #343  
Старый 11.07.2022, 04:54
Nil A
Guest
 
Сообщений: n/a
По умолчанию hpt lock

Nil A написал(а) к Stas Mishchenkov в Jul 22 02:45:40 по местному времени:

Нello, Stas!

Tuesday July 05 2022 09:21, from Stas Mishchenkov -> Michael Dukelsky:

MD>> Если ты сделаешь скрипт, срабатывающий, когда тоссится почта, то
MD>> он с большой вероятностью искорёжит базу сообщений. Надо ждать
MD>> окончания тоссинга. Максимальное время ожидания задаётся
MD>> параметром AdvisoryLock в конфиге hpt.
SM> Вот именно так у меня иногда hpt post и не дожидается.

Лок на весь хаски - это удобство для программиста хаски, но по факту костыль. Как когда-то в ядре линукса был глобальный лок, до изобретения приемшена. Как до сих пор в питоне ГИЛ всю многопоточность портит, возможно в каком-нибудь питон4 переделают.

Лок на весь хаски - это значит параллельно не запустишь хаски как эхотоссер, и отдельно треккер? Надо их запускать последовательно из скрипта, и быть уверенным, что ни из крона, ни из бинка, по прибытию файлов, не запускается ещё хаски?

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

Между хаски и БСО-совместимым мейлером, например, тоже локи на линк отрабатывают нормально - хаски знает, что нельзя натоссивать бандлы на активный линк.

Так от чего защищает лок хаски? От самого себя, проверяя там всякие очереди на автоматическую отписку на эхи и пр? Или он считает, что всё что во временном каталоге - это только он может трогать как угодно, потому что он там один запущен? Уже сегодня хаски, когда берёт бандл из инбаунда, он его переименовывает атомарно и дальше с ним работает, так то проблемы нет.

Best Regards, Nil
--- GoldED+/LNX 1.1.5
Ответить с цитированием