h2o 脚本无法通过 cron 运行
h2o script fails to run via cron
当 运行 R 脚本与 h2o
库通过 linux 中的 cron
时,我遇到了困难。
脚本在交互模式下运行完美,但在 cron
中计划时脚本失败。
部分错误代码:
automl_h2o_models <- h2o.automl(
x = predictors,
y = target,
training_frame = train_conv_h2o,
leaderboard_frame = valid_conv_h2o,
max_runtime_secs = 3600,
seed = 1234
)
当 max_runtime_secs
设置为 1800
时没有问题,但任何超出此值的值都会导致以下错误。
Error in .h2o.doSafeREST(h2oRestApiVersion = h2oRestApiVersion, urlSuffix = page, :
Unexpected CURL error: getaddrinfo() thread failed to start
我在 Ubuntu 20.04,R 版本 3.6.3,h2o 版本 3.32.1.3
此问题与 linux 中的描述符设置有关。当运行脚本处于交互模式时,cron
环境与系统环境不同。
作为解决方案,我在 cron
中使用了额外的参数:
0 18 21 6 * ulimit -nS 1048576 && Rscript <script_name>
然后错误消失,脚本 运行 正确。
当 运行 R 脚本与 h2o
库通过 linux 中的 cron
时,我遇到了困难。
脚本在交互模式下运行完美,但在 cron
中计划时脚本失败。
部分错误代码:
automl_h2o_models <- h2o.automl(
x = predictors,
y = target,
training_frame = train_conv_h2o,
leaderboard_frame = valid_conv_h2o,
max_runtime_secs = 3600,
seed = 1234
)
当 max_runtime_secs
设置为 1800
时没有问题,但任何超出此值的值都会导致以下错误。
Error in .h2o.doSafeREST(h2oRestApiVersion = h2oRestApiVersion, urlSuffix = page, :
Unexpected CURL error: getaddrinfo() thread failed to start
我在 Ubuntu 20.04,R 版本 3.6.3,h2o 版本 3.32.1.3
此问题与 linux 中的描述符设置有关。当运行脚本处于交互模式时,cron
环境与系统环境不同。
作为解决方案,我在 cron
中使用了额外的参数:
0 18 21 6 * ulimit -nS 1048576 && Rscript <script_name>
然后错误消失,脚本 运行 正确。