I post di spostamento restituiscono 502 Bad Gateway

Abbiamo aumentato la RAM e ricostruito il database, ma il problema persiste.

Vorrei chiedere se gli sviluppatori sono a conoscenza di questo problema.. Grazie!

C’è una soluzione rapida che posso applicare come amministratore? Magari un timeout più lungo?

Non sono sicuro. Di sicuro sembra che un timeout più lungo aiuterebbe. Succede molto più spesso nei thread molto affollati, quindi sembra che ci sia un campionamento o una scansione che richiede troppo tempo.

Se riesco a capire come implementarlo, farò rapporto. Lo raddoppierei.

Sì, il problema persiste con la versione 2.5.0.beta2

Hai eseguito la configurazione di Discourse dopo aver modificato la RAM? Ci sono impostazioni che devono essere aggiornate per sfruttare al meglio la RAM.

Non sono sicuro, poiché l’implementazione spetta a un’altra persona. Ma gli farò presente che è necessario farlo per completare il processo. Grazie mille!

Ciao,
ricevo molti errori 502 durante lo spostamento dei post.
Avete intenzione di migliorare questa situazione?

Grazie

Ciao, sei riuscito a trovarlo? Sarebbe ottimo poter parametrizzare il timeout nell’ENV di app.yml o nelle impostazioni del sito Discourse per chi ha poca memoria.


Forse una domanda stupida?


Quando sposti molti post come questo, è questo processo gestito da Sidekiq?

Scusa, non ho cercato nel codice…


Aggiornamento


Ho dato una rapida occhiata alla base di codice Ruby e sì, quando viene chiamata la funzione di spostamento dei post, i lavori vengono accodati con enqueue_jobs().

Non essendo uno sviluppatore di Discourse, a un osservatore occasionale del codice sembrerebbe che i problemi relativi a ritardi, errori o timeout legati allo spostamento dei post siano direttamente correlati alle prestazioni e alla configurazione di sidekiq.

Ho cercato di studiare come Discourse utilizza Sidekiq a livello di sistema alcuni giorni fa, ma non sono riuscito a trovare la versione “sintetica” per principianti.

Quindi sono andato sul sito web di Sidekiq per cercare di capire meglio cosa succede sotto il cofano e ho notato che ci sono tre diverse offerte; mi sono confuso e ho continuato :slight_smile: perché non riuscivo a capire, con la mia breve capacità di attenzione e il bisogno di gratificazione immediata, quale versione di Sidekiq usa Discourse, quali sono le funzionalità esatte e le opzioni configurabili…

Essendo un principiante in quest’area, sono interessato a conoscere esattamente l’architettura di Sidekiq, le funzionalità, le opzioni, le variabili d'ambiente disponibili in Discourse… ma finora “non ho ancora trovato quello che cercavo” - cantato sulla melodia della nostra canzone preferita degli U2.

Tutte le risposte nascono dalla curiosità…

Aggiornamento:

Su consiglio di un moderatore in un altro thread, abbiamo disattivato tutti i plug-in tranne “chi è online” e ora, ultimamente, non ci sono più problemi con gli spostamenti.

Quindi qui c’è un ottimismo cauto. Aggiorniamo se le cose cambiano.

Grazie a tutti coloro che hanno offerto aiuto su questo problema!

Quali plugin hai disabilitato specificamente?

Idealmente, avrei testato ognuno separatamente per verificare quale/i causasse/i problemi, ma non mi aspettavo che funzionasse, quindi li ho disattivati tutti in una sola volta.

Molto probabilmente un chiacchiericcio, immagino che abbia dei ganci che si attivano quando un post viene spostato.

Buono a sapersi. Grazie. E complimenti a @featheredtoast per la correzione.

La mia community ha recentemente iniziato a riscontrare il problema dell’errore 502 durante lo spostamento dei post, in particolare tra thread di grandi dimensioni. Non avevo installato plugin personalizzati. Seguendo i consigli di un’altra discussione su Discourse, ho aumentato unicorn_workers a 10 e db_shared_buffers a 4096 MB, ma ciò non ha migliorato la situazione. Di seguito è riportato il log ./discourse-doctor del nostro forum. Spero di ricevere alcuni suggerimenti. Grazie!

==================== INFORMAZIONI DOCKER ====================
VERSIONE DOCKER: Docker version 17.10.0-ce, build f4ffd25

PROCESSI DOCKER (docker ps -a)

CONTAINER ID        IMAGE                 COMMAND             CREATED             STATUS              PORTS                                      NAMES
ddfb2222fd64        local_discourse/app   "/sbin/boot"        10 giorni fa        In esecuzione da 10 giorni          0.0.0.0:80->80/tcp, 0.0.0.0:443->443/tcp   app

ddfb2222fd64        local_discourse/app   "/sbin/boot"        10 giorni fa        In esecuzione da 10 giorni          0.0.0.0:80->80/tcp, 0.0.0.0:443->443/tcp   app

Il container Discourse app è in esecuzione


==================== PLUGIN ====================
          - git clone https://github.com/discourse/docker_manager.git
          - git clone https://github.com/discourse/discourse-solved.git

Nessun plugin non ufficiale rilevato.

Consulta https://github.com/discourse/discourse/blob/master/lib/plugin/metadata.rb per l'elenco ufficiale.

========================================
Discourse 2.6.0.beta2
Versione di Discourse su localhost: Discourse 2.6.0.beta2 


==================== INFORMAZIONI SULLA MEMORIA ====================
RAM (MB): 16434

              total        used        free      shared  buff/cache   available
Mem:          16048        5605         919        4255        9523        5850
Swap:          2047         437        1610

==================== CONTROLLO SPAZIO SU DISCO ====================
---------- Spazio su disco del sistema operativo ----------
Filesystem                 Size  Used Avail Use% Mounted on
/dev/disk/by-label/DOROOT  315G  132G  168G  45% /
/dev/disk/by-label/DOROOT  315G  132G  168G  45% /var/lib/docker/aufs
/dev/disk/by-label/DOROOT  315G  132G  168G  45% /
/dev/disk/by-label/DOROOT  315G  132G  168G  45% /var/lib/docker/plugins
/dev/disk/by-label/DOROOT  315G  132G  168G  45% /

---------- Spazio su disco del container ----------
flag abbreviata sconosciuta: 'w' in -w
Consulta 'docker exec --help'.


==================== INFORMAZIONI SUL DISCO ====================
Disco /dev/vda: 320 GiB, 343597383680 byte, 671088640 settori
Unità: settori da 1 * 512 = 512 byte
Dimensione settore (logico/fisico): 512 byte / 512 byte
Dimensione I/O (minima/ottimale): 512 byte / 512 byte
Tipo etichetta disco: gpt
Identificatore disco: 29B528BA-16C4-402E-BEE9-53555C8B6F10

Dispositivo     Start       End   Sectors  Size Type
/dev/vda1   2048 671086591 671084544  320G Linux filesystem

==================== FINE INFORMAZIONI SUL DISCO ====================

Ciao, riscontro lo stesso problema. Non riesco a dividere i megatopic a causa di questo.
Ho anche provato in modalità sicura, ma non è cambiato nulla.

Non ci sono problemi nella mia installazione di sviluppo di Discourse (stessa versione 2.6.0.beta2), però.
E non c’è nulla nei log.

Sto ricevendo questo errore 502 da un anno ;(

Non credo che vi abbiamo chiesto: quali plugin state utilizzando?

Ho disattivato tutti i plugin per verificare se si trattasse di un bug legato ai plugin. Sembra che il problema si ripeta in modo stabile con thread lunghi.