Annonce
Pour sécuriser votre compte sur les forums du GeoRezo, nous demandons de changer votre mot de passe.
Vous allez recevoir un message pour effectuer ce changement de mot de passe.
Merci de bien respecter les règles préconisées.
#1 Fri 05 March 2010 08:54
- ppluvinet
- Participant assidu
- Lieu: LYON
- Date d'inscription: 6 Aug 2007
- Messages: 608
Postgis mémoire épuisée
Bonjour,
Je viens de créer un objet avec près de 7 millions de lignes (il s'agit d'une grille) sous Postgis.
Je viens de créer les index spatiaux:
Code:
CREATE INDEX grid100m_the_geom_gist ON grid100m USING GIST ( the_geom gist_geometry_ops ) ;
Or , quand je lance un vacuum analyse, j'ai le message d'erreur suivant
Code:
ERREUR: mémoire épuisée DETAIL: Échec d'une requête de taille 252281286
J'ai relancé le serveur postgres mais j'ai toujours ce même message.
Mon ordi fait 8Go de RAM donc normalement j'ai de la marge.
Y'aurait-il un paramètre à modifier dans le postgresql.conf ?
Je l'avez déjà optimisé il y a deux mois suite à la lecture de quelques pages web.
Et tout fonctionnait à merveille.
Merci d'avance pour vos suggestions
Pascal PLUVINET
Hors ligne
#2 Fri 05 March 2010 09:46
Re: Postgis mémoire épuisée
Pascal,
Après installation du serveur qu'à tu modifié au niveau de la configuration ? De base, postgresql est configuré pour être installé sur des PC avec 64 M de RAM (voire un peu plus) alors forcément avec une limite aussi basse ...
Es tu sous Windows ?
Y.
Yves Jacolin, bénévole de l'association GeoRezo.net, agit au nom et pour le compte de l'association - Partageons ce qui nous départage !! - GeoRezo vous aide ? Aidez GeoRezo !
Hors ligne
#3 Fri 05 March 2010 09:53
Re: Postgis mémoire épuisée
Bonjour Pascal,
As tu lu cet article ? http://www.dalibo.org/hs44_rapide_confi … postgresql ?
Peut-être y trouveras tu une réponse.
A bientôt,
Mathieu BOSSAERT
Association GeoRezo
Hors ligne
#4 Fri 05 March 2010 09:53
- ppluvinet
- Participant assidu
- Lieu: LYON
- Date d'inscription: 6 Aug 2007
- Messages: 608
Re: Postgis mémoire épuisée
Je suis sous Windows
Si je me souviens bien j'ai changé ces paramètres :
Code:
# - Memory - shared_buffers = 1050MB # min 128kB temp_buffers = 9MB # min 800kB work_mem = 800MB # min 64kB maintenance_work_mem = 800MB # min 1MB
Des idées?
Effectivement, j'avais pris les conseils d'un article comme celui proposé par Mathieu mais j'ose plus vraiment le modifier sans conseil d'une personne plus expérimentée !
Dernière modification par ppluvinet (Fri 05 March 2010 10:11)
Pascal PLUVINET
Hors ligne
#5 Fri 05 March 2010 11:29
- ppluvinet
- Participant assidu
- Lieu: LYON
- Date d'inscription: 6 Aug 2007
- Messages: 608
Re: Postgis mémoire épuisée
D'après le LOG, il faudrait que j'augmente le paramètre "checkpoint_segments" qui est par défaut à 3MB.
Code:
# - Checkpoints - #checkpoint_segments = 3 # in logfile segments, min 1, 16MB each #checkpoint_timeout = 5min # range 30s-1h #checkpoint_completion_target = 0.5 # checkpoint target duration, 0.0 - 1.0 #checkpoint_warning = 30s # 0 disables
J'ai fait quelques recherches mais je ne sais pas à combien l'augmenter et quelle vont être les conséquences sur d'autres opérations que VACUUM.
Vu que c'est un problème postgresql , c'est peut-être pas le meilleur forum. Ceci dit , la maintenance de très grosses tables avec index spatiaux peuvent intérésser d'autres personnes.
Si je ne trouve pas ici, j'essaierai de faire quand même un retour...
Pascal PLUVINET
Hors ligne
#6 Fri 05 March 2010 11:52
Re: Postgis mémoire épuisée
Bonjour,
Voici un peu de lecture, en espérant que cela t'apportera des infos intéressantes. La bibliographie est en bas de page
http://softlibre.gloobe.org/doku.php/fo … ationpgsql
Y.
Yves Jacolin, bénévole de l'association GeoRezo.net, agit au nom et pour le compte de l'association - Partageons ce qui nous départage !! - GeoRezo vous aide ? Aidez GeoRezo !
Hors ligne
#7 Fri 05 March 2010 13:15
- ppluvinet
- Participant assidu
- Lieu: LYON
- Date d'inscription: 6 Aug 2007
- Messages: 608
Re: Postgis mémoire épuisée
L'idée n'est pas autour des checkpoint_segments.
On m'a conseillé sur un forum voisin de baisser maintenance_work_mem (au alentour de 128 Mo), ce qui rend alors les vacuum plus lent mais avec moins d'entrées et sorties.
Sinon, le vacuum full analyse , quant à lui, fonctionne également mais c'est plus lent.
A bientôt,
Pascal PLUVINET
Hors ligne