Vous n'êtes pas identifié(e).

#1 30/05/2012 13:44:27

roya
Membre

Recyclage des WAL

Bonjour,

Afin de comprendre la mécanique de création des WAL et leur recyclage, j'ai fait des insertions dans ma base de données qui ont générées la création de fichiers sous pg_xlog.
J'ai atteint la limite de 47 fichiers de 16 Mo.
Mes paramètres de configuration étant les suivants :
- checkpoint_segments = 16
- checkpoint_completion_target = 0.9
- wal_buffers = 8MB
Ce nombre de fichiers semble correspondre à la limite donnée dans la documentation : (2 + checkpoint_completion_target) * checkpoint_segments + 1 ou checkpoint_segments + wal_keep_segments + 1

Suite au checkpoint, il me reste 36 fichiers WAL de 16Mo.
Lorsque je refais des insertions, je vois que le nombre de fichiers WAL n'augmente pas et qu'il y a un recyclage.

Mais je ne comprends pas pourquoi je ne descends pas en dessous de 36 fichiers.
J'ai essayé de faire un CHECKPOINT manuel mais les traces m'indiquent qu'il n'y a aucun fichier WAL à "récupérer" :
checkpoint complete: wrote 0 buffers (0.0%); 0 transaction log file(s) added, 0 removed, 0 recycled; write=0.002 s, sync=0.000 s, total=0.035 s; sync files=0, longest=0.000 s, average=0.000 s

==> Pouvez-vous svp m'aider à comprendre quel est le noombre minimum de fichiers WAL ?
==> et pourquoi le nombre de fichiers WAL ne diminue pas, pourquoi les fichiers WAL qui ne sont plus nécessaires ne sont pas supprimés ?

Par avance merci.

Hors ligne

#2 30/05/2012 14:26:55

gleu
Administrateur

Re : Recyclage des WAL

Ils ne sont pas supprimés, ils sont renommés. Ça permet d'éviter des écritures disques inutiles. Il n'y a pas vraiment de nombre minimum et de nombre maximum. En usage normal, ça ne devrait pas dépasser ce que vous indiquez (ie environ 3*checkpoint_segments + 1). Mais PostgreSQL peut avoir besoin de plus et il ne se gênera pas pour les créer, et il peut en avoir moins.


Guillaume.

Hors ligne

#3 30/05/2012 16:12:49

roya
Membre

Re : Recyclage des WAL

Merci pour votre réponse.
Si je comprends bien, il n'y a aucune explication ou limite permettant de comprendre pourquoi il reste 36 fichiers WAL suite au checkpoint ?

Hors ligne

#4 30/05/2012 16:45:22

gleu
Administrateur

Re : Recyclage des WAL

Bin si. La raison est qu'il n'y a aucun intérêt à supprimer les anciens. Ça fait des opérations disques pour rien. Si jamais vous avez plus de 46 journaux, il supprimera les journaux supplémentaires mais il en gardera 46.


Guillaume.

Hors ligne

#5 30/05/2012 17:07:30

roya
Membre

Re : Recyclage des WAL

C'est OK, merci beaucoup !

Hors ligne

Pied de page des forums