调用httr :: oauth服务令牌()时出现硬崩溃 - 双重自由或损坏(fasttop)

问题描述 投票:3回答:1

我在运行linux的远程服务器上使用httr授权使用谷歌分析API。到目前为止,代码一直运行良好,它仍可在我们的本地机器上运行。不幸的是,由于这是API授权,因此不易重现。

endpoints <- httr::oauth_endpoints('google')
secrets <- jsonlite::fromJSON(PATH_TO_JSON_FILE)
scope <- 'https://www.googleapis.com/auth/analytics'
token <- httr::oauth_service_token(endpoints, secrets, scope)

当在Rstudio服务器上运行时,这会崩溃并显示“R遇到致命错误。会话已终止”的警报。控制台上没有打印错误。

我通过终端(在远程服务器上)运行R时运行相同的代码,这次有一个double free or corruption (fasttop)error,其中包含很多文本,我将打印一些文本。

token <- httr::oauth_service_token(endpoint = endpoints,secrets = secrets,scope = scope)

*** Error in `/usr/lib/R/bin/exec/R': double free or corruption (fasttop): 0x0000000002e5df20 ***
======= Backtrace: =========
/lib/x86_64-linux-gnu/libc.so.6(+0x777e5)[0x7fb846b637e5]
/lib/x86_64-linux-gnu/libc.so.6(+0x8037a)[0x7fb846b6c37a]
/lib/x86_64-linux-gnu/libc.so.6(cfree+0x4c)[0x7fb846b7053c]
/usr/local/lib/R/site-library/openssl/libs/openssl.so(R_base64_encode+0x117)[0x7fb842943557]
/usr/lib/R/lib/libR.so(+0xd2c9c)[0x7fb8471a5c9c]
/usr/lib/R/lib/libR.so(Rf_eval+0x7bd)[0x7fb8471e320d]
/usr/lib/R/lib/libR.so(+0x112cae)[0x7fb8471e5cae]

.... MANY LINES OF THIS AND THEN A NEW SECTION ...

======= Memory map: ========
00400000-00401000 r-xp 00000000 fd:01 523429                             /usr/lib/R/bin/exec/R
00600000-00601000 r--p 00000000 fd:01 523429                             /usr/lib/R/bin/exec/R
00601000-00602000 rw-p 00001000 fd:01 523429                             /usr/lib/R/bin/exec/R
0121f000-0343e000 rw-p 00000000 00:00 0                                  [heap]
7fb83c000000-7fb83c021000 rw-p 00000000 00:00 0 
7fb83c021000-7fb840000000 ---p 00000000 00:00 0 
7fb8421dd000-7fb84247e000 r-xp 00000000 fd:01 7364                       /usr/lib/x86_64-linux-gnu/libcrypto.so.1.1
7fb84247e000-7fb84267d000 ---p 002a1000 fd:01 7364                       /usr/lib/x86_64-linux-gnu/libcrypto.so.1.1 

.... MANY LINES OF THIS ALSO AND IT ENDS WITH ....

7ffcf87a9000-7ffcf880a000 rw-p 00000000 00:00 0                          [stack]
7ffcf884f000-7ffcf8852000 r--p 00000000 00:00 0                          [vvar]
7ffcf8852000-7ffcf8854000 r-xp 00000000 00:00 0                          [vdso]
ffffffffff600000-ffffffffff601000 r-xp 00000000 00:00 0                  [vsyscall]
Aborted (core dumped)

如果显示整个错误会有所帮助,我可以这样做。我研究了双重免费或腐败,它似乎是基本C代码的内存损坏错误。一个名为valgrind的linux工具可以用来深入研究这些问题,并且我使用valgrind作为调试器运行代码输出,但是对我来说它看起来几乎是胡言乱语,但如果有人认为我会编辑它它可能有用。

r httr
1个回答
1
投票

这是一些linux机器上的错误,我怀疑在系统提供的openSSL或curl库中。我正在使用Arch,只需将我的所有软件包恢复一个月就修复了这个错误。

© www.soinside.com 2019 - 2024. All rights reserved.