Ошибка: C использование стека 7971540 слишком близко к пределу - Странное поведение функции предупреждения - PullRequest
0 голосов
/ 10 января 2020

В настоящее время я работаю над пакетом R и сталкиваюсь со следующей проблемой:

A <- function(){
   if(nchar(Sys.getenv("API_URL_SEND")) == 0){
     warning("No API address for SEND is set, setting .eu address.")     
     }
}


B <- function(){
   if(nchar(Sys.getenv("API_URL_SEND")) == 0){
     warning("No API address for SEND is set, setting .eu address.", call. = FALSE)     
   }
}

Обе функции идентичны, за исключением того, что функция B использовала call. = FALSE, но мои результаты озадачивают для я:

A()
Error: C stack usage  7971540 is too close to the limit
B()
Warning message:
In "\"\"" : No API address for SEND is set, setting .eu address.

Есть идеи?

Заранее спасибо!


> Sys.info()
                                      sysname 
                                      "Linux" 
                                      release 
                          "4.15.0-72-generic" 
                                      version 
"#81-Ubuntu SMP Tue Nov 26 12:20:02 UTC 2019" 
                                     nodename 
                                 "******-Ubuntu" 
                                      machine 
                                     "x86_64" 
                                        login 
                                        "*"
                                         user 
                                        "*" 
                               effective_user 
                                        "*" 

R info:

R version 3.4.4 (2018-03-15) -- "Someone to Lean On"
Copyright (C) 2018 The R Foundation for Statistical Computing
Platform: x86_64-pc-linux-gnu (64-bit)

ulimit - а:

(base) ben@ben-Ubuntu:~$ ulimit -a
core file size          (blocks, -c) 0
data seg size           (kbytes, -d) unlimited
scheduling priority             (-e) 0
file size               (blocks, -f) unlimited
pending signals                 (-i) 31336
max locked memory       (kbytes, -l) 16384
max memory size         (kbytes, -m) unlimited
open files                      (-n) 1024
pipe size            (512 bytes, -p) 8
POSIX message queues     (bytes, -q) 819200
real-time priority              (-r) 0
stack size              (kbytes, -s) 8192
cpu time               (seconds, -t) unlimited
max user processes              (-u) 31336
virtual memory          (kbytes, -v) unlimited
file locks                      (-x) unlimited
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...