Il pannello dei log smette di aggiornarsi durante l'aggiornamento

Aggiornamento di due forum alla versione 2.7.0.beta6. Uno è andato a buon fine, aggiornando prima Docker Manager e poi Discourse. L’altro, che richiedeva anche un aggiornamento di Data Explorer, ha mostrato il pannello dei log bloccato due volte durante l’aggiornamento finale di Discourse stesso. In entrambi i casi, il blocco si è verificato durante la fase
Waiting for Unicorn to reload...........
una volta all’inizio e una volta alla fine, dopo aver ricaricato la scheda del browser.

Il blocco finale ha mostrato 11 righe di “Waiting” prima di fermarsi.

Done compiling CSS: 2021-04-08 12:54:13 UTC
Restarting unicorn pid: 49
Waiting for Unicorn to reload.
Waiting for Unicorn to reload..
Waiting for Unicorn to reload...
Waiting for Unicorn to reload....
Waiting for Unicorn to reload.....
Waiting for Unicorn to reload......
Waiting for Unicorn to reload.......
Waiting for Unicorn to reload........
Waiting for Unicorn to reload.........
Waiting for Unicorn to reload..........
Waiting for Unicorn to reload...........

Il blocco iniziale si è verificato con un numero di righe simile.

Sono riuscito a monitorare i processi tramite la pagina Processi, in un’altra scheda, e ho potuto vedere che i progressi venivano effettivamente compiuti.

L’aggiornamento è andato a buon fine e, dopo un ricaricamento, ho potuto visualizzare e rivedere l’intero log, ma è stato inquietante e forse fuorviante che il pannello dei log smettesse di aggiornarsi.

Nessun messaggio da riportare dalla console JavaScript.

Ah, dopo molto tempo, vedo qualcosa nella console JS (questo è Chrome su Mac)

[Violation] 'setTimeout' handler took 64ms

con un link alla riga 5211 di docker-manager-vendor-970…js, ovvero /assets/docker-manager-vendor-9709990270a4ade37544c98dda3cfad18f77cdf6cd433291c3c5ef7bd25cb50d.js
che appare così:

try{r||n?t=s.minPollInterval:(t=s.callbackInterval,o>2?t*=o:a()||(t=s.backgroundCallbackInterval),t>s.maxPollInterval&&(t=s.maxPollInterval),(t-=new Date-w)<100&&(t=100))}catch(i){console.log&&i.message&&console.log("MESSAGE BUS FAIL: "+i.message)}d&&(clearTimeout(d),d=null),u&&(d=setTimeout((function(){d=null,e()}),t)),s.longPoll=null}})}},s={minHiddenPollInterval:1500,enableChunkedEncoding:!0,enableLongPolling:!0,callbackInterval:15e3,backgroundCallbackInterval:6e4,minPollInterval:100,maxPollInterval:18e4,callbacks:n,clientId:i,alwaysLongPoll:!1,baseUrl:"/",headers:{},ajax:p&&p.ajax,noConflict:function(){return e.MessageBus=e.MessageBus.previousMessageBus,this},diagnostics:function(){console.log("Stopped: "+l+" Started: "+u),console.log("Current callbacks"),console.log(n),console.log("Total ajax calls: "+O+" Recent failure count: "+o+" Total failures: "+R),console.log("Last ajax call: "+(new Date-w)/1e3+" seconds ago")},pause:function(){f=!0},resume:function(){f=!1,T(h),h=[]},stop:function(){l=!0,u=!1,v&&(clearTimeout(v),v=null),s.longPoll&&s.longPoll.abort()},start:function(){var r

Possibilmente il tuo sistema ha esaurito la memoria o qualcosa del genere.

Puoi provare a ricostruire dalla console?

Nota che l’aggiornamento è andato a buon fine: il problema riguarda la visualizzazione del flusso di log nel browser. Dopo un aggiornamento della pagina, l’intero log era visibile. Quindi sono abbastanza sicuro che si tratti di un problema lato client, non di alcun tipo di problema legato all’aggiornamento, alla ricostruzione o al server.

Se nessuno altro ha mai visto questo problema, sarei felice di attribuirlo a un problema del mio browser o del mio laptop.

Non capisco come il codice JS visualizzato dal browser si relazioni all’albero sorgente, ma forse si tratta del codice che ho visto collegato nella console (è un codice che non è cambiato recentemente)

Ho riscontrato lo stesso problema su alcuni dei siti che gestisco, ma non su tutti, quindi sembra trattarsi di un problema di configurazione. Non ho ancora prove concrete, ma la mia ipotesi più fondata è che possa essere legato a una configurazione multisito.

Mi dispiace non avere informazioni utili da condividere, ma ho voluto intervenire per confermare che il problema non riguarda solo te.

Grazie, è interessante e utile. Non ho ancora un’impostazione multisito: i miei due forum sono su host diversi. Quindi, sia le configurazioni multisito che quelle non multisito possono vederlo.

È appena successo di nuovo con l’aggiornamento alla 2.7.0.beta9: il flusso dei log si è bloccato mostrando che stava fermando i unicorni, mentre la vista dei processi (aperta in un’altra scheda) indicava che la precompilazione era iniziata.

Come soluzione temporanea, ho aperto una scheda nella vista delle versioni, ho visto il grande pulsante blu ora etichettato come ‘Currently Upgrading’, ho cliccato e ho ottenuto con successo una nuova vista dei log che si aggiornava correttamente.