Acabo de tener la experiencia más extraña al reiniciar una instancia simple de Amazon Lightsail.
Realicé el reinicio… esperé a que se reiniciara.
Apareció una pantalla con el mensaje de error “502 Gateway Error - Nginx” en algunas páginas (asumo que sin caché). Esperé un poco…
Ejecuté un rebuild de Discourse desde la terminal.
Apareció un mensaje de error indicando que el rebuild falló.
Usé ./discourse-doctor - También falló.
Desactivé los plugins no oficiales y volví a hacer el rebuild - También falló.
Pensé que estaba perdido. Mientras seguía investigando, volví a revisar el foro solo para encontrarlo funcionando correctamente. Lo cual no tiene ningún sentido, considerando que la respuesta inmediata de la documentación de Discourse fue: ¡ADVERTENCIA! ¡La aplicación ni siquiera está en ejecución!
Mi teoría es que esto podría deberse más a los límites de capacidad variable de Amazon que a cualquier otra cosa. Dado que el reinicio pudo haber sobrecargado el servidor, causando esos errores 502 iniciales, pero definitivamente el rebuild llevó mi servidor al 70-80% de sus límites de capacidad variable, y quizás no hubo recursos del sistema disponibles para ejecutar los scripts de rebuild.
Entonces, mi pregunta final es (ya que esto ha sido un problema que afecta el proceso de rebuild de actualizaciones): ¿existe alguna forma de limitar la carga de los scripts de actualización en el servidor y evitar que entre en pánico? Quiero decir, esta es una instancia con 8 GB de RAM, así que no es tan débil, etc.
Gracias… y ahora me he tomado 2 Ativan sin necesidad.
Pruebo otra actualización pronto y actualizo esto. No guardé el archivo de registro y ejecutar las actualizaciones dispara bastante mi zona de estallido (especialmente después de ejecutarla 3 veces), así que necesité esperar un día o más para recuperar mis niveles de estallido.
Generando datos por defecto
*** Empaquetando activos. Esto tomará un tiempo ***
$ RUBY_GC_MALLOC_LIMIT_MAX=20971520 RUBY_GC_OLDMALLOC_LIMIT_MAX=20971520 RUBY_GC_HEAP_GROWTH_MAX_SLOTS=50000 RUBY_GC_HEAP_OLDOBJECT_LIMIT_FACTOR=0.9 bundle exec rake themes:update assets:precompile
Actualizando Dark...
No se pudo actualizar Dark
about.json contiene valores no válidos: La versión máxima de Discourse es inválida
Y ahora mi foro está completamente caído y dando error 500.
¿Por qué habría de pasar eso? Pensé que la actualización solo reemplazaba el foro actual en funcionamiento una vez finalizado el proceso y que no tendría problemas.
El componente de tema está obsoleto y Discourse se niega a utilizarlo.
Sin embargo, si ejecutas ./launcher rebuild app, se detendrá el contenedor para construir el nuevo (ya que utiliza los mismos archivos de base de datos). Si la construcción falla, necesitarás reiniciar el contenedor para que vuelva a funcionar.
Sí, noté que la actualización en realidad se completó en todos los demás elementos; una vez que eliminé los componentes de los logotipos Oscuro y Alternativo, todo se actualizó en la pantalla de actualización.