Каждый раз, когда я пишу свой R-скрипт, он пропускает соединение БД

Я не могу вставить весь сценарий здесь, но я объясняю ситуацию. Если у вас когда-либо были утечки соединений с БД, вы бы знали, о чем я говорю.

У меня есть файл сценария R, который имеет много функций (около 50), которые используют соединения БД, используя DBI & RMySQL Р. пакеты. Я консолидировал весь доступ к БД через 4 или 5 функций. я использую on.exit(dbDisconnect(db)) в каждой функции, где dbConnect используется.

Я обнаружил, что только при загрузке этого скрипта с помощью source("dbscripts.R") вызывает утечку одного соединения с БД. Я вижу это, когда запускаю команду

dbListConnections(MySQL())

[[1]] MySQLConnection: 0,607>

[[2]] MySQLConnection: 0,608>

[[3]] MySQLConnection: 0,609>

[[4]] MySQLConnection: 0,610>

Я вижу еще одно соединение с БД, добавляемое в список каждый раз. Это быстро достигает 16, и мой скрипт перестает работать.

Проблема в том, что я не могу выяснить, какая строка кода вызывает утечку. Я проверил каждый dbConnect строка в коде. Все они в функциях и нет dbConnect происходит снаружи в основном коде.

Итак, почему происходит утечка соединения?

0 ответов

Другие вопросы по тегам