
Denis
13.06.2018
21:01:27
Или платные ответы, ещё лучше
Да яж шучу

Oleg
13.06.2018
21:01:42
но платные ответы это норм

Denis
13.06.2018
21:01:54
Типа "не могу молчать!" Ок, 30 рублей в кассу и говори

Google

Oleg
13.06.2018
21:02:30
кстати, а бот dlangbot это чьё?
который типа компилировать может
ну, я имею ввиду этот человек тут или нет?)

Pavel
13.06.2018
21:04:10
Не местное, иначе автор бы тут прорекламил )

Oleg
13.06.2018
21:04:42

Evil
13.06.2018
22:50:54
Мдэ

Pavel
13.06.2018
22:54:39
Это новый модный HTML синтаксис D
Все это собирается вебпаком в приложение на электроне, и синтаксический анализатор D транспилирует в JS

Oleg
13.06.2018
23:20:07
Мдэ
у тебя с браузером что-то

Evil
13.06.2018
23:26:58
Внешний ок, да

Google

Dark
14.06.2018
07:18:21

Denis
14.06.2018
08:10:25

Valeriy
14.06.2018
08:35:25
A new version of dub package tsv-utils-dlang 1.1.20 has been released
Ebay продолжает контрибьютить. Не забрасывает
Радует это

Dark
14.06.2018
08:42:52

Valeriy
14.06.2018
08:43:24
Фейсбук, например забросил некоторые проекты на D -- печально.

Dmitry
14.06.2018
08:44:31

Valeriy
14.06.2018
10:30:46
Сделали сервак бота на D.
Течёт память

Denis
14.06.2018
10:31:37

Valeriy
14.06.2018
10:31:39
# sz SZ size in physical pages of the core image of the process. This includes text, data, and stack space. Device mappings are currently excluded; this is subject to change. See vsz and rss.
# rss RSS resident set size, the non-swapped physical memory that a task has used (in kiloBytes). (alias rssize, rsz).
# size SIZE approximate amount of swap space that would be required if the process were to dirty all writable pages and then be swapped out. This number is very rough!
Из man ps

Denis
14.06.2018
10:31:56
может память течёт не в коде API Telegram

Valeriy
14.06.2018
10:32:00
Вот чем вообще профилировать и как узнать где течёт

Denis
14.06.2018
10:32:01
телегу юзаете?

Valeriy
14.06.2018
10:32:24

Google

Denis
14.06.2018
10:32:42
А, уфф

Valeriy
14.06.2018
10:33:06
А, уфф
Не ну ты всё равно подмогни.
Куда копать. Чем профилировать ?

Denis
14.06.2018
10:33:18
Я обычно по наитию действую
бот вообще может своё состояние сохранять и перезагружаться иногда

Valeriy
14.06.2018
10:34:20
Вот в плюсах я всегда valgrind юзал и проблем не знал.
А чем в D ищут утечки?

Stanislav
14.06.2018
10:37:27
а с ди валграйнд не работает?
а ну хотя не подумал про GC

Valeriy
14.06.2018
10:39:21

Denis
14.06.2018
10:40:05
это выгоднее чем гонять GC, например

Pavel
14.06.2018
11:04:02

Valeriy
14.06.2018
11:05:16

Pavel
14.06.2018
11:06:09
Он знает, но 1600 мегабайт не выглядит как огромное число на котором надо чистить память
Смотря сколько у вас оперативки и свободной памяти остается

Valeriy
14.06.2018
11:09:12
Хм. А что если процессу принудительно ограничить лимит оперативы?
ulimit -Sv 204800 , например?

Dmitry
14.06.2018
11:10:01
Да нифига, он должен чистить, когда в пуле нет свободной, а пулы мегов по 8 обычно.

Stepanos
14.06.2018
11:38:26
Вопрос. на D есть какае-то ORM с норм реализацие миграций?

Pavel
14.06.2018
12:21:39
Но в то же время был другой опыт когда я действительно не отпускал класс сокета и он так и оставался навсегда висеть хотя не использовался - это можно считать userspace утечкой

qwerty
14.06.2018
12:39:54

Google

qwerty
14.06.2018
12:40:12
по-моему других вообще нет(
а вот еще что-то https://github.com/huntlabs/entity

Stepanos
14.06.2018
12:44:03
ни там ни там нет миграций
какой-то другой сервис поищу на другом язьіке

Denis
14.06.2018
14:11:25
или юзай монгу через vibe

Stepanos
14.06.2018
14:12:28
Vibe кака, я сейчас Hunt смотрю

Denis
14.06.2018
14:12:48
А hunt не кака почему?

Pavel
14.06.2018
14:28:54
Потому что он еще не посмотрел :D

Dmitry
14.06.2018
14:36:41

Admin
ERROR: S client not available

Denis
14.06.2018
14:37:34
там какая-то странная китайская поделка без задач
спрашивал у них - они внятно не ответили в чём фишка
пилят там что-то своё, и на этом всё

Oleg
14.06.2018
14:54:24

Valeriy
14.06.2018
14:56:04
Я вот сейчас пробовал через ulimit ограничивать. Дорастает до лимита и перестаёт отвечать на запросы.
Попробовал collect после каждого запроса вызывать.
Посмотрим что получится
Буду после выходных буду разбираться с valgrind. Как его с D увязать

Google

Stepanos
14.06.2018
15:16:01
А hunt не кака почему?
я когда-то Vibe разбирал, надо бьіло сделать регистрацию API на лету, там код пиздец, наркоманом написан
в Hunt только реализацию шаблонов смотрел - понять смог что там делаеться)) ето уже победа

Oleg
14.06.2018
15:16:45

Valeriy
14.06.2018
15:17:08
Засада :)

Oleg
14.06.2018
15:23:40
хм

Denis
14.06.2018
15:24:10
Вот реально выгоднее время от времени сервис грохать чем постоянно GC гонять
првоерено уже

Valeriy
14.06.2018
15:31:05
В совсем крайнем случае ребутить буду.
Самое интересное, я когда начинал, GC на синтетических тестах гонял. Он доростал до определенного предела, потом всё собирал и опять как было.
Т.е. выглядело это всё вполне пригодно.

Denis
14.06.2018
15:33:17

Valeriy
14.06.2018
15:33:38
Скорее всего есть конкретное место утечки. Узнать бы как его найти.

Denis
14.06.2018
15:33:58
эмпирически - доабвляй destroy везде)

Oleg
14.06.2018
15:52:38

Valeriy
14.06.2018
16:10:01

Oleg
14.06.2018
16:10:56
если их можно устранить, то нужно начать с этого
если есть malloc-free-managment, тоже переделать на GC
если только в нём нет 100% уверенности

Pavel
14.06.2018
16:19:29
Ассоциативные массивы вроде же есть в std.containers
Если не хочется GC