L’aggiornamento da Commits · discourse/discourse · GitHub all’ultima versione ha causato il blocco del sito; ecco alcuni segmenti significativi dei log:
I, [2022-02-15T05:27:48.995821 #1] INFO -- : Sostituzione di (?-mix:^host.*all.*all.*127.*$) con host all all 0.0.0.0/0 md5 in /etc/postgresql/13/main/pg_hba.conf
I, [2022-02-15T05:27:48.997476 #1] INFO -- : Sostituzione di (?-mix:^host.*all.*all.*::1\/128.*$) con host all all ::/0 md5 in /etc/postgresql/13/main/pg_hba.conf
I, [2022-02-15T05:27:48.998553 #1] INFO -- : > HOME=/var/lib/postgresql USER=postgres exec chpst -u postgres:postgres:ssl-cert -U postgres:postgres:ssl-cert /usr/lib/postgresql/13/bin/postmaster -D /etc/postgresql/13/main
I, [2022-02-15T05:27:49.003918 #1] INFO -- : > sleep 5
2022-02-15 05:27:49.151 UTC [41] LOG: avvio di PostgreSQL 13.5 (Debian 13.5-1.pgdg110+1) su x86_64-pc-linux-gnu, compilato con gcc (Debian 10.2.1-6) 10.2.1 20210110, 64-bit
2022-02-15 05:27:49.152 UTC [41] LOG: in ascolto sull'indirizzo IPv4 "0.0.0.0", porta 5432
2022-02-15 05:27:49.152 UTC [41] LOG: in ascolto sull'indirizzo IPv6 "::", porta 5432
2022-02-15 05:27:49.162 UTC [41] LOG: in ascolto sulla socket Unix "/var/run/postgresql/.s.PGSQL.5432"
2022-02-15 05:27:49.184 UTC [44] LOG: il sistema di database è stato arrestato alle 2022-02-15 00:12:32 UTC
2022-02-15 05:27:49.209 UTC [41] LOG: il sistema di database è pronto ad accettare connessioni
I, [2022-02-15T05:27:54.013563 #1] INFO -- :
I, [2022-02-15T05:27:54.015179 #1] INFO -- : > su postgres -c 'createdb discourse' || true
2022-02-15 05:27:54.259 UTC [54] postgres@postgres ERROR: il database "discourse" esiste già
2022-02-15 05:27:54.259 UTC [54] postgres@postgres STATEMENT: CREATE DATABASE discourse;
createdb: errore: creazione del database fallita: ERROR: il database "discourse" esiste già
I, [2022-02-15T05:27:54.270626 #1] INFO -- :
I, [2022-02-15T05:27:54.272627 #1] INFO -- : > su postgres -c 'psql discourse -c "create user discourse;"' || true
2022-02-15 05:27:54.425 UTC [58] postgres@discourse ERROR: il ruolo "discourse" esiste già
2022-02-15 05:27:54.425 UTC [58] postgres@discourse STATEMENT: create user discourse;
ERROR: il ruolo "discourse" esiste già
I, [2022-02-15T05:27:54.431376 #1] INFO -- :
I, [2022-02-15T05:27:54.431915 #1] INFO -- : > su postgres -c 'psql discourse -c "grant all privileges on database discourse to discourse;"' || true
I, [2022-02-15T05:27:54.533010 #1] INFO -- : GRANT
I, [2022-02-15T05:27:55.303411 #1] INFO -- : > echo redis installato
I, [2022-02-15T05:27:55.310858 #1] INFO -- : redis installato
I, [2022-02-15T05:27:55.312551 #1] INFO -- : > cat /etc/redis/redis.conf | grep logfile
I, [2022-02-15T05:27:55.323276 #1] INFO -- : logfile ""
I, [2022-02-15T05:27:55.324362 #1] INFO -- : > exec chpst -u redis -U redis /usr/bin/redis-server /etc/redis/redis.conf
I, [2022-02-15T05:27:55.329352 #1] INFO -- : > sleep 10
102:C 15 Feb 2022 05:27:55.343 # oO0OoO0OoO0Oo Redis sta avviando oO0OoO0OoO0Oo
102:C 15 Feb 2022 05:27:55.343 # Versione Redis=6.2.6, bits=64, commit=00000000, modified=0, pid=102, appena avviato
102:C 15 Feb 2022 05:27:55.343 # Configurazione caricata
102:M 15 Feb 2022 05:27:55.346 * orologio monotono: POSIX clock_gettime
102:M 15 Feb 2022 05:27:55.349 * Modalità in esecuzione=standalone, porta=6379.
102:M 15 Feb 2022 05:27:55.350 # ATTENZIONE: L'impostazione del backlog TCP di 511 non può essere applicata perché /proc/sys/net/core/somaxconn è impostato sul valore inferiore di 128.
102:M 15 Feb 2022 05:27:55.350 # Server inizializzato
102:M 15 Feb 2022 05:27:55.350 # ATTENZIONE: overcommit_memory è impostato su 0! Il salvataggio in background potrebbe fallire in condizioni di bassa memoria. Per risolvere questo problema, aggiungi 'vm.overcommit_memory = 1' a /etc/sysctl.conf e poi riavvia o esegui il comando 'sysctl vm.overcommit_memory=1' affinché abbia effetto.
102:M 15 Feb 2022 05:27:55.352 * Caricamento RDB prodotto dalla versione 6.2.6
102:M 15 Feb 2022 05:27:55.352 * Età RDB 18923 secondi
102:M 15 Feb 2022 05:27:55.352 * Utilizzo memoria RDB al momento della creazione 133.51 Mb
102:M 15 Feb 2022 05:27:55.912 # Caricamento RDB completato, chiavi caricate: 7294, chiavi scadute: 127.
102:M 15 Feb 2022 05:27:55.912 * DB caricato dal disco: 0.560 secondi
102:M 15 Feb 2022 05:27:55.912 * Pronto ad accettare connessioni
I, [2022-02-15T05:28:05.336548 #1] INFO -- :
I, [2022-02-15T05:28:05.337696 #1] INFO -- : > thpoff echo "thpoff è installato!"
I, [2022-02-15T05:28:05.349534 #1] INFO -- : thpoff è installato!
I, [2022-02-15T05:28:05.349959 #1] INFO -- : > /usr/local/bin/ruby -e 'if ENV["DISCOURSE_SMTP_ADDRESS"] == "smtp.example.com"; puts "Annullamento! La posta non è configurata!"; exit 1; end'
I, [2022-02-15T05:28:05.496038 #1] INFO -- :
I, [2022-02-15T05:28:05.496604 #1] INFO -- : > /usr/local/bin/ruby -e 'if ENV["DISCOURSE_HOSTNAME"] == "discourse.example.com"; puts "Annullamento! Il dominio non è configurato!"; exit 1; end'
I, [2022-02-15T05:28:05.617847 #1] INFO -- :
I, [2022-02-15T05:28:05.618268 #1] INFO -- : > /usr/local/bin/ruby -e 'if (ENV["DISCOURSE_CDN_URL"] || "")[0..1] == "//"; puts "Annullamento! Il CDN deve specificare un protocollo. Una volta corretto, dovresti rigenerare ora tutti i tuoi post per correggere tutti i post."; exit 1; end'
I, [2022-02-15T05:28:05.754370 #1] INFO -- :
I, [2022-02-15T05:28:05.755864 #1] INFO -- : > rm -f /etc/cron.d/anacron
I, [2022-02-15T05:28:05.763371 #1] INFO -- :
I, [2022-02-15T05:28:05.773372 #1] INFO -- : File > /etc/cron.d/anacron chmod: chown:
I, [2022-02-15T05:28:05.785161 #1] INFO -- : File > /etc/runit/1.d/copy-env chmod: +x chown:
I, [2022-02-15T05:28:05.801026 #1] INFO -- : File > /etc/service/unicorn/run chmod: +x chown:
I, [2022-02-15T05:28:05.816469 #1] INFO -- : File > /etc/service/nginx/run chmod: +x chown:
I, [2022-02-15T05:28:05.828667 #1] INFO -- : File > /etc/runit/3.d/01-nginx chmod: +x chown:
I, [2022-02-15T05:28:05.841176 #1] INFO -- : File > /etc/runit/3.d/02-unicorn chmod: +x chown:
I, [2022-02-15T05:28:05.841464 #1] INFO -- : Sostituzione di # postgres con sv start postgres || exit 1 in /etc/service/unicorn/run
I, [2022-02-15T05:28:05.842241 #1] INFO -- : > exec chpst -u redis -U redis /usr/bin/redis-server /etc/redis/redis.conf
I, [2022-02-15T05:28:05.847862 #1] INFO -- : > cd /var/www/discourse && git reset --hard
130:C 15 Feb 2022 05:28:05.853 # oO0OoO0OoO0Oo Redis sta avviando oO0OoO0OoO0Oo
130:C 15 Feb 2022 05:28:05.854 # Versione Redis=6.2.6, bits=64, commit=00000000, modified=0, pid=130, appena avviato
130:C 15 Feb 2022 05:28:05.855 # Configurazione caricata
130:M 15 Feb 2022 05:28:05.857 * orologio monotono: POSIX clock_gettime
130:M 15 Feb 2022 05:28:05.858 # Attenzione: Impossibile creare la socket TCP di ascolto del server *:6379: bind: Indirizzo già in uso
130:M 15 Feb 2022 05:28:05.859 # Errore nell'ascolto sulla porta 6379 (TCP), annullamento.
Aggiornamento file: 100% (30947/30947), completato.
I, [2022-02-15T05:28:13.624544 #1] INFO -- : HEAD è ora su e1367cde I18N: Miglioramento dei messaggi di errore per le parole bloccate (#15741)
I, [2022-02-15T05:29:36.205328 #1] INFO -- : > cd /var/www/discourse && [ ! -d 'node_modules' ] || su discourse -c 'yarn install --production && yarn cache clean'
warning Il campo di risoluzione "lodash@4.17.21" è incompatibile con la versione richiesta "lodash@4.17.15".
warning " > @mixer/parallel-prettier@2.0.1" ha una dipendenza peer non soddisfatta "prettier@^2.0.0".
I, [2022-02-15T05:33:01.692668 #1] INFO -- : yarn install v1.22.17
[1/5] Validazione di package.json...
[2/5] Risoluzione dei pacchetti...
[3/5] Recupero dei pacchetti...
[4/5] Collegamento delle dipendenze...
[5/5] Creazione di nuovi pacchetti...
$ yarn --cwd app/assets/javascripts/discourse
yarn install v1.22.17
[1/4] Risoluzione dei pacchetti...
[2/4] Recupero dei pacchetti...
[3/4] Collegamento delle dipendenze...
[4/4] Creazione di nuovi pacchetti...
success File di lock salvato.
Completato in 133.99s.
Completato in 195.02s.
yarn cache v1.22.17
success Cache cancellata.
Completato in 9.35s.
I, [2022-02-15T05:33:01.697905 #1] INFO -- : > cd /var/www/discourse && su discourse -c 'LOAD_PLUGINS=0 bundle exec rake plugin:pull_compatible_all'
I, [2022-02-15T05:33:12.324517 #1] INFO -- : discourse-github è già all'ultima versione compatibile
discourse-solved è già all'ultima versione compatibile
discourse-chat è già all'ultima versione compatibile
I, [2022-02-15T05:33:12.325695 #1] INFO -- : > cd /var/www/discourse && su discourse -c 'bundle exec rake db:migrate'
102:M 15 Feb 2022 05:33:37.418 * 100 modifiche in 300 secondi. Salvataggio...
102:M 15 Feb 2022 05:33:37.423 * Salvataggio in background avviato dal pid 1143
1143:C 15 Feb 2022 05:33:38.349 * DB salvato su disco
1143:C 15 Feb 2022 05:33:38.352 * RDB: 2 MB di memoria utilizzati da copy-on-write
102:M 15 Feb 2022 05:33:38.429 * Salvataggio in background terminato con successo
I, [2022-02-15T05:33:38.994811 #1] INFO -- : gem install sawyer -v 0.8.2 -i /var/www/discourse/plugins/discourse-github/gems/2.7.5 --no-document --ignore-dependencies --no-user-install
Sawyer-0.8.2 installato con successo
1 gem installato
gem install octokit -v 4.21.0 -i /var/www/discourse/plugins/discourse-github/gems/2.7.5 --no-document --ignore-dependencies --no-user-install
Octokit-4.21.0 installato con successo
1 gem installato
== 20220214224506 ResetCustomEmojiPostBakesVersionSecureFix: in migrazione ========
== 20220214224506 ResetCustomEmojiPostBakesVersionSecureFix: migrato (0.0099s)
== 20220214233625 AddBounceErrorCodeToEmailLog: in migrazione =====================
-- add_column(:email_logs, :bounce_error_code, :string, {:null=>true})
-> 0.0103s
== 20220214233625 AddBounceErrorCodeToEmailLog: migrato (0.0121s) ============
I, [2022-02-15T05:33:38.996639 #1] INFO -- : > cd /var/www/discourse && su discourse -c 'bundle exec rake themes:update assets:precompile'
- Creazione
- Creazione
- creazione...
102:M 15 Feb 2022 05:38:39.069 * 100 modifiche in 300 secondi. Salvataggio...
102:M 15 Feb 2022 05:38:39.080 * Salvataggio in background avviato dal pid 1213
1213:C 15 Feb 2022 05:38:39.863 * DB salvato su disco
1213:C 15 Feb 2022 05:38:39.867 * RDB: 2 MB di memoria utilizzati da copy-on-write
102:M 15 Feb 2022 05:38:39.883 * Salvataggio in background terminato con successo
[WARN] (broccoli-terser-sourcemap) Minificazione di "assets/discourse.js" durata: 35001ms (più di 20.000ms)
Killed
errore Comando fallito con codice di uscita 137.
I, [2022-02-15T05:52:50.058283 #1] INFO -- : yarn run v1.22.17
$ /var/www/discourse/app/assets/javascripts/node_modules/.bin/ember build -prod
ATTENZIONE: Node v16.13.2 non è stato testato con Ember CLI sulla tua piattaforma. Ti consigliamo di utilizzare la versione più recente "Active LTS" di Node.js. Consulta https://git.io/v7S5n per i dettagli.
DEPRECAZIONE: L'integrazione di jQuery in Ember è stata deprecata e verrà rimossa con Ember 4.0. Puoi scegliere di non utilizzare jQuery o installare l'addon `@ember/jquery` per fornire l'integrazione di jQuery. Consulta la guida alla deprecazione per ulteriori dettagli: https://emberjs.com/deprecations/v3.x#toc_jquery-apis
Ambiente: produzione
info Visita https://yarnpkg.com/en/docs/cli/run per la documentazione su questo comando.
I, [2022-02-15T05:52:50.072549 #1] INFO -- : Terminazione dei processi asincroni
I, [2022-02-15T05:52:50.072816 #1] INFO -- : Invio di INT a HOME=/var/lib/postgresql USER=postgres exec chpst -u postgres:postgres:ssl-cert -U postgres:postgres:ssl-cert /usr/lib/postgresql/13/bin/postmaster -D /etc/postgresql/13/main pid: 41
I, [2022-02-15T05:52:50.073275 #1] INFO -- : Invio di TERM a exec chpst -u redis -U redis /usr/bin/redis-server /etc/redis/redis.conf pid: 102
102:signal-handler (1644904370) Ricevuto SIGTERM, pianificazione arresto...
2022-02-15 05:52:50.074 UTC [41] LOG: ricevuto richiesta di arresto rapido
2022-02-15 05:52:50.090 UTC [41] LOG: annullamento di tutte le transazioni attive
2022-02-15 05:52:50.096 UTC [41] LOG: worker in background "logical replication launcher" (PID 50) uscito con codice di uscita 1
2022-02-15 05:52:50.102 UTC [45] LOG: arresto in corso
102:M 15 Feb 2022 05:52:50.118 # Arresto richiesto dall'utente...
102:M 15 Feb 2022 05:52:50.120 * Salvataggio dell'ultimo snapshot RDB prima dell'uscita.
2022-02-15 05:52:50.248 UTC [41] LOG: il sistema di database è arrestato
102:M 15 Feb 2022 05:52:51.075 * DB salvato su disco
102:M 15 Feb 2022 05:52:51.076 # Redis è ora pronto per uscire, arrivederci...
FALLITO
--------------------
Pups::ExecError: cd /var/www/discourse && su discourse -c 'bundle exec rake themes:update assets:precompile' fallito con return #<Process::Status: pid 1144 exit 137>
Posizione dell'errore: /usr/local/lib/ruby/gems/2.7.0/gems/pups-1.1.1/lib/pups/exec_command.rb:117:in `spawn'
exec fallito con i parametri {"cd"=>"$home", "hook"=>"assets_precompile", "cmd"=>["su discourse -c 'bundle exec rake themes:update assets:precompile'"]}
1716fd9590e21cdfdaccea0ac6faabd133a6423e1a24ef3b3b5be0e68ce422c9
** FALLITO L'AVVIO ** si prega di scorrere verso l'alto e cercare messaggi di errore precedenti, potrebbero essercene più di uno.
./discourse-doctor potrebbe aiutare a diagnosticare il problema.
Eseguo ora discourse-doctor e raccolgo log più dettagliati.
Questo è lo script di aggiornamento che ho creato e utilizzato con successo per un anno o più:
https://github.com/balupton/dotfiles/blob/master/commands/discourse-upgrader