2016-01-08 9 views
7

Ich bin nicht sicher, wie man ein reproduzierbares Beispiel davon macht, aber ich bin neugierig zu hören, ob jemand anderes dieses Problem begegnet ist. Ich habe eine R Markdown-Datei, die über einen glänzenden Server auf einer EC2-Instanz gehostet wird, auf der Ubuntu läuft. Alles funktioniert gut für Tage und jetzt plötzlich bekomme ich folgende Fehlermeldung, wenn ich versuche, das Dokument im Browser anzuzeigen:pandoc Dokumentumwandlung mit Fehler fehlgeschlagen 127

pandoc document conversion failed with error 127 

Ich Umwandlung nicht zu pdf, wird keine Änderungen geschoben, und es war Arbeit vor ein paar Stunden. Ich finde nicht viel von irgendetwas online über diesen Fehlercode, also habe ich keine Idee, wie man dieses Problem debuggt. War das schon einmal passiert?

+1

Ähnliche Bug hier, mit strick2pdf auf einem privaten Ubuntu-Server. Neustart des Servers half. – cirne

+0

Ja, ich bekomme diesen Fehler oft, wenn mehrere Personen gleichzeitig auf eine Shiny-App zugreifen. Ich denke, es ist erinnerungsbezogen. –

Antwort

0

Kaum zu wissen, was Sie ohne ein Beispiel fragen, aber ich habe den gleichen Fehler bekommen, wenn ich versuche, von einer EC2-Instanz von RStudio auf "html" zu stricken.

Das ist für mich gearbeitet:

library("rmarkdown") 
render("filename.Rmd", "html_document") 
1

ich den gleichen Fehler hatte, wenn sie mit einem aws EC2-Instanz mit Ubuntu 16.04 LTS installiert ist und läuft eine glänzende App arbeiten.

Mein Fix: Ich hatte Code außerhalb der ui und Server-Funktionen meiner App.R-Datei. Ich habe den gesamten externen Code in die Serverfunktion verschoben und der Fehler tritt nicht mehr auf.

Was mich verwirrt war, dass die App die meiste Zeit immer noch funktionierte, obwohl ein Teil des Codes außerhalb dieser beiden Funktionen lag!

Eine andere Sache, die Sie versuchen könnten: Einige Quellen geben an, dass dieser Fehler wegen des Mangels an Speicher auftritt. Um die begrenzte Speichersituation auf aws-Instanzen zu unterstützen, sollten Sie Auslagerungsspeicher bereitstellen, den das System zum Freigeben von Speicher verwenden kann. Ubuntu auf einer aws EC2 Instanz hat standardmäßig keinen Swap Space! Sie können diese Anweisungen verwenden, Google zeigt auch viel: http://www.thegeekstuff.com/2010/08/how-to-add-swap-space/

0

Dies passiert, wenn der RAM für Ihre R-Sitzung vollständig aufgebraucht ist.

Möglicherweise haben Sie Speicherlecks in Ihrem Code.

Die einfachste Lösung ist, die Sitzung neu zu starten.

1

stand ich ein ähnliches Problem heute (unten von .log-Datei):

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 

ich auf einer EC2-Instanz Shiny Server über Ubuntu zu leite, speziell t2.micro. Ich löste dieses Problem, indem Sie die Top-gestimmt Antwort hier: 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 

In den /etc/fstab:

/var/swap.1 swap swap defaults  0 0 

Kurz gesagt, Sie können swap (Speicher) Speicherplatz auf der EBS erstellen (seit t2.micro Instanzen haben Sie keine ephemere Speicherung) und dieses sollte Ihr Speicherproblem lindern (ohne zu einer größeren EC2-Instanz wechseln zu müssen).

Verwandte Themen