Size: a a a

2020 April 08

SP

Sergey Prokhorov in ErlangRus
Если там тысячи сообщений, то проблема может быть в selective receive. Правда я не помню этот receive он в prim_inet или в gen_tcp
источник

SP

Sergey Prokhorov in ErlangRus
источник

SP

Sergey Prokhorov in ErlangRus
Но вообще известная проблема. Не уверен что она документирована где-то
источник

SP

Sergey Prokhorov in ErlangRus
источник

SP

Sergey Prokhorov in ErlangRus
источник

VV

Valerii Vasylkov in ErlangRus
Sergey Prokhorov
А сильно выросла очередь?
33k )
источник

VV

Valerii Vasylkov in ErlangRus
спасибо, очень похоже
источник

ML

Maksim Lapshin in ErlangRus
Valerii Vasylkov
Всем привет
Erlang/OTP 17.3
стоклнулся с зависшим процессом на функции:
prim_inet:send/3

Счетчик редукций не увеличивался долгое время, но из-за входящих сообщений расла очередь
send_timeout установлен 30 секунд

кто может сталкивался с таким? Как решали?
Интересно, зачем вообще обсуждать софт 6-летней давности?
источник

R

Rus in ErlangRus
Valerii Vasylkov
Всем привет
Erlang/OTP 17.3
стоклнулся с зависшим процессом на функции:
prim_inet:send/3

Счетчик редукций не увеличивался долгое время, но из-за входящих сообщений расла очередь
send_timeout установлен 30 секунд

кто может сталкивался с таким? Как решали?
tcpdump смотрели? может быть приемник зажал TCP window.
попробуйте использовать вариант
erlang:port_command(Socket, Data, [nosuspend]).
источник

TH

Taras Halturin in ErlangRus
xhajag
так, вопрос...
есть супервизор, у него есть процессы - генсервера одного типа, по генсерверу на каждого подключенного клиента.
когда клиент отваливается - нужно остановить генсервер и удалить его из супервизора.
если я правильно понял для реализации нужно -
если это все происходит в cast
1) дернуть  супервизора delete_child
2) в call сервера вернуть кортеж вида {stop, normal, State}
Но блин, все равно падает(
Возможно стоит внимательней перечитать документацию по супервизорам и стратегиям перезапуска, чтобы подобрать подходящий. Там чтива на 5 минут, но ответ там найдется 100%. Это быстрее, эффективнее, чем здесь описывать суть своей задачи и возникшей проблемы.
источник

c🦊

cleverfox 🦊 in ErlangRus
Maksim Lapshin
Интересно, зачем вообще обсуждать софт 6-летней давности?
Иногда обновить ERTS сложно
источник

c🦊

cleverfox 🦊 in ErlangRus
хотя согласен что если это дальше эксплуатировать стоило бы постараться мигрировать на что-то поновее
источник

c🦊

cleverfox 🦊 in ErlangRus
у меня R15 еще работает в одном месте и есть не просит
источник

VV

Valerii Vasylkov in ErlangRus
Rus
tcpdump смотрели? может быть приемник зажал TCP window.
попробуйте использовать вариант
erlang:port_command(Socket, Data, [nosuspend]).
tcp дампа нет, но идея про nosuspend здравая, спасибо, перепроверю сейчас все флаги и добавлю
источник

VV

Valerii Vasylkov in ErlangRus
cleverfox 🦊
Иногда обновить ERTS сложно
в процессе, но приоритетом разобраться с этим
источник

c🦊

cleverfox 🦊 in ErlangRus
Valerii Vasylkov
в процессе, но приоритетом разобраться с этим
может оказаться что после обновления ты сразу забудешь об этой проблеме
источник

c🦊

cleverfox 🦊 in ErlangRus
после обновления ты о ней забудешь либо  потому что все заработало, либо потому что совсем все разломалось 😂
источник

ŹR

Źmićer Rubinštejn in ErlangRus
Ребят, кто шарит в нифках - почему может быть такая хрень?
источник

ŹR

Źmićer Rubinštejn in ErlangRus
Ну т.е. где проеб - в эрланге или в сишечке?
источник

c🦊

cleverfox 🦊 in ErlangRus
Źmićer Rubinštejn
Ребят, кто шарит в нифках - почему может быть такая хрень?
а что нифка делает?
источник