Sujets vides après une restauration de sauvegarde réussie

Bonjour,

J’ai changé d’hébergeur. J’ai effectué une sauvegarde complète (avec l’option « inclure les miniatures » activée) depuis l’ancienne instance (dernière version de Discourse).

J’ai changé l’adresse IP du domaine, puis j’ai installé une nouvelle instance de Discourse en premier (installation classique avec Docker).

Ensuite, j’ai copié la sauvegarde dans /var/discourse/shared/standalone/backups/default et je l’ai restaurée depuis la nouvelle instance.

Tout s’est bien passé, sauf que les sujets ne contiennent aucun message.

Les journaux semblent corrects. Je peux me connecter, tout est normal à l’exception des sujets qui sont vides.

Une idée ? Où devrais-je chercher si le problème se trouve là ? Que dois-je faire maintenant ?

Désolé pour les textes non anglais :

Problème résolu.

Le paramètre CSP a été forcé à l’activation lors de la restauration. Certains composants du thème déclaraient des scripts utilisant un CDN. Ces scripts n’étaient pas dans la liste blanche et les messages du sujet n’apparaissaient pas en raison d’erreurs JS.

Plus de sécurité est toujours la bienvenue, bien que je ne m’attendrais pas à ce que Discourse modifie un paramètre de sauvegarde. Je comprends pour les nouvelles installations, mais pas pour une sauvegarde. Ce n’était pas seulement une question de sauvegarde/restauration, je n’ai pas pensé à vérifier la console du navigateur au début. Je dois avouer que j’ai été assez frustré de perdre beaucoup de temps/énergie/sommeil pour un problème aussi futile et parce que la construction de Discourse est extrêmement chronophage.

En tout cas, je le sais maintenant, soyez vigilants !

C’est bien que vous ayez trouvé la raison du problème.

Je considérerais cela comme un bug si vous aviez restauré la sauvegarde sur exactement la même version de Discourse. Était-ce le cas ? Lorsque vous restaurez une sauvegarde d’une ancienne version de Discourse sur une version plus récente, vous devez vous attendre à ce que le système se comporte différemment.

Avez-vous signalé les problèmes CSP aux auteurs des composants du thème ? Cela pourrait au moins empêcher d’autres personnes de rencontrer le même problème.

Probablement plus récent, car nous ne mettons à jour que lorsqu’une nouvelle version est disponible, et l’installation d’une nouvelle instance récupérera toujours la dernière version validée dans test-passed.

En tout état de cause, que ce soit plus ancien ou plus récent, sauf dans des circonstances très particulières, à mon avis, les paramètres existants ne devraient jamais être modifiés de quelque manière que ce soit. De plus, à partir d’une même version de base, je m’attends à ce que ma sauvegarde se comporte de la même manière. En tout cas, afficher un avertissement une fois connecté à Discourse (par exemple : « Pour des raisons de sécurité, le paramètre CSP a été activé », vous voyez l’idée) serait bienvenu (ou tout autre type de modification).

Réfléchissez aux implications de cela. Ce que vous souhaitez nécessiterait un changement de direction à l’échelle de l’industrie.

Actuellement, ce qui s’applique à une mise à jour in situ s’applique également lors de la restauration d’une base de données plus ancienne. Cela constitue un comportement cohérent et prévisible pour les applications.

Si vous ne souhaitez aucun changement dans les paramètres, la méthode normale consiste à utiliser exactement la même version de l’application.

Je ne comprends pas. L’OP a dit que la sauvegarde a été prise depuis la dernière version, donc il n’y aurait pas de migrations supplémentaires dans ce cas ?

Par « dernière version », j’entendais la dernière version officielle publiée, et non les derniers commits de la branche test-passed sur GitHub.
Mais oui, il s’agit bien de la même version de base : 2.4.0.beta9.

Nous parlons uniquement de sauvegarde et uniquement des valeurs des paramètres, rien d’autre. La version de Discourse, les modifications de la base de données, etc., sont sans rapport. Je ne vois aucune justification valable pour modifier une valeur de paramètre issue d’une sauvegarde sans en informer l’administrateur. Vous personnalisez Discourse avec ces paramètres spécifiques ; il n’a aucun sens de modifier arbitrairement vos valeurs de paramètres simplement parce que vous restaurez une sauvegarde sur une version plus récente de Discourse.

Comme mentionné, si la valeur d’un paramètre spécifique doit être modifiée, je m’attendrais à ce que Discourse informe l’administrateur de ce qui se passe. Il s’agit simplement d’être transparent et de rendre la vie de l’administrateur moins pénible. Mon point de vue est que vous ne devriez jamais modifier les paramètres utilisateur sans une bonne raison, et dans ce cas, informer l’administrateur est tout à fait acceptable.