
Dmitry
13.02.2017
18:34:54
если xml большая (правда 10 мб это смешно. у нас по 3-4гб бывают)

Kirill
13.02.2017
18:35:19

Dmitry
13.02.2017
18:35:27
их никто "в память" не загружает

Google

Dmitry
13.02.2017
18:35:32
нормальные парсеры умеют стрим

Kirill
13.02.2017
18:35:55

Quet
13.02.2017
18:35:59

Kirill
13.02.2017
18:36:13

Антон
13.02.2017
18:36:21
ну допустим в память

Dmitry
13.02.2017
18:36:30
но зачем? ну допустим.
хрен бы с ним :) в память так в память

Quet
13.02.2017
18:36:52

Kirill
13.02.2017
18:37:00

Dmitry
13.02.2017
18:37:01
10мб xml? в телефон?

Антон
13.02.2017
18:37:08
запускал на компе)
под gcviz

Quet
13.02.2017
18:37:35
и упёрся в память? 50мб все сожрали и все сломалось?

Google

Kirill
13.02.2017
18:37:42
так вопрос в чем?

Quet
13.02.2017
18:37:59
я чёт тоже не понял вопроса )

Антон
13.02.2017
18:38:07
да херня, меня больше беспокоило (до тех пор пока во всём не разобрался) в том, что с каждым циклом память росла

Kirill
13.02.2017
18:38:12
потому, что его еще не было.

Dmitry
13.02.2017
18:38:13
вопрос: зачем так жить? xml в телефоне :)

Антон
13.02.2017
18:38:14
мегабайт на 3-5

Kirill
13.02.2017
18:38:37

Антон
13.02.2017
18:38:38
т.е. пара-тройка циклов норм, а потом рост
вопрос в чём
я знаю в чём (ес чё)))

Quet
13.02.2017
18:39:35
поток сознания какой-то )) извините )

Антон
13.02.2017
18:40:27
вопрос на самом деле в том, как используя стандартный пакет xml сделать парсинг довольного большого xml файла с константным потреблением памяти

Kirill
13.02.2017
18:40:36

Антон
13.02.2017
18:40:48
а если демон живёт долго

Kirill
13.02.2017
18:41:14

Антон
13.02.2017
18:41:20
а вот и нет

Quet
13.02.2017
18:41:27
а зачем константа? 10 мб это даже не близко к "довольно большому" размеру для того чтобы стоило начинать смотреть в сторону потоковых парсеров

Антон
13.02.2017
18:41:36
10 мб на диске
в оперативе - это ~50 мб

Google

Антон
13.02.2017
18:41:54
ибо уникод

Quet
13.02.2017
18:42:13
ну 50
фигня
и нет, не из-за уникода

Мерлин
13.02.2017
18:42:56
Код в студию

Kirill
13.02.2017
18:43:13

Quet
13.02.2017
18:43:20
в сторону потоковых парсеров можно смотреть когда счёт идёт на гигабайты, но не на несчастные 10мб

Мерлин
13.02.2017
18:44:15
Я вообще не понимаю вопроса.
Каждую итерацию цикла парсится xml?
И через некоторое время всё встаёт раком?
Или что?

Quet
13.02.2017
18:44:35

Антон
13.02.2017
18:46:28
потому как я реально побился головой о стену

Denis
13.02.2017
18:47:11
Интригует

Quet
13.02.2017
18:47:20
то что течёт эт вилами по воде ещё

Kirill
13.02.2017
18:47:25

Quet
13.02.2017
18:47:32
может все там ок
а меряли какую-нибудь виртуальную память

Антон
13.02.2017
18:48:03
я уже точно знаю где утечка) Да, это в моём коде, но это нифига не очевидно))

Denis
13.02.2017
18:48:30
Не томи

Quet
13.02.2017
18:48:54
ну или так, ошибся
каким боком тут го и рантайм? на любом языке можно написать так чтобы текло

Kirill
13.02.2017
18:49:12
давайте поиграем в вангочат
new()?

Google

Denis
13.02.2017
18:49:25
Поборол желание )

Kirill
13.02.2017
18:49:27
make()?
append()?
+?

Denis
13.02.2017
18:50:21
В оригинале иначе:)

Антон
13.02.2017
18:51:16
это далеко не продакшен, а наоборот, исследование

Admin
ERROR: S client not available

Антон
13.02.2017
18:51:34
ща найду код, который течёт по памяти

Kirill
13.02.2017
18:51:50
так может и причину найдешь?

Quet
13.02.2017
18:51:55
исследование стандартной библиотеки го? )

Антон
13.02.2017
18:52:03

Kirill
13.02.2017
18:52:15

Антон
13.02.2017
18:52:28

Kirill
13.02.2017
18:52:37

Denis
13.02.2017
18:52:50
Интрига растет

Quet
13.02.2017
18:53:31

Мерлин
13.02.2017
18:53:59
make()?
big_data := make([]byte, 1«32)
copy(big_data, big_data)

Антон
13.02.2017
18:54:22

Мерлин
13.02.2017
18:55:08
Ты ржёшь, а я знаю чувака, который подобное делал в игрушке, чтобы бинарник был больше

Google

Kirill
13.02.2017
18:55:19

Мерлин
13.02.2017
18:56:42

Kirill
13.02.2017
18:57:17

Антон
13.02.2017
18:57:53
http://pastebin.com/B8xiP816
развлекайтесь)) Вопрос в том: память течёт, но на каждом цикле обновления rkn по чуть чуть (~5мб не более) и не вычащается сборщиком никогда (тест шёл более 2х суток)
xml - роскомнадзор. Её размер ~10мб

Kirill
13.02.2017
19:00:39
зачем ты слайсу такой cap повеисл?

Антон
13.02.2017
19:00:49

Kirill
13.02.2017
19:01:05
бесполезная трата памяти

Антон
13.02.2017
19:01:11
хочу сразу создать массив нужной длинны (с запасом)
список роскомнадзора ~56000 элементов

Kirill
13.02.2017
19:01:35
незачем

Антон
13.02.2017
19:01:50

Quet
13.02.2017
19:01:56
чёт кажется там хмл вообще никаким боком
забыл какой-нибудь ридер закрыть и все

Kirill
13.02.2017
19:02:08