Je souhaite téléverser cette sauvegarde sur une instance locale, il s’agit d’une nouvelle installation exécutant la version 3.4.0.beta1-dev de Discourse 2b577950af5b24ed0d32eecc4ab6475619998fba
Voici le journal, des suggestions pour une solution de contournement ?
[2024-08-03 16:45:29] CREATE INDEX
[2024-08-03 16:45:29] CREATE INDEX
[2024-08-03 16:45:29] ERROR: function discourse_functions.raise_discourse_voting_category_settings_readonly() does not exist
[2024-08-03 16:45:29] EXCEPTION: psql failed: ERROR: function discourse_functions.raise_discourse_voting_category_settings_readonly() does not exist
Je ne l’ai pas fait, le problème était que le Post Voting Plugin n’était pas installé. Fait intéressant, il n’était pas activé sur le site principal (juste installé par défaut) mais je suppose que cela suffisait à causer l’erreur. Merci.
J’obtiens la même erreur sur une instance de développement (où je viens de passer à pg16 pour obtenir la dernière version de pgvector qui causait cet échec de restauration plus tôt) que je viens de git puller.
J’ai ajouté à la fois le vote par publication et le vote par sujet (le vote par sujet était sur la source).
Mon inclination était de
DROP table discourse_voting_category_settings;
Mais j’ai ensuite eu besoin d’ajouter CASCADE et j’ai eu peur et j’ai essayé de restaurer sur staging.
Sur un site staging, si j’essaie de restaurer la même base de données, j’obtiens ceci :
ERROR: type "hotlinked_media_status" already exists
EXCEPTION: psql failed: ERROR: type "hotlinked_media_status" already exists
/var/www/discourse/lib/backup_restore/database_restorer.rb:92:in `restore_dump'
/var/www/discourse/lib/backup_restore/database_restorer.rb:26:in `restore'
/var/www/discourse/lib/backup_restore/restorer.rb:51:in `run'
Cela semble différent. Je l’avais oublié ces trois dernières semaines, mais depuis, nous avons eu quelques cas de sauvegardes qui n’ont pas pu être restaurées lorsque le plugin de vote de publication n’était pas installé. C’est donc une chose certaine.
Mais hotlinked_media_status est une table principale datant de 2022… donc ça doit être quelque chose de différent.
Eh bien, j’ai veillé à ce que l’instance de développement ait tous les plugins du site de production et j’y ai restauré la sauvegarde !
Mais le site de staging, (qui manque du plugin d’authentification Microsoft pour une raison quelconque, mais ça ne peut pas être ça, n’est-ce pas ?!?!?!?) a toujours le problème EXCEPTION: psql failed: ERROR: type "hotlinked_media_status" already exists.
Mais si seulement je cherchais :
On dirait que quelque chose de similaire a été corrigé une fois. . .