Nous utilisons des cookies pour vous garantir la meilleure expérience sur notre site. Si vous continuez à utiliser ce dernier, nous considèrerons que vous acceptez l'utilisation des cookies. J'ai compris ! ou En savoir plus !.
banniere

Le portail francophone de la géomatique


Toujours pas inscrit ? Mot de passe oublié ?
Nom d'utilisateur    Mot de passe              Toujours pas inscrit ?   Mot de passe oublié ?

Annonce

Printemps des cartes 2024

#1 Mon 05 May 2014 10:13

FloG38
Participant occasionnel
Date d'inscription: 5 Mar 2014
Messages: 15

PostGreSQL: requête interrompt la connexion au serveur

Bonjour,

Je travaille actuellement sur l'occupation su sol en Rhône-Alpes, pour cela j'ai importer des couches vecteurs sous PostGre auxquelles j'applique une requête pour les joindre et leur appliquer une érosion afin d'en sortir des couches vecteurs thématiques

Seulement deux de mes requêtes interrompent la connexion avec le serveur et donc ne fonctionnent pas lors que j'effectue l'érosion avec ST_Buffer

Exemple (partie où la requête fait planter le serveur):

DROP TABLE IF EXISTS ra.couche06_rapideye;
CREATE TABLE ra.couche06_rapideye AS
SELECT id, bdd, dep, nature, code_nat, macroclasse, nomenclature, rapideye, spot6, ST_Buffer(geom,couche06.rapideye) AS geom
FROM ra.couche06;

Je précise que cette requête fonctionne 6 fois sur 8.

Après avoir chercher à comprendre, j'ai trouver d'où venait le problème. Ce sont les couches ZONE_VEGETATION du département 26 de la BD Topo 2011 et les couches BATI, RESERVOIR, TERRAIN_SPORT et PISTE_AERODROME du département 69 de la BD Topo 2011 qui font planter car si je les retire de la requête, celle-ci fonctionne très bien.

Le problème ne vient pas de la géométrie de ces couches car j'ai fait toutes les vérifications possibles sur ce sujet et elles sont clean de ce côté là.

J'espère que je suis assez clair dans mes explications, dans le cas contraire je suis désolé car c'est la première fois que je post sur le forum Géo'BD, et je ne connais pas encore les conventions pour l'explication des problèmes.

Je me retourne donc vers vous car je me retrouve face à un mur.

Merci pour vos réponses.

Hors ligne

 

#2 Mon 05 May 2014 13:02

Nicolas Ribot
Membre
Lieu: Toulouse
Date d'inscription: 9 Sep 2005
Messages: 1536

Re: PostGreSQL: requête interrompt la connexion au serveur

Bonjour,

Pouvez-vous nous donner quelques infos:

• OS (windows, linux)
• Version de PG, version de postgis (select postgis_full_version())
• requete exacte qui ne marche pas (la requete buffer donnée n'est pas valide: elle ne contient pas de distance de buffer)
• Projection des données
• Message d'erreur avant la déconnexion du serveur (logs PG)

st_isvalid répond bien vrai pour toutes les geom des couches ?

Nicolas

Hors ligne

 

#3 Mon 05 May 2014 15:45

FloG38
Participant occasionnel
Date d'inscription: 5 Mar 2014
Messages: 15

Re: PostGreSQL: requête interrompt la connexion au serveur

- Je travail sur Windows XP et également 7
- PG Admin III, PostGis 1.5
- Requête : la distance de buffer est renseignée dans la colonne "rapideye" créée précédemment dans la requête, je ne l'ai pas mise en entier car elle est très longue. Cela marche pour d'autres tables que je veux créer de cette manière.
- Projection : 2154
- Aucun message d'erreur, le serveur se déconnecte d'un seul coup.

St_isvalid ne renvoie aucune erreur de géométrie

Florian

Hors ligne

 

#4 Tue 06 May 2014 08:42

Laurent Jégou
Participant assidu
Lieu: Toulouse
Date d'inscription: 5 Sep 2005
Messages: 442
Site web

Re: PostGreSQL: requête interrompt la connexion au serveur

La requête est lancée depuis PGAdmin installé sur la même machine que le serveur ou ce sont deux machines différentes ?


Enseignant-Chercheur en Géomatique
UT2J - Dept Géo / CNRS UMR LISST-Cieu / Master Sigma - Revue Mappemonde

Hors ligne

 

#5 Tue 06 May 2014 08:49

FloG38
Participant occasionnel
Date d'inscription: 5 Mar 2014
Messages: 15

Re: PostGreSQL: requête interrompt la connexion au serveur

Je l'ai fait depuis l'ordinateur où est installé le serveur et depuis un autre ordinateur mais je rencontre le même problème.

Hors ligne

 

#6 Tue 06 May 2014 10:26

Nicolas Ribot
Membre
Lieu: Toulouse
Date d'inscription: 9 Sep 2005
Messages: 1536

Re: PostGreSQL: requête interrompt la connexion au serveur

Pouvez-vous nous donner les versions completes des logiciels:

Pour Postgresql: select version();
Pour Postgis: select postgis_full_version();

La version de PgAdmin n'intervient pas

La branche 1.5 de Postgis a subi de nombreuses mises à jour, notamment pour des bugs de mémoire et de performance.
Il faut vérifier que vous avez la derniere version de la branche 1.5 (1.5.8), ou encore mieux, installer la dernière version.

(pour rappel, il est très important d'installer les dernières version de PostgreSQL et PostGIS pour garantir le moins de problèmes: en général, ces mises à jour se passent très bien)

Nicolas

Hors ligne

 

#7 Tue 06 May 2014 11:06

FloG38
Participant occasionnel
Date d'inscription: 5 Mar 2014
Messages: 15

Re: PostGreSQL: requête interrompt la connexion au serveur

Pour l'ordinateur où le serveur est installé :

Version PostGre :"PostgreSQL 9.1.3, compiled by Visual C++ build 1500, 32-bit"
Version PostGis : Message d'erreur

"PostgreSQL 9.1.3, compiled by Visual C++ build 1500, 32-bit"
ERREUR:  la fonction postgis_full_version() n'existe pas
LINE 1: select postgis_full_version();
               ^
HINT:  Aucune fonction ne correspond au nom donné et aux types d'arguments.
Vous devez ajouter des conversions explicites de type.


********** Erreur **********

ERREUR: la fonction postgis_full_version() n'existe pas
État SQL :42883
Astuce : Aucune fonction ne correspond au nom donné et aux types d'arguments.
Vous devez ajouter des conversions explicites de type.
Caractère : 8


Pour l'autre ordinateur :

Version PostGre : "PostgreSQL 9.1.3, compiled by Visual C++ build 1500, 32-bit"
Version PostGis : "POSTGIS="1.5.3" GEOS="3.3.1-CAPI-1.7.1" PROJ="Rel. 4.6.1, 21 August 2008" LIBXML="2.7.8" USE_STATS"

Hors ligne

 

#8 Tue 06 May 2014 11:50

Nicolas Ribot
Membre
Lieu: Toulouse
Date d'inscription: 9 Sep 2005
Messages: 1536

Re: PostGreSQL: requête interrompt la connexion au serveur

Pour le serveur, vous avez lancé la requete de version sur la bonne base ? (celle qui contient PostGIS, et pas "postgres", par ex ?)

Postgis et geos sont vieux, très probable que la nouvelle version règle votre problème de buffer.

Nicolas

Hors ligne

 

#9 Wed 07 May 2014 09:06

FloG38
Participant occasionnel
Date d'inscription: 5 Mar 2014
Messages: 15

Re: PostGreSQL: requête interrompt la connexion au serveur

Autant pour moi, vous avez raison je m'étais mis sur "postgres". J'obtiens donc la même chose que sur l'autre ordinateur.

Je vous remercie tous pour vos réponses. Je vais essayer de mettre à jour PostGre et PostGis mais je n'ai pas la main sur ce sujet, je vous tiendrais au courant quand cela sera effectué pour savoir si le problème vient bien de là.

Hors ligne

 

#10 Tue 13 May 2014 13:38

FloG38
Participant occasionnel
Date d'inscription: 5 Mar 2014
Messages: 15

Re: PostGreSQL: requête interrompt la connexion au serveur

Le problème venait en effet des versions de PostGRE et PostGIS. Avec PostGre 9.3.4 et PostGIS 2 cela marche très bien.

Merci

Hors ligne

 

Pied de page des forums

Powered by FluxBB