问题
I'm not sure how to make a reproducible example of this, but I'm curious to hear if anyone else has encountered this problem. I have an R Markdown file hosted via shiny server on an EC2 instance running Ubuntu. Everything was working fine for days and now suddenly I get the following error when I try to view the document in the browser:
pandoc document conversion failed with error 127
I'm not converting to pdf, haven't pushed any changes, and it was working a few hours ago. I'm not finding much of anything online about this error code so I have no idea how to debug this issue. Anyone had this happen before?
回答1:
I faced a similar issue today (see below from .log file):
Warning in system(command) : system call failed: Cannot allocate memory
Warning: Error in : pandoc document conversion failed with error 127
Stack trace (innermost first):
105: pandoc_convert
104: convert
103: render
102: discover_rmd_resources
101: find_external_resources
100: copy_render_intermediates
99: output_format$intermediates_generator
98: <Anonymous>
97: do.call
96: contextFunc
95: .getReactiveEnvironment()$runWith
94: shiny::maskReactiveContext
93: <reactive>
82: doc
81: shiny::renderUI
80: func
79: origRenderFunc
78: output$__reactivedoc__
3: <Anonymous>
2: do.call
1: rmarkdown::run
I too am running Shiny Server via Ubuntu on an EC2 instance, specifically t2.micro
. I solved this issue by following the top-voted answer here: How do you add swap to an EC2 instance?
sudo /bin/dd if=/dev/zero of=/var/swap.1 bs=1M count=1024
sudo /sbin/mkswap /var/swap.1
sudo chmod 600 /var/swap.1
sudo /sbin/swapon /var/swap.1
Add to /etc/fstab
:
/var/swap.1 swap swap defaults 0 0
In short, you can create swap (memory) space on your EBS (since t2.micro
instances don't have ephemeral storage) and this should alleviate your memory issue (without having to move up to a larger EC2 instance).
回答2:
I had the same error when working with an aws EC2 instance with Ubuntu 16.04 LTS installed and running a shiny app.
My fix: I had some code outside the ui and server functions of my app.R file. I moved all outside code into the server function and the error no longer occurs.
What confused me was that the app still worked most of the time even though some of the code was outside these two functions!
Another thing you could try: Some sources state that this error occurs due to lack of memory. To aid limited memory situation on aws instances, you should provide swap space the system can use to free up memory. Ubuntu on an aws EC2 instance by default has zero swap space! You can use these instructions, google also shows plenty: http://www.thegeekstuff.com/2010/08/how-to-add-swap-space/
回答3:
This happens when the RAM allocated to your R session is used up completely.
You may have memory leaks in your code.
The simplest fix is to restart the session.
回答4:
Hard to know for certain what you are asking without an example, but I got the same error trying to "knit to html" from an EC2 instance of RStudio.
This worked for me:
library("rmarkdown")
render("filename.Rmd", "html_document")
回答5:
I got a similar error when I tried to produce a pdf_document with RStudio from a RMarkdown file. As far as I know: Error 127 means "file not found". Either the file is not there or the path is incorrect.
In my case I got the additional information, that ghostscript
was not found. I had recently installed the new version of MacTex with Homebrew. But
Homebrew does … conflict with ghostscript as installed by MacTex https://github.com/Homebrew/homebrew-core/issues/11368
My solution was to create the symlink to ghostscript
as suggested here:
Ghostscript not writable
sudo chown -R `whoami` /usr/local/share/ghostscript
brew link --overwrite ghostscript
回答6:
The recommended solution is following: 1. Check where R is installed (Lets say it is C drive) 2. Make some space free in C drive from atleast 10 GB recommended 3. Happy Coding
来源:https://stackoverflow.com/questions/34687030/pandoc-document-conversion-failed-with-error-127