java.lang.OutOfMemoryError: GC overhead limit exceeded при вычитывнии
JdbcTemplate.query(запрос, new RowCallbackHandler() {
public void processRow(@NonNull ResultSet resultSet) throws SQLException {
дает ошибку по памяти. есть способ вычитывать данные частями не все сразу?
Ответы (1 шт):
Автор решения: Килобайт
→ Ссылка
Для того, чтобы избежать ошибки
"java.lang.OutOfMemoryError: GC overhead limit exceeded"
при чтении большого объема данных, можно использовать подход "чтение частями" (chunking). Для этого можно использовать методы из ResultSet, например setFetchSize(), а также использовать пагинацию при запросах к базе данных. Это позволит обрабатывать данные поблочно, по мере необходимости, и не загружать всю выборку в память сразу.