[英]Firestore Failed to get document because the client is offline error
[英]pandoc document conversion failed with error 127
我不確定如何制作一個可重現的例子,但我很想知道是否有其他人遇到過這個問題。 我在運行 Ubuntu 的 EC2 實例上通過 shiny 服務器托管了一個 R Markdown 文件。 幾天來一切正常,現在當我嘗試在瀏覽器中查看文檔時突然出現以下錯誤:
pandoc document conversion failed with error 127
我沒有轉換為 pdf,沒有進行任何更改,而且它在幾個小時前就開始工作了。 我在網上找不到關於此錯誤代碼的任何信息,因此我不知道如何調試此問題。 以前有人發生過這種情況嗎?
我今天遇到了類似的問題(請參閱下面的 .log 文件):
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
我也在 EC2 實例上通過 Ubuntu 運行 Shiny Server,特別是t2.micro
。 我按照此處投票最高的答案解決了這個問題: 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
添加到/etc/fstab
:
/var/swap.1 swap swap defaults 0 0
簡而言之,您可以在 EBS 上創建交換(內存)空間(因為t2.micro
實例沒有臨時存儲),這應該可以緩解您的內存問題(無需移動到更大的 EC2 實例)。
在使用安裝了 Ubuntu 16.04 LTS 的 aws EC2 實例並運行閃亮的應用程序時,我遇到了同樣的錯誤。
我的解決方法:我在 app.R 文件的 ui 和服務器功能之外有一些代碼。 我將所有外部代碼移至服務器函數中,錯誤不再發生。
讓我感到困惑的是,即使某些代碼不在這兩個函數之外,該應用程序大部分時間仍然可以運行!
您可以嘗試的另一件事:一些消息來源指出此錯誤是由於內存不足而發生的。 為了幫助 aws 實例上的內存有限情況,您應該提供系統可用於釋放內存的交換空間。 默認情況下,AWS EC2 實例上的 Ubuntu 交換空間為零,您可以使用這些說明:谷歌也顯示了很多: http ://www.thegeekstuff.com/2010/08/how-to-add-swap-space/
當分配給您的 R 會話的 RAM 完全用完時,就會發生這種情況。
您的代碼中可能存在內存泄漏。
最簡單的修復是重新啟動會話。
沒有例子很難確定你在問什么,但我在嘗試從 RStudio 的 EC2 實例“編織到 html”時遇到了同樣的錯誤。
這對我有用:
library("rmarkdown")
render("filename.Rmd", "html_document")
當我嘗試使用 RStudio 從 RMarkdown 文件生成 pdf_document 時,我遇到了類似的錯誤。 據我所知:錯誤 127 表示“找不到文件”。 該文件不存在或路徑不正確。
在我的例子中,我得到了額外的信息,沒有找到ghostscript
。 我最近用 Homebrew 安裝了新版本的 MacTex。 但
Homebrew 確實……與 MacTex 安裝的 ghostscript 沖突https://github.com/Homebrew/homebrew-core/issues/11368
我的解決方案是按照此處的建議創建到ghostscript
的符號鏈接: Ghostscript 不可寫
sudo chown -R `whoami` /usr/local/share/ghostscript
brew link --overwrite ghostscript
推薦的解決方案如下: 1. 檢查R的安裝位置(假設它是 C 驅動器) 2. 在 C 驅動器中騰出一些空間,建議至少 10 GB 3. 快樂編碼
使用 knitr::kable() 將 tibble 轉換為表格時出現此錯誤
錯誤:pandoc 文檔轉換失敗,錯誤 127 6.stop("pandoc 文檔轉換失敗,錯誤", result, call. = FALSE) 5. rmarkdown::pandoc_convert(input = rmarkdown::pandoc_path_arg(mdfile), to = "html ", output = rmarkdown::pandoc_path_arg(htmlfile)) 4. print.knit_asis(knitr::asis_output(x)) 3. print(knitr::asis_output(x)) 2. print.knitr_kable(x) 1. (函數(x, ...) UseMethod("打印"))(x)
我試過:
a) 重新啟動會話以刷新內存 b) 安裝最新的 pandocs 版本
但它仍然不起作用......
非常感謝你。
我知道這是一個老問題,但正如 vivek 提到的,重新啟動服務器對我有用:
sudo systemctl restart shiny-server
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.