PostgreSQLLa base de données la plus sophistiquée au monde.
Documentation PostgreSQL 18 beta 2 » Internes » Vues système » pg_aios

53.2. pg_aios #

La vue pg_aios liste tous les gestionnaires I/O asynchrone actuellement en utilisation. Un gestionnaire I/O est utilisé pour référencer une opération I/O en cours de préparation, d'exécution ou en fin de vie. pg_aios contient une ligne pour chaque gestionnaire I/O.

Cette vue est principalement utile pour les développeurs de PostgreSQL, mais pourrait aussi être utile pour configurer finement PostgreSQL.

Tableau 53.2. Colonnes de pg_aios

Type de données

Description

pid int4

Identifiant du processus (PID) serveur qui lance cette I/O.

io_id int4

Identifiant du gestionnaire I/O. Les gestionnaires sont réutilisés une fois l'opération terminée (ou si le gestionnaire a terminé avant le début de l'opération). En cas de réutilisation, pg_aios.io_generation est incrémenté.

io_generation int8

Génération du gestionnaire I/O.

state text

État du gestionnaire I/O :

  • HANDED_OUT, référencé par le code mais inutilisé pour l'instant

  • DEFINED, l'information nécessaire pour l'exécution est connue

  • STAGED, prêt pour exécution

  • SUBMITTED, soumis à exécution

  • COMPLETED_IO, terminé, mais le résultat n'a pas encore été traité

  • COMPLETED_SHARED, traitement de fin partagé terminé

  • COMPLETED_LOCAL, fin du traitement local

operation text

Opération réalisée en utilisant le gestionnaire I/O :

  • invalid, encore inconnue

  • readv, une lecture vectorielle

  • writev, une écriture vectorielle

off int8

Décalage de l'opération I/O.

length int8

Longueur de l'opération I/O.

target text

Type de l'objet ciblé par l'opération I/O :

  • smgr, I/O sur des relations

handle_data_len int2

Longueur de la donnée associée avec l'opération I/O. Pour les I/O vers/du shared_buffers et temp_buffers, ceci indique le nombre de tampons traités par l'I/O.

raw_result int4

Résultat bas niveau de l'opération I/O, ou NULL si l'opération ne s'est pas encore terminée.

result text

Résultat haut niveau de l'opération I/O :

  • UNKNOWN signifie que le résultat de l'opération n'est pas encore connue.

  • OK signifie que l'opération I/O s'est terminée correctement.

  • PARTIAL signifie que l'I/O a terminé sans erreur, mais n'a pas traité toutes les données. Habituellement, les appelants auront besoin de tenter de nouveau et de réaliser le reste du travail dans un I/O séparé.

  • WARNING signifie que l'I/O s'est terminé sans erreur, mais que l'exécution de l'I/O a déclenché un avertissement. Par exemple quand un tampon corrompu a été rencontré alors que zero_damaged_pages est activé.

  • ERROR signifie que l'opération I/O a échoué avec une erreur.

target_desc text

Description de la cible de l'opération I/O.

f_sync bool

Drapeau indiquant si l'I/O est exécuté en synchrone.

f_localmem bool

Drapeau indiquant si l'I/O référence la mémoire locale du processus.

f_buffered bool

Drapeau indiquant si l'I/O est une opération dans le tampon.


La vue pg_aios est en lecture seule.

Par défaut, la vue pg_aios peut être lue uniquement par les superutilisateurs ou par les rôles membres du rôle pg_read_all_stats.