Migration vers 8.4 et supérieures¶
Paramètres de configuration¶
Les paramètres de configuration suivants ont été modifiés :
max_prepared_transactions
: valeur par défaut était de5
dans les versions précédentes et est maintenant à0
dans cette version ;log_restartpoints
a été supprimé du fichierrecovery.conf
, utiliser le paramètrelog_checkpoints
depostgresql.conf
à la place.
Tri des résultats¶
Dans la version 8.4, les opérations suivantes ne produisent plus systématiquement des résultats triés (c’était un effet de bord de l’implémentation) :
SELECT DISTINCT
;UNION
/INTERSECT
/EXCEPT
.
Si le résultat des requêtes doit être trié, il FAUT préciser l’ordre ORDER BY
explicitement dans la requête.
LIMIT
/ OFFSET
¶
Les ordres LIMIT
et OFFSET
n’acceptent plus de valeur négative.
Dans les versions précédentes, le comportement était de traiter silencieusement la valeur comme égale à 0
.
En 8.3 :
=> SELECT version();
PostgreSQL 8.3.15 on x86_64-unknown-linux-gnu, compiled by GCC gcc (Debian 4.4.6-8) 4.4.6
=> SELECT * FROM t1 LIMIT -1;
(0 rows)
En 8.4 :
=> SELECT version();
PostgreSQL 8.4.8 on x86_64-unknown-linux-gnu, compiled by GCC gcc (Debian 4.4.6-8) 4.4.6, 64-bit
=> SELECT * FROM t1 LIMIT -1;
ERROR: LIMIT must not be negative
LOCK TABLE
¶
L’ordre LOCK TABLE
lève désormais une erreur s’il est utilisé à l’extérieur d’une transaction.
pg_hba.conf
¶
La méthode d’authentification crypt
a été supprimée.