Mise à jour

Livrables

Les fichiers nécessaires à la mise à jour sont de la forme suivante :

  • Un ou plusieurs fichiers plume_pg--x.x.x--y.y.y.sql, qui sont des scripts de passage de la version « x.x.x » à la version « y.y.y ». Plusieurs de ces scripts peuvent s’exécuter à la suite lors d’une mise à jour.

    Par exemple les trois fichiers plume_pg--0.1.2--0.2.0.sql, plume_pg--0.2.0--0.3.0.sql et plume_pg--0.3.0--0.3.1.sql permettent ensemble la mise à jour de PlumePg v0.1.2 à PlumePg v0.3.1, si aucun script de mise à jour directe plume_pg--0.1.2--0.3.1.sql n'est disponible.

  • Un nouveau fichier plume_pg.control remplaçant le précédent. Ce fichier change en principe peu d’une version à l’autre, si ce n’est pour la version par défaut qu’il spécifie, qui sera toujours la version stable la plus récente.

  • Un fichier plume_pg--y.y.y.sql contenant le code complet de la nouvelle version « y.y.y » de l’extension PlumePg. Celui-ci n’est pas utilisé lors de la mise à jour, mais pourra servir par la suite, notamment en cas de sauvegarde/restauration de la base, ou pour l’installation de PlumePg sur une nouvelle base.

Préparation

Les mécanismes de distribution décrits pour les fichiers d'installation sont également valables pour la mise à jour.

Montée de version sur une base

Attention

L'extension doit être mise à jour indépendamment sur chacune des bases sur lesquelles elle a été activée.

La mise à jour de l'extension doit être réalisée par un super-utilisateur, avec une commande ALTER EXTENSION :

1
2
ALTER EXTENSION plume_pg UPDATE TO 'y.y.y' ;

Sauf à cibler une version qui ne serait pas la dernière, il est souvent plus simple de ne pas spécifier le numéro de version et d’effectuer la mise à jour sur la version par défaut définie par plume_pg.control :

1
2
ALTER EXTENSION plume_pg UPDATE ;

Lorsque la version cible n'est pas immédiatement consécutive à celle qui est active sur la base, PostgreSQL saura déterminer qu'il doit exécuter successivement plusieurs scripts de mise à jour. Sauf mention contraire dans une note de version, il n'est généralement pas recommandé de lancer des commandes ALTER EXTENSION pour les versions intermédiaires.

Truc & astuce

La mise à jour de PlumePg est l'une des actions proposées par AsgardManager dans son menu Gestion de la base. AsgardManager avertira également l'utilisateur lorsque PlumePg est active sur la base courante et qu'une nouvelle version de PlumePg est disponible.