当我尝试在MS R Server上的远程会话中加载data.table包时,出现错误:
REMOTE> library(data.table)
Error: package or namespace load failed for 'data.table'
直接使用命名空间我得到更多颜色:
REMOTE> data.table::data.table(x = 1)
Error: .onLoad failed in loadNamespace() for 'data.table', details:
call: assign("cbind.data.frame", tt, envir = asNamespace("base"), inherits = FALSE)
error: cannot change value of locked binding for 'cbind.data.frame'
有关如何解决此问题的任何建议吗?
这里有一些关于R服务器设置方式以及我如何安装软件包的更多信息:
我在运行这些命令的机器B上创建一个远程会话:
library(mrsdeploy)
remoteLogin("http://machineA:12800",
username = "admin",
password = "xyz",
session = TRUE,
commandline = TRUE)
在远程会话中,我尝试加载data.table包,如上所述在我的问题开头失败。在远程会话中运行.libPath()会给出:
REMOTE> .libPaths()
[1] "C:/RglobalPkgs"
[2] "C:/Program Files/Microsoft/R Server/R_SERVER/library"
答案 0 :(得分:0)
我通过电子邮件向开发团队发送了相关信息。回复如下:
我们已经意识到了这个问题,并将在下一个版本中推出修复程序。 解决方法是使用计算节点转到C:\ Program Files \ Microsoft \ R Server \ R_SERVER \ deployr \ RServe \ RScripts \ source.R并注释掉
# unlockBinding("unlockBinding",b) # assign("unlockBinding", deployr.unlock, envir=b) # lockBinding("unlockBinding", b)
然后转到服务并重新启动RServe9.0.0服务。