PostgreSQL La base de donnees la plus sophistiquee au monde.

Forums PostgreSQL.fr

Le forum officiel de la communauté francophone de PostgreSQL

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

#1 08/06/2011 16:26:15

mich30
Membre

./oid2name -d eco -U postgres -f 4441919 ne trouve pas le filenode ou

bonjour,


j'ai un fichier 4441919 (1giga) dans data/base/72952 quand je fais

./oid2name  -d eco -U postgres -f 4441919
il ne le trouve pas , surement car j'ai une grosse requete qui s'est mal passé

Puis je supprimer ce fichier

Sinon comme Faut t'il gerer les filenode orphelins ?


merci

Dernière modification par mich30 (08/06/2011 16:26:45)

Hors ligne

#2 08/06/2011 20:54:19

gleu
Administrateur

Re : ./oid2name -d eco -U postgres -f 4441919 ne trouve pas le filenode ou

Puis je supprimer ce fichier

Non, surtout pas.

Sinon comme Faut t'il gerer les filenode orphelins ?

PostgreSQL se débrouillera très bien tout seul. Il finira par le supprimer.


Guillaume.

Hors ligne

#3 08/06/2011 21:50:27

mich30
Membre

Re : ./oid2name -d eco -U postgres -f 4441919 ne trouve pas le filenode ou

mercii mais le probleme et que j'ai beaucoup de fichiers filenode "orphelins" de 1 giga
c'est une requete geometrique qui s'est mal passé et cela sature la base de données .
Quand postgres va les enlever ? comment ?  avec autovaccum a on  ?
Avez vous une doc sur ce type de probleme
merci

Dernière modification par mich30 (08/06/2011 21:52:40)

Hors ligne

#4 08/06/2011 23:25:37

gleu
Administrateur

Re : ./oid2name -d eco -U postgres -f 4441919 ne trouve pas le filenode ou

C'est le bgwriter qui s'en chargera. À condition que ce soit bien des fichiers inutiles.


Guillaume.

Hors ligne

#5 09/06/2011 09:54:16

mich30
Membre

Re : ./oid2name -d eco -U postgres -f 4441919 ne trouve pas le filenode ou

bon je comprends plus ces filenode ne sont pas referencés dans pg_class
et ca fait un jour qu'ils sont dans dans ce repertoire cela me sature mon espace disque
comment puis je faire ?
merci

Hors ligne

#6 09/06/2011 17:58:41

mich30
Membre

Re : ./oid2name -d eco -U postgres -f 4441919 ne trouve pas le filenode ou

a ce soir j'ai regardé la taille schemas, des tables, des index < 200 giga
et dans mon data \base\72952  j'ai 900 giga donc espace libre de mon  mountage de 8 giga
les filenode sont entassé dans ce repertoire a coup de 1giga ( donc au total 900 giga)
j'ai fait un vacuum rien n'y fait , le bgwriter y a longtemps qu'il aurait fait le menage !!
une piste ????  merci

Hors ligne

#7 14/06/2011 12:03:04

mich30
Membre

Re : ./oid2name -d eco -U postgres -f 4441919 ne trouve pas le filenode ou

c'est une mauvaise requete qui s'est passé confirmation à ce jour , toujours 900 giga de plein
est ce que ces valeurs

shared_buffers = 512MB
fsync = on             
synchronous_commit = off
wal_writer_delay = 2000ms
checkpoint_segments = 20         
checkpoint_timeout = 1min         
checkpoint_completion_target = 0.8
checkpoint_warning = 1min         
bgwriter_delay = 10ms       
bgwriter_lru_maxpages = 1000
bgwriter_lru_multiplier = 10


peuvent resoudre mon probleme??

(http://postgresql.1045698.n5.nabble.com … 71472.html)

Hors ligne

#8 14/06/2011 12:15:09

gleu
Administrateur

Re : ./oid2name -d eco -U postgres -f 4441919 ne trouve pas le filenode ou

Il faudrait déjà comprendre la raison du problème : comment l'exécution d'une requête peut prendre autant d'espace sur le disque ? avec la requête, il serait plus simple de répondre.


Guillaume.

Hors ligne

#9 14/06/2011 13:17:06

mich30
Membre

Re : ./oid2name -d eco -U postgres -f 4441919 ne trouve pas le filenode ou

c'est une requete avec une mauvaise jointure sur une autre table encapsulé dans un create table qui ne sait jamais fait
merci

Hors ligne

#10 14/06/2011 15:56:51

gleu
Administrateur

Re : ./oid2name -d eco -U postgres -f 4441919 ne trouve pas le filenode ou

Pour aller plus loin, il faut la requête, pas sa description.


Guillaume.

Hors ligne

#11 14/06/2011 17:28:28

mich30
Membre

Re : ./oid2name -d eco -U postgres -f 4441919 ne trouve pas le filenode ou

drop table myschema.infoparc_sample ;
create table myschema.infoparc_sample as
select a.id_parc,a.the_geom,X(a.centroide),Y(a.centroide),b.distvill, b.drp, b.drs, b.dgare,b.dzconst, b.dsurf_eau , c.dist_bat_majic, d.dist_bat_pci,e.dr
from  infoparc2010.infop_dist as a
left join
myschema.distance as b on (a.id_parc=b.id_parc)
left join  myschema.distance_majic as c on (a.id_parc=c.id_parc)
left join  myschema.distance_pci as d on (a.id_parc=d.id_parc)
left join  myschema.distance_chemin as e on (a.id_parc=d.id_parc)--- erreur était ici sur d.id_parc au lieu de e.id_parc --> ce qui a conduit à un table gigantesque (la table infoparc2010.infop_dist contient 250 000 obs)
where substr(a.id_parc,1,5) in (select id_insee from myschema.sample1_com);

Hors ligne

#12 14/06/2011 18:01:08

gleu
Administrateur

Re : ./oid2name -d eco -U postgres -f 4441919 ne trouve pas le filenode ou

Et la correction a corrigé le problème des X Go créés ?


Guillaume.

Hors ligne

#13 15/06/2011 10:15:29

mich30
Membre

Re : ./oid2name -d eco -U postgres -f 4441919 ne trouve pas le filenode ou

malheureusement non on est toujours a 7 giga d'espace libre
la create table myschema.infoparc_sample n'a jamais été crée ce qui est normal
Cette requete a pris  tout l'espace disque .
Il faudrez peut etre forcer le bgwriter pour qu'il nettoie mais comment ?
ou autre solution , le probleme est vraiment pointu !
merci d'avance

Hors ligne

#14 21/06/2011 10:50:50

mich30
Membre

Re : ./oid2name -d eco -U postgres -f 4441919 ne trouve pas le filenode ou

j'ai supprimer les filenode  orphelins (avec oid2name ou aucune table ets référencé ) et cela marche
merci

Hors ligne

Pied de page des forums