Error in fetch(key) : lazy-load database

后端 未结 7 1499
甜味超标
甜味超标 2020-12-04 16:17

I don\'t know what is going on, everything was working great but suddenly I started to have this error message on the documentation:

Error in fetch(ke

7条回答
  •  伪装坚强ぢ
    2020-12-04 17:03

    Basically all answers require restarting R to resolve the issue, but I found myself in an environment where I really didn't want to restart R.

    I am posting here a somewhat hack-ish solution suggested by Jim Hester in a bug report about the lazy-load corruption issue.

    The gist of it is that the package may have some vestigial S3 methods listed in session's .__S3MethodsTable__. environment. I don't have a very systematic way of identifying which S3 methods in that environment come from where, but I think a good place to start is the print methods, and looking for S3method registrations in the package's NAMESPACE.

    You can then remove those S3 methods from the .__S3MethodsTable__. environment and try again, e.g.

    rm(list="print.object", envir = get(".__S3MethodsTable__.", envir = baseenv()))
    

    You may also need to unload some DLLs if some new messages come up like

    no such symbol glue_ in package /usr/local/lib/R/site-library/glue/libs/glue.so

    You can check getLoadedDLLs() to see which such files are loaded in your session. In the case of glue here, the following resolved the issue:

    library.dynam.unload('glue', '/usr/local/lib/R/site-library/glue')
    

提交回复
热议问题