Ho provato ad aggiornare Discourse, ma ho ricevuto questo messaggio:
Spiacenti, si è verificato un errore durante l’aggiornamento di Discourse. Si prega di controllare i log riportati di seguito.
********************************************************
*** Si prega di attendere, i prossimi passaggi potrebbero richiedere del tempo ***
********************************************************
Riavvio di Unicorn per liberare memoria
Riavvio di unicorn pid: 663
In attesa del ricaricamento di Unicorn.
In attesa del ricaricamento di Unicorn..
In attesa del ricaricamento di Unicorn...
In attesa del ricaricamento di Unicorn....
Utilizzo di oj 3.10.15
Utilizzo di optimist 3.0.1
Utilizzo di pg 1.2.3
Utilizzo di r2 0.2.7
Utilizzo di raindrops 0.19.1
Utilizzo di rchardet 1.8.0
Utilizzo di rinku 2.0.6
Utilizzo di rotp 6.2.0
Utilizzo di rqrcode_core 0.1.2
Utilizzo di rtlit 0.0.5
Utilizzo di rubyzip 2.3.0
Utilizzo di tilt 2.0.10
Utilizzo di sshkey 2.0.0
Utilizzo di stackprof 0.2.16
Utilizzo di unf_ext 0.0.7.7
Utilizzo di xorcist 1.1.2
Utilizzo di i18n 1.8.5
Utilizzo di tzinfo 1.2.7
Utilizzo di nokogiri 1.10.10
Utilizzo di rack-test 1.1.0
Utilizzo di mail 2.7.1
Utilizzo di addressable 2.7.0
Utilizzo di aws-sigv4 1.2.0
Utilizzo di barber 0.12.2
Utilizzo di cose 1.2.0
Utilizzo di ember-data-source 3.0.2
Utilizzo di sprockets 3.7.2
Utilizzo di discourse_image_optim 0.26.2
Utilizzo di faraday 1.1.0
Utilizzo di request_store 1.5.0
Utilizzo di message_bus 3.3.4
Utilizzo di pry 0.13.1
Utilizzo di rack-mini-profiler 2.2.0
Utilizzo di rack-protection 2.1.0
Utilizzo di uglifier 4.2.0
Utilizzo di logstash-logger 0.26.1
Utilizzo di mini_racer 0.3.1
Utilizzo di sidekiq 6.1.2
Utilizzo di mini_suffix 0.3.0
Utilizzo di nokogumbo 2.0.2
Utilizzo di omniauth 1.9.1
Utilizzo di puma 5.0.4
Utilizzo di rbtrace 0.4.14
Utilizzo di redis-namespace 1.8.0
Utilizzo di rqrcode 1.1.2
Utilizzo di ruby-readability 0.7.0
Utilizzo di sassc 2.0.1
Utilizzo di unf 0.1.4
Utilizzo di unicorn 5.7.0
Utilizzo di webpush 1.0.0
Utilizzo di activesupport 6.0.3.3
Utilizzo di loofah 2.7.0
Recupero di bootsnap 1.5.0
Utilizzo di ember-handlebars-template 0.8.0
Utilizzo di mini_scheduler 0.12.3
Utilizzo di oauth2 1.4.4
Utilizzo di omniauth-oauth 1.1.0
Utilizzo di sanitize 5.2.1
Utilizzo di pry-byebug 3.9.0
Utilizzo di pry-rails 0.3.9
Utilizzo di rails-dom-testing 2.0.3
Utilizzo di rails-html-sanitizer 1.3.0
Utilizzo di globalid 0.4.2
Utilizzo di activemodel 6.0.3.3
Utilizzo di aws-sdk-core 3.99.1
Utilizzo di css_parser 1.7.1
Utilizzo di actionview 6.0.3.3
Utilizzo di activejob 6.0.3.3
Utilizzo di active_model_serializers 0.8.4
Utilizzo di activerecord 6.0.3.3
Utilizzo di aws-sdk-kms 1.31.0
Utilizzo di aws-sdk-sns 1.25.1
Utilizzo di omniauth-oauth2 1.7.0
Utilizzo di omniauth-twitter 1.4.0
Utilizzo di onebox 2.1.4
Utilizzo di actionpack 6.0.3.3
Utilizzo di actionview_precompiler 0.2.3
Utilizzo di aws-sdk-s3 1.66.0
Utilizzo di omniauth-facebook 8.0.0
Utilizzo di omniauth-github 1.4.0
Utilizzo di omniauth-google-oauth2 0.8.0
Utilizzo di seed-fu 2.3.9
Utilizzo di actionmailer 6.0.3.3
Utilizzo di railties 6.0.3.3
Utilizzo di sprockets-rails 3.2.2
Utilizzo di jquery-rails 4.4.0
Utilizzo di lograge 0.11.2
Utilizzo di rails_failover 0.5.7
Utilizzo di rails_multisite 2.5.0
Utilizzo di sassc-rails 2.1.2
Utilizzo di discourse-ember-rails 0.18.6
Installazione di bootsnap 1.5.0 con estensioni native
Bundle completo! 123 dipendenze del Gemfile, 161 gemme ora installate.
Le gemme nei gruppi test e development non sono state installate.
Le gemme del bundle sono installate in `./vendor/bundle`
$ bundle exec rake plugin:pull_compatible_all
docker_manager è già all'ultima versione compatibile
discourse-data-explorer è già all'ultima versione compatibile
$ SKIP_POST_DEPLOYMENT_MIGRATIONS=1 bundle exec rake multisite:migrate
Il migratore multisito è in esecuzione con 1 thread
Migrazione del sito predefinito
== 20201027110546 CreateLinkedTopics: in corso ===============================
-- create_table(:linked_topics)
-\u003e 0.0524s
-- add_index(:linked_topics, [:topic_id, :original_topic_id], {:unique=\u003etrue})
-\u003e 0.0066s
-- add_index(:linked_topics, [:topic_id, :sequence], {:unique=\u003etrue})
-\u003e 0.0045s
== 20201027110546 CreateLinkedTopics: migrato (0.0676s) ======================
Inserimento dati per il sito predefinito
[...]\n\n\nCompletata la compressione di locales/ko-0c530732e52b234cd31ea1959ec4b5127cfcc2cb5b076d4999abfa0530e5bba5.js : 0.11 secondi\n\n8625116.65540771 Compressione in corso: application-1e74fe54a11795d2a94b9b90ac1f18294214d956e95b882737a05319d5d11ff9.js\nuglifyjs '/var/www/discourse/public/assets/_application-1e74fe54a11795d2a94b9b90ac1f18294214d956e95b882737a05319d5d11ff9.js' -m -c -o '/var/www/discourse/public/assets/application-1e74fe54a11795d2a94b9b90ac1f18294214d956e95b882737a05319d5d11ff9.js' --source-map \"base='/var/www/discourse/public/assets',root='/assets',url='/assets/application-1e74fe54a11795d2a94b9b90ac1f18294214d956e95b882737a05319d5d11ff9.js.map'\"\nUcciso\nDocker Manager: AGGIORNAMENTO FALLITO\n#\u003cRuntimeError: RuntimeError\u003e\n/var/www/discourse/plugins/docker_manager/lib/docker_manager/upgrader.rb:178:in `run'\n/var/www/discourse/plugins/docker_manager/lib/docker_manager/upgrader.rb:86:in `upgrade'\n/var/www/discourse/plugins/docker_manager/scripts/docker_manager_upgrade.rb:19:in `block in \u003cmain\u003e'\n/var/www/discourse/plugins/docker_manager/scripts/docker_manager_upgrade.rb:6:in `fork'\n/var/www/discourse/plugins/docker_manager/scripts/docker_manager_upgrade.rb:6:in `\u003cmain\u003e'\n/var/www/discourse/vendor/bundle/ruby/2.6.0/gems/bootsnap-1.4.9/lib/bootsnap/load_path_cache/core_ext/kernel_require.rb:59:in `load'\n/var/www/discourse/vendor/bundle/ruby/2.6.0/gems/bootsnap-1.4.9/lib/bootsnap/load_path_cache/core_ext/kernel_require.rb:59:in `load'\n/var/www/discourse/vendor/bundle/ruby/2.6.0/gems/railties-6.0.3.3/lib/rails/commands/runner/runner_command.rb:42:in `perform'\n/var/www/discourse/vendor/bundle/ruby/2.6.0/gems/thor-1.0.1/lib/thor/command.rb:27:in `run'\n/var/www/discourse/vendor/bundle/ruby/2.6.0/gems/thor-1.0.1/lib/thor/invocation.rb:127:in `invoke_command'\n/var/www/discourse/vendor/bundle/ruby/2.6.0/gems/thor-1.0.1/lib/thor.rb:392:in `dispatch'\n/var/www/discourse/vendor/bundle/ruby/2.6.0/gems/railties-6.0.3.3/lib/rails/command/base.rb:69:in `perform'\n/var/www/discourse/vendor/bundle/ruby/2.6.0/gems/railties-6.0.3.3/lib/rails/command.rb:46:in `invoke'\n/var/www/discourse/vendor/bundle/ruby/2.6.0/gems/railties-6.0.3.3/lib/rails/commands.rb:18:in `\u003cmain\u003e'\n/var/www/discourse/vendor/bundle/ruby/2.6.0/gems/bootsnap-1.4.9/lib/bootsnap/load_path_cache/core_ext/kernel_require.rb:23:in `require'\n/var/www/discourse/vendor/bundle/ruby/2.6.0/gems/bootsnap-1.4.9/lib/bootsnap/load_path_cache/core_ext/kernel_require.rb:23:in `block in require_with_bootsnap_lfi'\n/var/www/discourse/vendor/bundle/ruby/2.6.0/gems/bootsnap-1.4.9/lib/bootsnap/load_path_cache/loaded_features_index.rb:92:in `register'\n/var/www/discourse/vendor/bundle/ruby/2.6.0/gems/bootsnap-1.4.9/lib/bootsnap/load_path_cache/core_ext/kernel_require.rb:22:in `require_with_bootsnap_lfi'\n/var/www/discourse/vendor/bundle/ruby/2.6.0/gems/bootsnap-1.4.9/lib/bootsnap/load_path_cache/core_ext/kernel_require.rb:31:in `require'\n/var/www/discourse/vendor/bundle/ruby/2.6.0/gems/activesupport-6.0.3.3/lib/active_support/dependencies.rb:324:in `block in require'\n/var/www/discourse/vendor/bundle/ruby/2.6.0/gems/activesupport-6.0.3.3/lib/active_support/dependencies.rb:291:in `load_dependency'\n/var/www/discourse/vendor/bundle/ruby/2.6.0/gems/activesupport-6.0.3.3/lib/active_support/dependencies.rb:324:in `require'\nbin/rails:17:in `\u003cmain\u003e'\nAvvio di 1 worker(i) di Unicorn che erano inizialmente fermi
La tua macchina ha RAM e swap adeguate? I comandi free o top possono dirtelo. Inoltre, puoi provare a eseguire dmesg | egrep -3i kill
per verificare se ci sono informazioni su un processo terminato. Sospetto un problema di memoria esaurita (il killer OOM).
Well, oddly enough, my upgrade just failed the same way! I had successfully updated docker manager and data explorer, and got the ‘killed’ failure at the same step, running uglifyjs on the same file.
I have a Digital Ocean droplet with 1G RAM and 2G swap, and a relatively small forum (a backup is 700MByte)
A costo di un breve periodo di inattività, sono riuscito a completare l’aggiornamento applicando la consueta soluzione alternativa:
./launcher rebuild app
Tuttavia, dato che 1 GB di RAM + 2 GB di swap costituiscono la configurazione minima consigliata per un forum di piccole dimensioni, sembra che qualcosa non vada.
Durante la ricostruzione, l’utilizzo della memoria virtuale non è stato eccessivo: il punto più basso, durante lo stesso processo di uglifyjs, è stato
# free
total used free shared buff/cache available
Mem: 1009264 380204 537900 5712 91160 510756
Swap: 2097144 498540 1598604
Questo è probabilmente legato alle modifiche del gestore Docker che tentano di mantenere il sito attivo più a lungo durante l’aggiornamento, il che avrebbe aumentato i requisiti di RAM durante l’aggiornamento.
La ricostruzione del contenitore funzionerà sempre perché porta temporaneamente il sito offline, ottenendo così la massima RAM disponibile.