Atualização 2.6.0b2 MUITO lenta

Eu tinha um site grande que falhava repetidamente ao iniciar. É uma instalação de 2 contêineres, então o contêiner antigo continuava rodando enquanto a inicialização realizava a migração. Acabei resolvendo o problema ativando SKIP_POST_DEPLOYMENT_MIGRATIONS=1 para a inicialização e, em seguida, executando as migrações após o novo contêiner ser iniciado. Com SKIP_POST_DEPLOYMENT_MIGRATIONS=1 na seção ENV, a migração foi muito rápida, e o site pôde funcionar normalmente (embora talvez um pouco mais lentamente) enquanto as migrações ocorriam, o que levou, acho eu, mais de 20 minutos.

Acredito, embora ainda não tenha testado, que usar o mesmo truque funcionaria para minimizar o tempo de inatividade durante uma instalação de único contêiner. Se eu estiver certo, o que você faria seria:

  • adicionar SKIP_POST_DEPLOYMENT_MIGRATIONS=1 ao seu app.yml
  • ./launcher rebuild app
  • ./launcher enter app
  • SKIP_POST_DEPLOYMENT_MIGRATIONS=0 rake db:migrate
  • desfazer a edição no app.yml, a menos que planeje lembrar de executar as migrações após cada atualização
  • talvez reconstruir novamente para garantir que você não tenha nenhum problema enquanto ainda se lembra do que poderia ter quebrado seu site, pois, daqui a 4 meses, quando tentar novamente, não fará ideia e será difícil para qualquer um adivinhar qual poderia ser o problema

Se houvesse uma maneira de o ./launcher passar SKIP_POST_DEPLOYMENT_MIGRATIONS=1 para as coisas sem exigir uma edição no app.yml, tornaria as coisas menos complicadas para quem tem dificuldade com edição.

Se eu conseguir realizar o trabalho sobre isso que acredito que farei, criarei um novo tópico relatando o que descobri. Embora a fumaça me tenha confinado a um quarto onde não tenho meu monitor grande. (A pandemia não foi suficiente?! Temos que ter fumaça também? E eu nem estou especialmente perto do maldito incêndio.)