Не удается развернуть большие файлы .RDS ish в shinyapp.io в RStudio - PullRequest
0 голосов
/ 17 марта 2019

Я пытаюсь развернуть блестящее приложение от RStudio.Наряду с файлами "ui.r" и "server.r" у меня есть 3 файла .RDS (50 КБ, 15 МБ и 18 МБ), которые я читаю в файле server.r, и они отлично работают локально.Когда я начинаю загрузку, она не может выдать следующую ошибку:

Preparing to deploy application...DONE 
Uploading bundle for application: 794264...
Error in force(code) : Could not upload file. 
Calls: <Anonymous> -> withStatus -> force
Execution halted

Я попытался выбрать файл размером 50 КБ и 15 МБ, который сработал.Когда я выбираю 18 Мб самостоятельно, это работает, но когда я выбираю все три из них, это, кажется, не работает.Я увеличил размер файла до прибл.500 МБ (что, скорее всего, уменьшило размер пакета), используя следующее:

options(rsconnect.max.bundle.files = 500000000)

Насколько я понимаю, оно принимает значение в байтах.

Это было бесплодно.

Я развернул с помощью консоли:

deployApp(appDir="Documents/GitHub/DataScience_JH_Coursera_Assignments/10.Capstone/shinyapp/PredictionText/",logLevel="verbose",lint=TRUE)

Безрезультатно, но мне удалось сосредоточиться на проблемной строке, и я получил следующий журнал:

----- Deployment error -----
Error in force(code) : Could not upload file.

----- Error stack trace -----
4: stop("Could not upload file.")
3: force(code)
2: withStatus(paste0("Uploading bundle for ", assetTypeName, ": ", 
       application$id), {
       bundlePath <- bundleApp(target$appName, appDir, appFiles, 
           appPrimaryDoc, assetTypeName, contentCategory, verbose)
       if (isShinyapps(accountDetails)) {
           bundleSize <- file.info(bundlePath)$size
           checkSum <- md5sum(bundlePath)
           bundle <- client$createBundle(application$id, "application/x-tar", 
               bundleSize, checkSum)
           if (verbose) 
               timestampedLog("Starting upload now")
           if (!uploadBundle(bundle, bundleSize, bundlePath)) {
               stop("Could not upload file.")
           }
           if (verbose) 
               timestampedLog("Upload complete")
           response <- client$updateBundleStatus(bundle$id, status = "ready")
           bundle <- client$getBundle(bundle$id)
       }
       else {
           bundle <- client$uploadApplication(application$id, bundlePath)
       }
   })
1: deployApp(appDir = "Documents/GitHub/DataScience_JH_Coursera_Assignments/10.Capstone/shinyapp/PredictionText/", 
       logLevel = "verbose", lint = TRUE)

Так что этов этом случае, я предполагаю:

if (!uploadBundle(bundle, bundleSize, bundlePath)) {

К вашему сведению, размер моего пакета установлен приблизительно на 3 ГБ, если я выполнил преобразование правильно, когда получил следующее:

getOption("rsconnect.max.bundle.size")
[1] 3145728000

I 'Я застрял на этом в течение 5 дней.Я прочитал все форумы, которые могу прочитать, попытался загрузить файлы по отдельности, но обнаружил, что блестящий / rsconnect до этого удалял экземпляр, поэтому не мог загрузить файлы один за другим.Я даже пытаюсь связываться с файлом .dcf rsconnect и ничего там тоже.Любая помощь / понимание будет высоко ценится.

1 Ответ

0 голосов
/ 18 марта 2019

Мне удалось решить проблему, так как оказалось, что файлы * .RDS были в той же папке, что и файлы server.r и ui.r.Мне просто нужно было создать папку с именем «data» в той же папке, что и файлы * .r, и выгрузить туда файлы * .RDS и выполнить загрузку.

Журналы могли бы быть немного более четкими.

Кроме того, не связано, но это помогло «очистить кеш», перейти к rsconnect и всем последующим папкам, пока вы не достигнете своего файла [appname] .dcf и удалите этот файл.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...