BerkleyDb JE DbDump Необычное использование памяти - PullRequest
0 голосов
/ 14 июня 2011

Мы используем BDB JE в одном из наших приложений, а DbDump для резервного копирования базы данных. Интересные вещи произошли однажды. DbDump начинает выбрасывать OutOfMemoryError. Посмертный анализ показывает, что внутренними узлами BDB используется много памяти (IN). Похоже, что BerkleyDB читает все наборы данных в памяти при резервном копировании, что довольно странно для меня.

Другим странным фактом является то, что это поведение видно только тогда, когда окружение открыто самим приложением. Поэтому, когда DbDumb является единственным клиентом, открывающим среду, все кажется нормальным.

1 Ответ

0 голосов
/ 30 июня 2011

Рассматривали ли вы вместо этого DbBackup? Я знаю, что они делают две разные вещи, но если все, что вам нужно сделать, это сделать резервную копию базы данных, нет необходимости извлекать все это в память, когда просто скопировать файлы в другом месте. Или решающим фактором является способность командной строки?

...