@proelixir

Страница 898 из 1045
Dmitry
05.03.2018
10:31:16
Т.е. открытых issue == 0.

Vladimir Открытые issue есть? https://github.com/ericmj/ex2ms/issues Нету. "были какие-то баги" => Но при этом не открыто ни одного bug репорта.

Vladimir
05.03.2018
10:32:33
"были какие-то баги" => Но при этом не открыто ни одного bug репорта.
Это я писал. А мне лень было. Я просто взял работающее решение.

Google
Dmitry
05.03.2018
13:11:48
@Slavenin Так def handle_event(type, event, state) do ... end

Максим
05.03.2018
13:12:08
он в этом режиме тоже будет работать?

Dmitry
05.03.2018
13:12:21
Да.

Максим
05.03.2018
13:19:12
благодарю

Vladimir
05.03.2018
13:24:21
Но в целом да, если что-то можно написать без макросов - нужно писать без макросов.

Vladimir
05.03.2018
13:25:57
ну parse_transform в Эрланге это ядерное оружие которое применяют только по праздникам, и только если без этого никак. Нет такой беды как в Эликсире.

Vladimir
05.03.2018
13:31:35
В Clojure макросы без крайней нужды тоже не используют. А эликсир... мне кажца, что такое обилие макросов встречается искоючительно из-за того, что "потомушто можно". Самоограничений нет и dialyzer не используют. А потом проблемы возникнут.

Dmitry
05.03.2018
13:53:33
Vladimir Помимо рекордов что еще в ex2ms не работало?

Vladimir
05.03.2018
13:54:11
остальное не проверял, мне нужны были именно они

Максим
05.03.2018
14:44:10
Подскажите, есть Registry, запускается как supervisor(Registry, [:unique, :account_process_registry], id: :RegistryAcoount), процессы добавляются через {:via, Registry, {:account_process_registry, account_id}} но Registry.lookup(:account_process_registry, id) ничего не находит. Что я сделал не так?

Никита
05.03.2018
14:56:31
:RegistryAcoount ?)

Yury
05.03.2018
15:42:58
iex(1)> [:a ...(1)> ,:b ...(1)> ] ** (SyntaxError) iex:2: syntax error before: ',' Только мне кажется syntax error тут странным? в Erlang так писать можно

Google
Vladimir
05.03.2018
15:43:59
бага наверное

Zwei
05.03.2018
15:56:36
Не знаю как после Эрланга, а после Руби не кажется странным

Тоже бэкслэши дописывать нужно iex(3)> [:a \ ...(3)> ,:b \ ...(3)> ] [:a, :b]

Yury
05.03.2018
16:11:06
буду знать, спасибо

Dmitry
05.03.2018
16:15:11
ex2ms из мастера поддерживает рекорды теперь.

Alex
05.03.2018
16:51:51
Dmitry
05.03.2018
18:25:15
А на последней зачем?

?
05.03.2018
18:44:06
А на последней зачем?
Чтобы легко добавить ещё одну

Vladimir
05.03.2018
18:55:56
И чтобы в гите не было лишнего, когда ты только запятую поменял в строчке

Максим
05.03.2018
19:09:14
Вот из-за таких разночтений мне эликсир рвёт мозг непрерывно

Alex
05.03.2018
20:52:36
Вот из-за таких разночтений мне эликсир рвёт мозг непрерывно
Я так пишу везде, где позволяет синтаксис. Красивенькие диффы получаются. В жрланге нельзя, мне от этого очень печально

Azat
06.03.2018
02:37:21
А мне нравятся макросы, кол-во бойлерплейт кода можно уменьшить с их помощью

https://yos.io/2016/04/24/mixins-in-elixir/

Няшно ведь

Alex
06.03.2018
04:07:27
https://yos.io/2016/04/24/mixins-in-elixir/
Вот как раз с use можно перегнуть палку. Я пробовал понять, как работают каналы в фениксе, на третьем уровне use мне стало как-то неуютно

Evgeny
06.03.2018
07:14:48
макросы на эликсире читать тяжко, да же те, которые сам написал :)

так что да, как можно меньше

Dmitry
06.03.2018
07:25:36
Use это вообще не считай не макрос - эта штука которую вообще все знают

Это такой же макрос как if

Максим
06.03.2018
07:29:10
:RegistryAcoount ?)
** (ArgumentError) unknown registry: :RegistryAcoount

Google
Evgeny
06.03.2018
07:29:37
Acount

Никита
06.03.2018
07:29:43
Ну вопрос к куче опечаток в коде))

в одном месте Account в другом Acoount

и там еще куча была)

Максим
06.03.2018
07:30:00
он запускался с той же опечаткой

Evgeny
06.03.2018
07:30:03
:D

Максим
06.03.2018
07:30:32
при чём тут опечатки? как найти процесс в регистри?

Артем
06.03.2018
07:38:39
@Virviil а нет ли каких-то хотя бы примеров использования agala, раз доки нет? имхо сча проще собрать лонг поллинг на своём генсервере чем пытаться в коде разобраться

Максим
06.03.2018
07:49:18


блин, оно в нескольких ets лежит Х_Х

причём с отправкой сообщений проблем нет

только поиск не работает нифига

Артем
06.03.2018
08:01:08
оо, тебе удалось запустить эту тулзу

Максим
06.03.2018
08:01:25
а есть с этим проблема?

два основных условия: нода запущена через —name и —cookie равны

при этом обзервер запущен локально, а нода на серваке

хрень какая-то.... похоже пора переходить на gproc

думал втроенными средствами обойтись

но похоже не судьба...

Артем
06.03.2018
08:20:47
@midster хотелось бы уточнить, что вставить в else: def check_exchanges_connections() do current_time = :os.system_time(:milli_seconds) :ets.tab2list(:trade_timestamps) |> Enum.each(fn trade_timestamp -> {stream_name, last_data_timestamp} = trade_timestamp if current_time - last_data_timestamp > 60_000 do Nadia.send_message(Application.get_env(:nadia, :chat_id), "Stream #{stream_name} - last data recieved #{current_time - last_data_timestamp} ms ago") end end) {:ok} end

Google
Dmitry
06.03.2018
08:23:27
@Slavenin Registry.lookup(registry, key) - вот так процесс находится в Registry.

Максим
06.03.2018
08:23:52
Registry.lookup(:task_process_registry, id)

Dmitry
06.03.2018
08:36:24
@Slavenin https://gist.github.com/liveforeverx/64e28863ea8ccf398c6ca62950c74a9c

Работает.

Как регистрируются аккаунты? Можно ещё код посмотреть?

Кусок, где они регистрируются

Максим
06.03.2018
08:37:12
да, я разобрался уже, пытался найти процесс до его попадания в регистр :)

Dmitry
06.03.2018
08:38:22
Ок ?

Максим
06.03.2018
08:41:58
благодарю за помощь!?

кстати, может, кому интересно будет, наткнулся на забавный пример регистра с самоуничтожающимися процессами https://github.com/amokan/registry_sample/blob/master/lib/registry_sample/account.ex

кстати, к вопросу об универсальном перехватчике в fsm, при callback_mode: :state_functions handle_event не работает







пытается найти функцию, последнего состояния

с соответсвующими параметрами

Alex
06.03.2018
08:47:54
все, что лежит в памяти, будет продолбано

все, что лежит в памяти, сожрет всю память при скачке нагрузки

Google
Alex
06.03.2018
08:53:16
кстати, к вопросу об универсальном перехватчике в fsm, при callback_mode: :state_functions handle_event не работает
что-то мне не кажется, что function_clause это "не работает". по-моему, у тебя паттерн неправильный написан

Максим
06.03.2018
08:53:30
о_О

при таком варианте handle_event должен перехватывать любой вызов, для которого нет callback

либо я чего-то не понял

Alex
06.03.2018
08:55:02
handle_event({call,From}, code_length, #{code := Code} = Data) -> {keep_state, Data, [{reply,From,length(Code)}]}.пример из документации. не замечаешь разницу?

стоп, нет

Максим
06.03.2018
08:55:28
мне не нужен call, мне нужен cast

Dmitry
06.03.2018
08:56:16
Это у меня только скриншоты обрезаны?

Что не понятно до конца что там произошло вообще.

Максим
06.03.2018
08:57:21
процесс TaskFsm находится на стадии finish

Страница 898 из 1045