У меня есть некоторый код, который генерирует отчет в огромном файле .csv.
Это включает в себя 5 тыс. Строк кода с различными пользовательскими функциями, которые применяются к 80 базам данных - скажем так, это сложно и не очень Не нужно описывать. Конечный продукт - CSV с 3 столбцами и ~ 90 млн строк.
Процедура:
- импорт файла-отчета .csv
- make al oop for 80 базы данных, выполнить код для каждой
- для каждой базы данных - записать промежуточный результат в текущий каталог как .csv
До я использовал свой локальный p c с 8Gb RAM, 8 ядрами, хорошим компьютером среднего класса. Это было сложно, 5 часов выполнения, но все было в порядке, проверено 999 раз, ошибок нет.
Сейчас , я на Windows Server 2016, монстр ВМ со 112Gb Оперативная память, 64 ядра и c.
Вопрос:
Почему я получаю следующее сообщение: Error: memory exhausted (limit reached?)
или Error: bad value
без подробностей после обработки 10 баз данных из 80?
Пока нет большого вектора для распределения, вся моя среда занимает около 30 Мб, а компьютер использует только 1% своих возможностей. За одну итерацию код обрабатывает 1 базу данных не более 300 МБ, плюс 3-4 небольших кадра данных по 4-5 МБ.
Что я пропустил? Где go получить информацию об этом типе ошибки?