0

我无法在此处粘贴整个脚本,但我正在解释情况。如果您曾经有泄漏的数据库连接,那么您就会知道我在说什么。

DBI我有一个 R 脚本文件,它有许多使用& RMySQLR 包使用数据库连接的函数(大约 50 个) 。我通过 4 或 5 个函数合并了所有数据库访问。我on.exit(dbDisconnect(db))在每个使用 a 的函数中dbConnect使用。

我发现仅在加载此脚本时使用source("dbscripts.R") 会导致一个数据库连接泄漏。我在运行命令时看到了这个

dbListConnections(MySQL())

[[1]] MySQL连接:0,607>

[[2]] MySQL连接:0,608>

[[3]] MySQL连接:0,609>

[[4]] MySQL连接:0,610>

我每次都会看到一个多数据库连接添加到列表中。这很快达到 16,我的脚本停止工作。

问题是,我无法找出导致泄漏的代码行。我检查dbConnect了代码中的每一行。它们都在函数内dbConnect,在主代码之外没有发生。

那么,为什么会发生连接泄漏?

4

0 回答 0