失败的R实例+ RODBC

时间:2011-07-14 15:14:00

标签: r parallel-processing rodbc

快速提问:我正在使用RODBC连接在批处理模式下并行运行多个R实例,并且随机的一个(或多个)实例失败。如果我回过头来逐个运行实例,那么所有实例都是成功的。日志中没有错误,我只想推断出问题的确切位置。我的主要假设是我遇到内存堆顶部并且实例失败,或者(更可能)RODCB连接发生了某种时间。有什么建议吗?

谢谢,

吉姆

1 个答案:

答案 0 :(得分:2)

目前尚不清楚为什么没有错误显示,也许您可​​以尝试options(error = recover)

使用多个数据库连接时,我曾经遇到以下错误:

Error in mysqlExecStatement(conn, statement, ...) : 
  RS-DBI driver: (connection with pending rows, close resultSet before continuing)

在发出新查询之前,通过发出以下行来关闭所有打开的连接来避免此错误:

lapply(dbListConnections(MySQL()), dbDisconnect)

我从R help list获取此代码。


更新:我的一位合作者创建了一个suite of functions来促进数据库互动,包括db.condb.opendb.closedb.query用过:

## load functions
source("https://raw.github.com/PecanProject/pecan/master/db/R/utils.R")

## example
params <- list(dbname = "mydb", username = "myname", password = "!#@?$")
con <- db.open(params)
mydata <- db.query("select * from mytable;")
db.close(con)