Du JSON invalide dans vos plans d'exécution

Chambéry, le 29 Avril 2025

Vous connaissez peut-être explain.dalibo.com, l’outil pour visualiser et comprendre les plans d’exécution générés par la commande EXPLAIN. Il accepte des plans au format text et JSON. Dans des versions précédentes de PostgreSQL, un bug entraînait la génération de plans au format JSON invalides. Ce bug a été corrigé depuis longtemps, mais des plans invalides sont toujours envoyés sur explain.dalibo.com (possiblement générés avec une vieille version de PostgreSQL). Dans cet article, nous allons découvrir combien sont concernés, et comment nous avons obtenu cette information.

→ Lire la suite...

Invalid JSON in your execution plans

Chambéry, 29th April 2025

You may know explain.dalibo.com, the tool for visualizing and understanding execution plans generated with the EXPLAIN command. It accepts text and JSON formats. In earlier versions of PostgreSQL, a bug caused the generation of invalid JSON in execution plans. This bug was fixed a while ago, but invalid plans are still submitted to explain.dalibo.com (possibly generated with an old version of PostgreSQL). In this article, we’ll discover how many and how I got this information.

→ Lire la suite...

Sortie de pglift 2.0

Vallée de Munster, le 25 avril 2025

pglift, le composant central de notre solution d’industrialisation pour PostgreSQL, est à présent disponible en version 2.0.

Cette nouvelle version apporte son lot de correctifs, nouvelles fonctionnalités et améliorations. Nous vous proposons, aujourd’hui, un aperçu de quelques-unes des nouveautés majeures depuis pglift 1.0.

→ Lire la suite...

Plongez dans le monde de CloudNativePG #7 - Séquence de démarrage !

Lyon, le 24 avril 2025

CloudNativePG ou comment embarquer un éléphant sur un porte-conteneurs !

Dans le premier article, nous avons eu un aperçu de ce que l’opérateur CloudNativePG permet de faire. Le déploiement des instances se déroulait sans encombre … mais que se passe-t-il vraiment lorsque la commande kubectl apply -f ~/cluster.yaml est utilisée ? C’est ce que nous allons voir avec ce nouvel article consacré à l’opérateur CloudNativePG.

→ Lire la suite...

PostgreSQL 18 - Modules optionnels pour EXPLAIN

Reviers, le 7 avril 2025

Au fil des versions de PostgreSQL, la commande EXPLAIN s’est vu ajouter de nombreuses options : ANALYZE, VERBOSE, BUFFERS, etc. Lors du développement de la version 18, Robert Haas a proposé une nouvelle option très intéressante.

→ Lire la suite...

Plongez dans le monde de CloudNativePG #6 - Plugin pour CloudNativePG

Vallée de Munster, 03 avril 2025

Les développeurs de CloudNativePG travaillent sur divers projets et fonctionnalités que nous suivons attentivement (merci le Logiciel Libre et la gouvernance ouverte 😊).

L’une des fonctionnalités qui nous intéresse, et est à l’origine de nombreux chantiers, est la possibilité d’étendre un cluster CloudNativePG avec des plugins.

Nous vous proposons aujourd’hui une présentation de cette fonctionnalité. Nous illustrerons notre article avec un plugin expérimental que nous avons développé. Ce plugin permet d’archiver les WALs et sauvegarder une instance vers un bucket S3 avec pgBackRest.

→ Lire la suite...

Plongez dans le monde de CloudNativePG #5 - CRITICAL - Plus de place !

Lyon, le 24 mars 2025

CloudNativePG ou comment embarquer un éléphant sur un porte-conteneurs !

Beaucoup de choses vous ont été présentées dans les derniers articles de cette série. Bien qu’assez techniques et pratiques, ils ne présentaient pas vraiment de cas concrets, pouvant être rencontrés dans la vraie vie comme on dit. C’est chose faite avec le présent article qui s’attarde sur un problème bien connu des administrateurs PostgreSQL : la saturation de l’espace disque 💥 !

→ Lire la suite...

PostgreSQL 18 - Suppression de jointures inutiles

Reviers, le 7 mars 2025

Une fonctionnalité m’avait beaucoup impressionné en version 9.0, bien qu’elle ait été éclipsée par la grande nouveauté, la réplication en natif. Cette fonctionnalité avait pour but de supprimer les jointures inutiles. En fait, seul un cas de jointure inutile dans un LEFT JOIN était traité. Depuis, beaucoup de patchs ont circulé pour détecter d’autres cas, mais aucun n’a passé la sélection jusqu’à la semaine dernière. La nouveauté concerne les jointures d’une table sur elle-même. C’est ce que je vais détailler dans cet article.

→ Lire la suite...

Linux Pratique - Maintenance d’une instance PostgreSQL

Reviers, 3 mars 2025

Une fois un serveur PostgreSQL installé, plusieurs thématiques sont à prendre en considération : la sauvegarde, la supervision et la maintenance. C’est ce dernier point que nous allons voir dans cet article.

→ Lire la suite...

La PGSession 17 en replay

Saint-Étienne, le 28 février 2025

La journée Conférences de la PGSession 17 s’est tenue le 15 janvier à Paris. Voici les liens vers les supports de présentation et les vidéos en replay !

→ Lire la suite...