Chave Primária Desconhecida

Ao tentar fazer login, recebo:

Started POST "/session" for <IP> at 2023-04-07 20:57:15 +0000
Processing by SessionController#create as */*
  Parameters: {"login"=>"<user>", "password"=>"[FILTERED]", "second_factor_method"=>"1", "timezone"=>"<TIME_ZONE>"}
start
done
Completed 500 Internal Server Error in 161ms (ActiveRecord: 0.0ms | Allocations: 154577)
ActiveRecord::UnknownPrimaryKey (Unknown primary key for table posts in model Post.)
lib/freedom_patches/ams_include_without_root.rb:49:in `include!'
app/controllers/application_controller.rb:496:in `serialize_data'
app/controllers/application_controller.rb:505:in `render_serialized'
app/controllers/session_controller.rb:714:in `login'
app/controllers/session_controller.rb:341:in `create'
app/controllers/application_controller.rb:397:in `block in with_resolved_locale'
app/controllers/application_controller.rb:397:in `with_resolved_locale'
lib/middleware/omniauth_bypass_middleware.rb:71:in `call'
lib/content_security_policy/middleware.rb:12:in `call'
lib/middleware/anonymous_cache.rb:358:in `call'
config/initializers/100-quiet_logger.rb:23:in `call'
config/initializers/100-silence_logger.rb:31:in `call'
lib/middleware/enforce_hostname.rb:23:in `call'
lib/middleware/request_tracker.rb:198:in `call'

Também, ao tentar abrir outros tópicos, recebo:

Started GET "/t/le-numerique-alternatif-et-ecologique-murena-e-os-fairphone-telecoop-commown/48638" for <IP> at 2023-04-07 20:56:40 +0000
Processing by TopicsController#show as HTML
  Parameters: {"slug"=>"le-numerique-alternatif-et-ecologique-murena-e-os-fairphone-telecoop-commown", "topic_id"=>"48638"}
Completed 500 Internal Server Error in 11ms (ActiveRecord: 0.0ms | Allocations: 3093)
ActiveRecord::UnknownPrimaryKey (Unknown primary key for table posts in model Post.)
lib/freedom_patches/fast_pluck.rb:59:in `pluck'
lib/freedom_patches/fast_pluck.rb:52:in `pluck'
lib/topic_view.rb:143:in `initialize'
app/controllers/topics_controller.rb:89:in `new'
app/controllers/topics_controller.rb:89:in `show'
app/controllers/application_controller.rb:397:in `block in with_resolved_locale'
app/controllers/application_controller.rb:397:in `with_resolved_locale'
lib/middleware/omniauth_bypass_middleware.rb:71:in `call'
lib/content_security_policy/middleware.rb:12:in `call'
lib/middleware/anonymous_cache.rb:356:in `call'
config/initializers/100-quiet_logger.rb:23:in `call'
config/initializers/100-silence_logger.rb:31:in `call'
lib/middleware/enforce_hostname.rb:23:in `call'
lib/middleware/request_tracker.rb:198:in `call'

Talvez seus Satans não tenham sido migrados?

Você pode tentar

rake db:migrate

Você não tem skip post migrations definidos, certo? Esta é uma instalação padrão?

Era uma configuração do Docker e o Discourse estava funcionando bem, eu apenas exportei o container Docker e o importei em outro servidor junto com o /var/discourse e o iniciei, só isso.
Eu também executei rake db:migrate, mas não ajudou.

Você restaurou o backup?

Você tentou uma reconstrução?

Eu não acho que os arquivos do banco de dados estejam dentro do contêiner, então é provável que o postgresql esteja sem o banco de dados discourse, se não todo o conjunto de arquivos do banco de dados.

Uma restauração deve resolver isso, pois a restauração padrão do postgresql deve criar o banco de dados discourse. (Mas se isso falhar, tente criar o banco de dados e depois faça uma restauração.)

Essa não é a maneira correta de Move your Discourse Instance to a Different Server e nunca funcionará.

3 curtidas