Relación "discourse_automation_automations" restaurando de 3.3beta1 a 3.5beta7

Intentando restaurar una base de datos de

    

a la actual. Copié el mismo app.yml y estoy restaurando (nueva VM e intentando evitar la actualización de pg, aunque tal vez debería intentarlo en lugar de la restauración)

Estoy recibiendo este error:

PG::DuplicateTable: ERROR:  relation "discourse_automation_automations" already exists

Parece otro caso de una migración que se vuelve a registrar y este sitio se construyó durante esos pocos commits.

No sé qué hacer, sin embargo. ¿Quizás elimino la migración que intenta crear esta tabla?

Creo que 3.3beta1 fue antes de que el plugin se incluyera en el núcleo en abril. ¿Podría esto causar algún problema, por ejemplo, debido a que el plugin ahora está incluido en el núcleo y todavía se instala por separado a través de app.yml?

Esa es una buena idea, pero no es eso. No lo estoy incluyendo de nuevo. Me pregunto si tal vez debería haber intentado agregarlo (pero no lo veo de un vistazo rápido). Mi idea actual es eliminar todas las tablas de automatización (están vacías) en el sitio antiguo, hacer una nueva copia de seguridad e intentar restaurarla.

1 me gusta

Bueno, y luego falló porque faltaba discourse_automations_automations. :person_shrugging:

Así que eliminé estos:

20210108134117_add_pending_pms_table.rb
20210512090204_add_timestamps_to_automations.rb
20210530122323_move_triggers_to_fields.rb
20211119103353_adds_discourse_automation_user_global_notice.rb
20230412120414_add_prefers_encrypt_field_to_pending_pms.rb

y probablemente debería haber eliminado 20190601000001_create_automations_table.rb, pero en cambio agregué código de verificación de existencia de tabla (¿creo que cuando lo eliminé tuve otro problema?).

Y finalmente logré restaurarlo.

1 me gusta

¿Podemos cerrar este tema? ¿O moverlo a Dev o Installation > Hosting si quieres mantenerlo abierto?

Sí. Puedes cerrarlo. No está claro si le sucederá a alguien más, por lo que esto puede ser útil o no.