PostgreSQL 19 approche de sa sortie : ce que les équipes de bases de données doivent tester dès maintenant

PostgreSQL 19 ajoute la réorganisation concurrente, les conseils au planificateur et des améliorations de la réplication. Découvrez quelles limites et quels changements de mise à niveau tester avant la disponibilité générale.

Lire en : English · తెలుగు · हिन्दी · Français · Español

Se connecter pour enregistrer

Illustration d’un système de base de données PostgreSQL 19 avec des panneaux consacrés à la réorganisation (repacking), à la planification des requêtes, à la réplication et à la maintenance, ainsi qu’un jalon de sortie prévu en novembre 2026.

PostgreSQL 19 introduit la réorganisation native des tables (repacking), davantage de contrôle sur les plans d’exécution et des améliorations de la réplication et de la maintenance. La disponibilité générale étant prévue pour le 19 novembre 2026, les équipes doivent évaluer ces avantages en tenant compte d’importantes limites de compatibilité et d’exploitation.

Une mise à niveau majeure de PostgreSQL peut modifier la façon dont une application interroge, maintient et réplique ses données. Ces changements peuvent améliorer les performances et réduire le travail d’exploitation. Ils peuvent aussi révéler des dépendances qui n’étaient pas évidentes avec une version antérieure. PostgreSQL 19 rend cette évaluation d’actualité.

Le PostgreSQL Global Development Group a publié PostgreSQL 19 RC1 le 15 octobre 2026. La RC2 est prévue pour le 12 novembre, et la disponibilité générale pour le 19 novembre, à condition qu’aucun problème bloquant pour la publication ne survienne. Une version candidate (release candidate) est en grande partie identique à la version finale prévue, même si certains correctifs peuvent encore être appliqués avant la disponibilité générale.

Au 6 novembre, PostgreSQL 19 reste une version candidate. Il s’agit d’une préversion, et les équipes doivent la tester en dehors de la production. La question utile pour les équipes de bases de données est de savoir quels changements méritent d’être testés avant la version finale.

Qu’est-ce qui change ?

PostgreSQL 19 apporte des améliorations à la maintenance des tables, à la planification des requêtes, à la réplication et à l’exploitation des bases de données.

CapacitéCe qui changeCe que les équipes doivent évaluer
REPACK natifRéécrit les tables pour récupérer de l’espace disqueVerrouillage, besoins de stockage et visibilité des transactions
pg_plan_adviceInfluence certaines décisions du planificateurPerformances des requêtes et risque de conseils devenus obsolètes
Opérations de vacuum amélioréesMaintenance parallèle des index et meilleure priorisationConsommation de ressources par la maintenance
Réplication logiqueSynchronisation des séquences et activation plus soupleComportement lors des migrations et des bascules (switchover)
Commande WAIT sur un serveur secondaire (standby)Attend une position donnée du journal de transactions (write-ahead log, WAL)Cohérence des lectures, latence et gestion des délais d’expiration
Changements de compatibilitéValeurs par défaut modifiées et fonctionnalités suppriméesDépendances des applications, de l’authentification et des extensions

Ces capacités répondent à des besoins différents. Les équipes doivent donner la priorité à celles qui répondent à un problème d’exploitation réel plutôt que de tester chaque fonctionnalité de la même manière.

Source : PostgreSQL 19 preliminary release notes.

1. Le REPACK natif offre une nouvelle option de maintenance

Les tables PostgreSQL peuvent accumuler de l’espace inutilisé à mesure que des lignes sont mises à jour ou supprimées. Un VACUUM ordinaire rend une grande partie de cet espace réutilisable, mais ne le restitue généralement pas au système d’exploitation. PostgreSQL 19 introduit la commande native REPACK, qui réécrit une table et ses index pour récupérer de l’espace. Elle peut aussi réorganiser les lignes selon un index.

L’option CONCURRENTLY permet une activité ordinaire sur la table pendant une grande partie de l’opération, ce qui évite le long verrou exclusif qu’exige une réécriture classique de la table. C’est utile, mais la réorganisation concurrente comporte des limites importantes.

Elle n’est pas sûre vis-à-vis de MVCC (MVCC-safe). MVCC (multiversion concurrency control, contrôle de concurrence multiversion) est le mécanisme qui permet à chaque transaction de travailler à partir d’un instantané (snapshot) cohérent des données. PostgreSQL avertit que les transactions qui utilisent des instantanés pris avant le début de l’opération de réorganisation peuvent voir la table comme vide après la validation (commit) de la transaction de réorganisation.

La réorganisation concurrente prend aussi un verrou exclusif pendant sa phase finale d’échange des fichiers. Elle nécessite suffisamment d’espace disque temporaire pour contenir une autre copie de la table et de ses index, et un stockage supplémentaire peut être nécessaire pour le tri et les modifications concurrentes.

D’autres restrictions s’appliquent. Par exemple, la réorganisation concurrente n’est pas disponible pour les tables partitionnées, les tables non journalisées (unlogged) et certaines tables dépourvues d’informations d’identité adaptées. Une réorganisation peut aussi échouer si des commandes DDL, qui modifient la structure d’une table, s’exécutent sur la table pendant l’opération, ou dans d’autres conditions documentées.

Pour ces raisons, elle ne doit pas être considérée comme un remplacement direct du VACUUM de routine. Les équipes de bases de données doivent d’abord tester des tables représentatives, la capacité disque disponible, le comportement des transactions, le verrouillage et les procédures de reprise. Lorsque la prévention du rebouclage des identifiants de transaction (transaction ID wraparound) est en jeu, PostgreSQL continue de recommander VACUUM, et non REPACK.

REPACK CONCURRENTLY : ses apports et ses limitesTrois points. REPACK CONCURRENTLY récupère de l’espace tandis que l’activité ordinaire sur la table se poursuit pendant une grande partie de l’opération. Il n’est pas sûr vis-à-vis de MVCC (MVCC-safe), prend un verrou exclusif pendant sa phase finale d’échange des fichiers et nécessite de l’espace disque temporaire pour une autre copie. Les équipes doivent d’abord tester des tables représentatives, la capacité disque, le verrouillage et la reprise.{« publisher »: « TechiesJournal », « author »: « Prasad Kukkala », « asset »: « postgresql-19-release-candidate-features-upgrade-readiness-figure-1 », « role »: « diagram », « title »: « REPACK CONCURRENTLY: what it offers and what limits it », « description »: « Three points. REPACK CONCURRENTLY reclaims space while ordinary table activity continues for much of the operation. It is not MVCC-safe, takes an exclusive lock in its final file-swap phase and needs temporary disk space for another copy. Teams should test representative tables, disk capacity, locking and recovery first. », « caption »: « Figure 1. REPACK CONCURRENTLY, what it offers and what limits it. Select a point to read it. », « creator »: « TechiesJournal, authored as programmatic SVG by Claude (AI agent), not a generative image model », « generation_method »: « programmatic SVG, tools/postgresql-19-rc-readiness/figures.py », « source_slug »: « postgresql-19-release-candidate-features-upgrade-readiness », « source_revision »: « V1.3 », « created »: « 2026-11-04 », « rights »: « Copyright 2026 TechiesJournal. All rights reserved. », « external_licence »: « none, no third-party material, no vendor logo », « watermark »: « visible TechiesJournal wordmark, lower right, part of the SVG », « language »: « fr (labels translated from the English figure) », « viewBox »: « 0 0 420 266 », « format »: « inline SVG, part of the post content (no separate file) », « file_size_bytes »: « not applicable, inline in the post », « evidence_note »: « Restates sentences of the approved manuscript only. No new claim, number or source. Not a measurement. », « light_dark_theme_verified »: « verified light and dark 2026-11-04: text and graphic contrast measured against WCAG AA, see the SOP audit record »}1Ses apportsrécupère l’espace, activité maintenue2Ses limitesnon MVCC-safe, verrou final, disque3À testertables, disque, verrou, repriseTechiesJournal
Figure 1. REPACK CONCURRENTLY, ses apports et ses limites. Sélectionnez un point pour le lire.

Ses apports

PostgreSQL 19 introduit la commande native REPACK, qui réécrit une table et ses index pour récupérer de l’espace. L’option CONCURRENTLY permet une activité ordinaire sur la table pendant une grande partie de l’opération, ce qui évite le long verrou exclusif qu’exige une réécriture classique de la table.

Ses limites

Elle n’est pas sûre vis-à-vis de MVCC (MVCC-safe). PostgreSQL avertit que les transactions qui utilisent des instantanés pris avant le début de l’opération de réorganisation peuvent voir la table comme vide après la validation (commit) de la transaction de réorganisation. La réorganisation concurrente prend aussi un verrou exclusif pendant sa phase finale d’échange des fichiers. Elle nécessite suffisamment d’espace disque temporaire pour contenir une autre copie de la table et de ses index, et un stockage supplémentaire peut être nécessaire pour le tri et les modifications concurrentes.

À tester

Les équipes de bases de données doivent d’abord tester des tables représentatives, la capacité disque disponible, le comportement des transactions, le verrouillage et les procédures de reprise. Lorsque la prévention du rebouclage des identifiants de transaction (transaction ID wraparound) est en jeu, PostgreSQL continue de recommander VACUUM, et non REPACK.

Source : PostgreSQL 19, REPACK command documentation.

2. La planification des requêtes devient plus contrôlable

PostgreSQL choisit normalement les plans d’exécution à l’aide de statistiques, d’estimations de coût et de règles de l’optimiseur. Il arrive que ses estimations aboutissent à un plan peu performant pour une charge de travail particulière. PostgreSQL 19 introduit le module pg_plan_advice, qui permet aux équipes de décrire et d’influencer certaines décisions du planificateur (planner). L’extension associée pg_stash_advice peut rattacher des conseils enregistrés à des requêtes individuelles.

Ces outils peuvent aider les équipes à analyser des régressions de plan ou à stabiliser un plan dont l’utilité est connue. Cependant, les conseils de plan ne remplacent pas l’optimiseur de requêtes. Ils agissent en restreignant les choix dont dispose le planificateur. Ils ne peuvent pas forcer PostgreSQL à utiliser un plan que le planificateur juge invalide ou qu’il ne génère pas.

Les conseils peuvent aussi devenir néfastes lorsque la distribution des données, les index ou les caractéristiques de la charge de travail changent. Par exemple, un conseil qui favorise un index particulier peut aider une requête aujourd’hui mais devenir inefficace une fois que la table sous-jacente a fortement grossi.

La bonne approche consiste à partir de statistiques fiables, d’index appropriés et de l’analyse des requêtes. Les conseils au planificateur ne doivent être introduits que là où des éléments probants reproductibles le justifient. Les équipes doivent aussi vérifier dans la durée que les conseils fournis restent applicables.

Sources : PostgreSQL 19, pg_plan_advice documentation et PostgreSQL 19 preliminary release notes.

3. La réplication devient plus souple

PostgreSQL 19 introduit des changements susceptibles de simplifier certains flux de réplication et de migration. L’une des améliorations permet aux abonnés (subscribers) de la réplication logique de maintenir les valeurs des séquences alignées sur celles du publieur (publisher). Cela peut être utile lors de migrations où les identifiants générés doivent continuer correctement après une bascule.

PostgreSQL 19 permet aussi d’activer la réplication logique, dans les conditions prises en charge, lorsque wal_level vaut replica, sans le redémarrage auparavant associé à la modification de ce paramètre. Ces changements réduisent une partie du travail de configuration et de migration, mais ils ne dispensent pas de vérifier la synchronisation, la cohérence des données ou le comportement en cas de basculement (failover). Une autre amélioration notable concerne la cohérence des lectures sur les serveurs secondaires.

La commande WAIT et la cohérence read-your-writes

En réplication asynchrone, une écriture peut être validée sur le serveur primaire (primary) avant qu’un serveur secondaire ne l’ait rejouée. Une application qui lit immédiatement sur le serveur secondaire peut donc voir des données plus anciennes. PostgreSQL 19 introduit WAIT FOR LSN, qui permet à une application d’attendre qu’une position donnée du journal de transactions soit atteinte. Un numéro de séquence de journal (log sequence number, LSN) identifie une position dans le journal de transactions.

Pour obtenir un comportement read-your-writes (lire ses propres écritures), l’application doit obtenir une position WAL appropriée auprès du serveur primaire après la validation de la transaction concernée, puis attendre que cette position soit rejouée sur le serveur secondaire. La distinction entre un WAL écrit, vidé sur disque (flushed) et rejoué est importante. Seul un rejeu (replay) réussi établit que les modifications validées concernées sont disponibles pour les lectures suivantes sur ce serveur secondaire.

Lire ses propres écritures sur un serveur secondaire avec WAIT FOR LSNQuatre étapes. Une écriture peut être validée sur le serveur primaire avant que le serveur secondaire ne l’ait rejouée. L’application obtient une position WAL auprès du serveur primaire après la validation, attend sur le serveur secondaire avec WAIT FOR LSN et gère les délais d’expiration, puis ne lit qu’une fois que le rejeu a atteint cette position.{« publisher »: « TechiesJournal », « author »: « Prasad Kukkala », « asset »: « postgresql-19-release-candidate-features-upgrade-readiness-figure-2 », « role »: « diagram », « title »: « Read-your-writes on a standby with WAIT FOR LSN », « description »: « Four steps. A write can commit on the primary before the standby has replayed it. The application takes a WAL position from the primary after the commit, waits on the standby with WAIT FOR LSN and handles timeouts, then reads only once replay has reached that position. », « caption »: « Figure 2. Read-your-writes with WAIT FOR LSN, step by step. Select a step to read it. », « creator »: « TechiesJournal, authored as programmatic SVG by Claude (AI agent), not a generative image model », « generation_method »: « programmatic SVG, tools/postgresql-19-rc-readiness/figures.py », « source_slug »: « postgresql-19-release-candidate-features-upgrade-readiness », « source_revision »: « V1.3 », « created »: « 2026-11-04 », « rights »: « Copyright 2026 TechiesJournal. All rights reserved. », « external_licence »: « none, no third-party material, no vendor logo », « watermark »: « visible TechiesJournal wordmark, lower right, part of the SVG », « language »: « fr (labels translated from the English figure) », « viewBox »: « 0 0 420 342 », « format »: « inline SVG, part of the post content (no separate file) », « file_size_bytes »: « not applicable, inline in the post », « evidence_note »: « Restates sentences of the approved manuscript only. No new claim, number or source. Not a measurement. », « light_dark_theme_verified »: « verified light and dark 2026-11-04: text and graphic contrast measured against WCAG AA, see the SOP audit record »}1Commit au primairepas forcément sur le secondaire2Lire la position WALprise après le commit3Attente secondaireWAIT FOR LSN, gérer le délai4Puis lireseulement après le rejeuTechiesJournal
Figure 2. Lire ses propres écritures avec WAIT FOR LSN, étape par étape. Sélectionnez une étape pour la lire.

Commit au primaire

En réplication asynchrone, une écriture peut être validée sur le serveur primaire (primary) avant qu’un serveur secondaire ne l’ait rejouée. Une application qui lit immédiatement sur le serveur secondaire peut donc voir des données plus anciennes.

Lire la position WAL

Pour obtenir un comportement read-your-writes (lire ses propres écritures), l’application doit obtenir une position WAL appropriée auprès du serveur primaire après la validation de la transaction concernée, puis attendre que cette position soit rejouée sur le serveur secondaire.

Attente secondaire

PostgreSQL 19 introduit WAIT FOR LSN, qui permet à une application d’attendre qu’une position donnée du journal de transactions soit atteinte. L’attente peut aussi ajouter de la latence. La commande prend en charge la gestion d’un délai d’expiration, mais un délai omis ou égal à zéro peut entraîner une attente indéfinie.

Puis lire

Seul un rejeu (replay) réussi établit que les modifications validées concernées sont disponibles pour les lectures suivantes sur ce serveur secondaire. Les applications doivent gérer correctement les délais d’expiration, la promotion du serveur secondaire et les interruptions de la restauration (recovery).

L’attente peut aussi ajouter de la latence. La commande prend en charge la gestion d’un délai d’expiration, mais un délai omis ou égal à zéro peut entraîner une attente indéfinie. Les applications doivent gérer correctement les délais d’expiration, la promotion du serveur secondaire et les interruptions de la restauration (recovery). Il s’agit d’un mécanisme de cohérence utile, et non d’un substitut à la supervision de la réplication ou à la gestion des défaillances au niveau de l’application.

Source : PostgreSQL 19, WAIT documentation.

4. Améliorations de la maintenance et des performances

PostgreSQL 19 améliore aussi la façon dont les bases de données effectuent leurs tâches de fond. Les changements comprennent une priorisation plus souple de l’autovacuum et une maintenance parallèle des index, ainsi que des améliorations de la planification, de l’exécution et des E/S.

Ces améliorations peuvent aider certaines charges de travail, mais leurs effets dépendent de la taille des tables, du nombre d’index, de la configuration et des ressources disponibles. Le vacuum parallèle, par exemple, concerne principalement les phases de vacuum des index et de nettoyage des index. Il ne rend pas toutes les opérations de vacuum parallèles et ne garantit pas une exécution plus rapide.

De même, une priorisation plus élaborée de l’autovacuum ne dispense pas de surveiller la croissance des tables et l’avancement de la maintenance. Les équipes doivent mesurer la durée de la maintenance, l’utilisation des E/S, la latence des requêtes et la contention des ressources avant et après la mise à niveau. Les notes de version décrivent les capacités, mais les performances en production doivent être démontrées sur des charges de travail représentatives.

Source : PostgreSQL 19, Routine Vacuuming.

5. Les changements de compatibilité méritent une attention particulière

Plusieurs changements de PostgreSQL 19 peuvent affecter les applications existantes et les outils d’exploitation.

ChangementConséquence possible
Compilation JIT (just-in-time, à la volée) désactivée par défautCertaines charges de travail analytiques peuvent nécessiter une configuration JIT explicite
Authentification RADIUS suppriméeLes installations qui utilisent RADIUS doivent migrer vers une autre méthode d’authentification prise en charge
standard_conforming_strings toujours activéLes anciens scripts SQL ou dumps de bases de données qui reposent sur l’ancien comportement peuvent nécessiter des modifications
Classes d’opérateurs d’index par défaut modifiées pour inet et cidrpg_upgrade refuse les clusters qui ont des index btree_gist sur ces types, ces clusters nécessitent donc d’abord des corrections
Changements des interfaces système et de la configurationLes outils de supervision, les extensions ou l’automatisation peuvent nécessiter des mises à jour de compatibilité

Un point particulièrement important concerne les dumps (sauvegardes logiques) de bases de données. PostgreSQL avertit que les dumps créés avec d’anciennes versions de pg_dump ou pg_dumpall alors que standard_conforming_strings était désactivé peuvent ne pas se charger correctement dans PostgreSQL 19. Les équipes doivent utiliser un processus de dump pris en charge et vérifier la restauration plutôt que de supposer qu’une ancienne sauvegarde est compatible.

Les notes de version signalent aussi des cas où pg_upgrade refusera de mettre à niveau des clusters contenant certains index ou noms d’objets incompatibles. Une mise à niveau de version majeure exige une stratégie de migration appropriée, comme pg_upgrade, un dump suivi d’une restauration, ou une approche adaptée fondée sur la réplication logique. Mettre à jour les paquets comme s’il s’agissait d’une version mineure ne suffit pas.

Source : PostgreSQL 19, Migration and Compatibility Notes.

Que doivent tester les équipes de bases de données dès maintenant ?

Une évaluation utile de la version candidate peut rester ciblée.

Compatibilité des applications : exécutez des tests applicatifs et d’intégration représentatifs sur PostgreSQL 19 RC1. Incluez le comportement SQL, l’authentification, les extensions et les pilotes de bases de données.

Requêtes critiques : comparez les plans d’exécution et les performances réelles des requêtes qui ont une incidence sur l’activité de l’entreprise.

Comportement de la maintenance : testez REPACK et les améliorations du vacuum sur des données représentatives. Incluez l’utilisation du disque, le verrouillage, le comportement des anciens instantanés et les conditions d’échec.

Réplication : validez la synchronisation des séquences, le comportement de WAIT sur le serveur secondaire, la latence et la gestion des erreurs lorsque ces fonctionnalités vous concernent.

Migration et reprise : répétez à blanc la méthode de mise à niveau prise en charge, vérifiez que les sauvegardes peuvent être restaurées et documentez la procédure de reprise en cas d’échec de la migration.

Ce que les équipes de bases de données doivent tester pendant la période de version candidateSix points. Testez la compatibilité des applications, les requêtes critiques, le comportement de la maintenance, la réplication, ainsi que la migration et la reprise. Faites tout cela en dehors de la production, car une version candidate ne constitue pas une base pour des charges de travail de production.{« publisher »: « TechiesJournal », « author »: « Prasad Kukkala », « asset »: « postgresql-19-release-candidate-features-upgrade-readiness-figure-3 », « role »: « diagram », « title »: « What database teams should test during the release candidate period », « description »: « Six points. Test application compatibility, critical queries, maintenance behavior, replication, and migration and recovery. Do all of it outside production, because a release candidate is not a basis for production workloads. », « caption »: « Figure 3. A focused release-candidate test plan. Select a point to read it. », « creator »: « TechiesJournal, authored as programmatic SVG by Claude (AI agent), not a generative image model », « generation_method »: « programmatic SVG, tools/postgresql-19-rc-readiness/figures.py », « source_slug »: « postgresql-19-release-candidate-features-upgrade-readiness », « source_revision »: « V1.3 », « created »: « 2026-11-04 », « rights »: « Copyright 2026 TechiesJournal. All rights reserved. », « external_licence »: « none, no third-party material, no vendor logo », « watermark »: « visible TechiesJournal wordmark, lower right, part of the SVG », « language »: « fr (labels translated from the English figure) », « viewBox »: « 0 0 420 494 », « format »: « inline SVG, part of the post content (no separate file) », « file_size_bytes »: « not applicable, inline in the post », « evidence_note »: « Restates sentences of the approved manuscript only. No new claim, number or source. Not a measurement. », « light_dark_theme_verified »: « verified light and dark 2026-11-04: text and graphic contrast measured against WCAG AA, see the SOP audit record »}1Compatibilité applicativeSQL, authentif., extensions, pilotes2Requêtes clésplans et performance, requêtes clés3MaintenanceREPACK, vacuum, disque, verrous4Réplicationséquences, WAIT, latence, échecs5Migration et reprisemise à niveau, restaurations, reprise6Hors productionune RC ne sert pas de base en productionTechiesJournal
Figure 3. Un plan de test ciblé pour la version candidate. Sélectionnez un point pour le lire.

Compatibilité applicative

Exécutez des tests applicatifs et d’intégration représentatifs sur PostgreSQL 19 RC1. Incluez le comportement SQL, l’authentification, les extensions et les pilotes de bases de données.

Requêtes clés

Comparez les plans d’exécution et les performances réelles des requêtes qui ont une incidence sur l’activité de l’entreprise.

Maintenance

Testez REPACK et les améliorations du vacuum sur des données représentatives. Incluez l’utilisation du disque, le verrouillage, le comportement des anciens instantanés et les conditions d’échec.

Réplication

Validez la synchronisation des séquences, le comportement de WAIT sur le serveur secondaire, la latence et la gestion des erreurs lorsque ces fonctionnalités vous concernent.

Migration et reprise

Répétez à blanc la méthode de mise à niveau prise en charge, vérifiez que les sauvegardes peuvent être restaurées et documentez la procédure de reprise en cas d’échec de la migration.

Hors production

Ces tests doivent se dérouler en dehors de la production. L’annonce de la RC1 indique que d’autres correctifs peuvent encore être appliqués avant la disponibilité générale : une version candidate ne constitue donc pas une base pour des charges de travail de production.

Ces tests doivent se dérouler en dehors de la production. L’annonce de la RC1 indique que d’autres correctifs peuvent encore être appliqués avant la disponibilité générale : une version candidate ne constitue donc pas une base pour des charges de travail de production.

Qu’en est-il des installations PostgreSQL existantes ?

Toutes les organisations n’ont pas besoin de PostgreSQL 19 immédiatement. Les équipes qui utilisent déjà des versions de PostgreSQL prises en charge doivent continuer à appliquer les mises à jour de sécurité tout en évaluant si la mise à niveau majeure apporte une réelle valeur d’exploitation.

PostgreSQL 14 demande une attention plus immédiate. Le projet PostgreSQL a fixé la fin du support communautaire de la version 14 au 12 novembre 2026.

Les organisations qui utilisent encore PostgreSQL 14 doivent donner la priorité au passage à une version prise en charge. Cela ne signifie pas nécessairement attendre PostgreSQL 19 ni l’adopter dès le jour de sa sortie.

Source : PostgreSQL versioning policy.

La portée pratique de PostgreSQL 19

PostgreSQL 19 apporte des améliorations utiles pour la maintenance des bases de données, le contrôle de la planification des requêtes et la réplication. Cette version introduit aussi des changements de comportement qui exigent des tests délibérés. La réorganisation native peut récupérer de l’espace, mais le fonctionnement concurrent comporte d’importantes contraintes de visibilité des transactions et de ressources. Les conseils au planificateur peuvent aider à traiter des requêtes difficiles, mais peuvent devenir néfastes lorsque les charges de travail changent. Les améliorations de la réplication offrent davantage de contrôle, mais exigent toujours une gestion rigoureuse de la cohérence et des défaillances.

Les équipes de bases de données devraient profiter de la période de version candidate pour vérifier quelles améliorations bénéficient à leurs charges de travail et quels changements exigent une préparation avant une mise à niveau en production.


Références et lectures complémentaires

  1. PostgreSQL Global Development Group, PostgreSQL 19 RC1 Released. 15 octobre 2026.
  2. PostgreSQL 19 Release Notes. Détails préliminaires sur les fonctionnalités et la compatibilité.
  3. PostgreSQL 19 REPACK Documentation. Exigences d’exploitation et avertissement sur MVCC.
  4. PostgreSQL 19 pg_plan_advice Documentation. Comportement et limites du planificateur.
  5. PostgreSQL 19 WAIT Documentation. Cohérence sur les serveurs secondaires et comportement des délais d’expiration.
  6. PostgreSQL 19 Routine Vacuuming. Comportement du vacuum et de la maintenance parallèle.
  7. PostgreSQL Versioning Policy. Versions prises en charge et dates de fin de support.

Vérification des sources : 6 novembre 2026. PostgreSQL 19 reste une version candidate, et les pages de documentation de PostgreSQL 19 citées ici sont des préversions. Les dates du 12 novembre pour la RC2 et du 19 novembre pour la disponibilité générale sont prévues, et non des publications confirmées. Les fonctionnalités et les détails de compatibilité doivent être revérifiés par rapport à la documentation de la version finale avant la publication publique.

Proposer une correction

Les corrections sont transmises à la rédaction et ne sont jamais publiées automatiquement. Aucun compte n'est nécessaire.