[Gfoss] PostGis Manager Extent: (unknown)

Salve a tutti, sto lavorando
su postgis attraverso Qgis. Il mio problema è il seguente:
PostGis Manager mi restituisce un Extent: (unknown) anche se il SRID è settato correttamente ho provato a lanciare il vacuum ma niente…
la cosa buffa è che su dati di prova che avevo caricato più di un anno vedo l’estensione spaziale l’estensione la vedo ed è corretta purtroppo senza qeusta estensione Mapguide OS non gestisce il dato…
Qualche Idea?

Grazia a tutti

On Thu, Dec 01, 2011 at 04:13:00PM +0100, Andrea wrote:

Salve a tutti, sto lavorando
su postgis attraverso Qgis. Il mio problema è il seguente:
PostGis Manager mi restituisce un Extent: (unknown) anche se il SRID è
settato correttamente ho provato a lanciare il vacuum ma niente..

Che versione di QGiS, e di PostGIS ?
Hai modo di vedere nei log la query usata da QGiS per estrarre l'extent ?
Se e' cosi' puoi invocare la query "a mano" e vedere cosa torna.

--strk;

  ,------o-.
  | __/ | Sign the pledge for PostGIS-2.0 Topology !
  | / 2.0 | http://www.pledgebank.com/postgistopology
  `-o------'

Ciao!
Mi succede sia sulla versione postgres 8.4 postgis 1.5 (ma anche sull’ultima versione 9.1)ho fatto una query di questo tipo SELECT ST_Extent (the_geom) FROM xxx.“Fabbricati” ; e mi restituisce il risultato corretto.
Ho provato a creare un layer vuoto sempre da PG Manager a cui ho aggiunto una geometria da qgis e magicamente mi è comparsa l’estensione dopo aver lanciato il vacuum… ho provato a fare la stessa cosa su un layer già esistente ma non è successo niente…
I log adesso li cerco
Aggiungo che ho provato a caricare i dati con SPIT, PG Manager e shptoPg cambia poco appena ho tempo provo a caricarlo a mano

A.

Il giorno 01 dicembre 2011 16:18, Sandro Santilli <strk@keybit.net> ha scritto:

On Thu, Dec 01, 2011 at 04:13:00PM +0100, Andrea wrote:

Salve a tutti, sto lavorando
su postgis attraverso Qgis. Il mio problema è il seguente:
PostGis Manager mi restituisce un Extent: (unknown) anche se il SRID è
settato correttamente ho provato a lanciare il vacuum ma niente…

Che versione di QGiS, e di PostGIS ?
Hai modo di vedere nei log la query usata da QGiS per estrarre l’extent ?
Se e’ cosi’ puoi invocare la query “a mano” e vedere cosa torna.

–strk;

,------o-.
| __/ | Sign the pledge for PostGIS-2.0 Topology !
| / 2.0 | http://www.pledgebank.com/postgistopology
`-o------’

On Thu, Dec 01, 2011 at 04:31:51PM +0100, Andrea wrote:

Ciao!
Mi succede sia sulla versione postgres 8.4 postgis 1.5 (ma anche
sull'ultima versione 9.1)

ho fatto una query di questo tipo SELECT ST_Extent (the_geom) FROM
xxx."Fabbricati" ; e mi restituisce il risultato corretto.
Ho provato a creare un layer vuoto sempre da PG Manager a cui ho aggiunto
una geometria da qgis e magicamente mi è comparsa l'estensione dopo aver
lanciato il vacuum... ho provato a fare la stessa cosa su un layer già
esistente ma non è successo niente...

Si direbbe proprio un bug di Qgis o di PG Manager.
Vedi se altre modalita' di caricamento funzionano (browser, core provider).
E annotati la versione di Qgis.

--strk;

  ,------o-.
  | __/ | Sign the pledge for PostGIS-2.0 Topology !
  | / 2.0 | http://www.pledgebank.com/postgistopology
  `-o------'

Salve a tutti,
non riesco a far caricare a qgis delle tables che creo su postgis.
Mi spiego meglio: ho delle tabelle di punti di vertci di linee con le loro geometrie e l'identificativo della linea; voglio creare le linee direttamente su db utilizzando st_makeline.
Eseguo il seguente [1] codice e sul db va tutto liscio.
Quando vado a visualizzarle come layer su qgis, mi da l'errore del cursore perso e se provo ad aprire la tabella va in crash tutto qgis.

ps. La query mi restituisce 3800 e spicci records di linee da oltre 140 mila punti; le prime 4 linee risultano a lunghezza zero (1 solo vertice)

Se provo ad esportare la tabella di linee direttamente pgsql2shp mi dice:

C:\Programmi\PostgreSQL\8.4\bin>pgsql2shp.exe -h 10.16.232.93 -u postgres -P pos
tgres -r -b -f linee.shp geofisica public.nav
Initializing... Done (postgis major version: 1).
Output shape: PolyLine
Dumping: XRecordFetch: ERROR: geometry requires more points

Idem se cancello le prime 4 linee che hanno lunghezza zero

Se visualizzo le geometrie con AsText mi dice che è tutto ok.

Scusate la lunghezza

questo è l'sql che eseguo
[1]

CREATE SEQUENCE public.nav_gid_seq
  INCREMENT 1
  MINVALUE 1
  MAXVALUE 9223372036854775807
  START 146590
  CACHE 1;
ALTER TABLE public.nav_gid_seq
  OWNER TO postgres;

CREATE TABLE public.nav
(
  gid integer NOT NULL DEFAULT nextval('nav_gid_seq'::regclass),
  nome character varying(20),
  length double precision,
  nfix integer,
  the_geom geometry,
  CONSTRAINT nav_pkey PRIMARY KEY (gid ),
  CONSTRAINT enforce_dims_the_geom CHECK (st_ndims(the_geom) = 2),
  CONSTRAINT enforce_geotype_the_geom CHECK (geometrytype(the_geom) = 'LINESTRING'::text OR the_geom IS NULL),
  CONSTRAINT enforce_srid_the_geom CHECK (st_srid(the_geom) = 32633)
)
WITH (
  OIDS=FALSE
);
ALTER TABLE public.nav
  OWNER TO postgres;

INSERT INTO nav(
            nome, nfix, length, the_geom)
   select nome, max(nfix), length(st_makeline (the_geom)), st_makeline (the_geom) as the_geom from

>

(SELECT ismar_mono_totale.nomelinea AS nome, ismar_mono_totale.fix AS nfix, transform(ismar_mono_totale.the_geom, 32633) AS the_geom
   FROM ismar_mono_totale

  ORDER BY ismar_mono_totale.nomelinea)
  as foo
  GROUP BY nome
  ORDER BY max;

On Thu, Dec 01, 2011 at 05:18:59PM +0100, Benedetto Porfidia wrote:

Dumping: XRecordFetch: ERROR: geometry requires more points

E' un bug che che abbiamo trovato a marzo dell'anno scorso
e per il quale abbiamo rilasciato la 1.5.1 e la 1.4.2

Che versione di PostGIS stai usando ?

--strk;

  ,------o-.
  | __/ | Sign the pledge for PostGIS-2.0 Topology !
  | / 2.0 | http://www.pledgebank.com/postgistopology
  `-o------'

Ma non lo so ho provato con versioni diverse di postgis e versioni diverse di QGis dalla 1.5 alla 1.7.2 di ubuntu
non cambia niente…
Hai idea dove PG manager legga quei metadati?

Il giorno 01 dicembre 2011 17:08, Sandro Santilli <strk@keybit.net> ha scritto:

On Thu, Dec 01, 2011 at 04:31:51PM +0100, Andrea wrote:

Ciao!
Mi succede sia sulla versione postgres 8.4 postgis 1.5 (ma anche
sull’ultima versione 9.1)

ho fatto una query di questo tipo SELECT ST_Extent (the_geom) FROM
xxx.“Fabbricati” ; e mi restituisce il risultato corretto.
Ho provato a creare un layer vuoto sempre da PG Manager a cui ho aggiunto
una geometria da qgis e magicamente mi è comparsa l’estensione dopo aver
lanciato il vacuum… ho provato a fare la stessa cosa su un layer già
esistente ma non è successo niente…

Si direbbe proprio un bug di Qgis o di PG Manager.
Vedi se altre modalita’ di caricamento funzionano (browser, core provider).
E annotati la versione di Qgis.

–strk;

,------o-.
| __/ | Sign the pledge for PostGIS-2.0 Topology !
| / 2.0 | http://www.pledgebank.com/postgistopology
`-o------’

Ciao a tutti,
PG_manager (e anche DB_manager) recupera tale valore tramite:

SELECT xmin(%(ext)s), ymin(%(ext)s), xmax(%(ext)s), ymax(%(ext)s)

con %(ext)s uguale a

estimated_extent(<schema>, <table>, <geom>)

Si potrebbe aggiungere un link per usare ST_Extent, un po' come viene
fatto per rows (estimation o counted).

Saluti.

2011/12/1 Sandro Santilli <strk@keybit.net>:

On Thu, Dec 01, 2011 at 04:31:51PM +0100, Andrea wrote:

Ciao!
Mi succede sia sulla versione postgres 8.4 postgis 1.5 (ma anche
sull'ultima versione 9.1)

ho fatto una query di questo tipo SELECT ST_Extent (the_geom) FROM
xxx."Fabbricati" ; e mi restituisce il risultato corretto.
Ho provato a creare un layer vuoto sempre da PG Manager a cui ho aggiunto
una geometria da qgis e magicamente mi è comparsa l'estensione dopo aver
lanciato il vacuum... ho provato a fare la stessa cosa su un layer già
esistente ma non è successo niente...

Si direbbe proprio un bug di Qgis o di PG Manager.
Vedi se altre modalita' di caricamento funzionano (browser, core provider).
E annotati la versione di Qgis.

--strk;

,------o-.
| __/ | Sign the pledge for PostGIS-2.0 Topology !
| / 2.0 | http://www.pledgebank.com/postgistopology
`-o------'

_______________________________________________
Iscriviti all'associazione GFOSS.it: http://www.gfoss.it/drupal/iscrizione
Gfoss@lists.gfoss.it
http://lists.gfoss.it/cgi-bin/mailman/listinfo/gfoss
Questa e' una lista di discussione pubblica aperta a tutti.
Non inviate messaggi commerciali.
I messaggi di questa lista non rispecchiano necessariamente
le posizioni dell'Associazione GFOSS.it.
540 iscritti al 4.11.2011

--
Giuseppe Sucameli

la 1.5.1 su windoz :frowning: (direi)
purtroppo quì al lavoro non ho possibilità di usare *nix

./b

Il 01/12/2011 17.26, Sandro Santilli ha scritto:

On Thu, Dec 01, 2011 at 05:18:59PM +0100, Benedetto Porfidia wrote:

Dumping: XRecordFetch: ERROR: geometry requires more points

E' un bug che che abbiamo trovato a marzo dell'anno scorso
e per il quale abbiamo rilasciato la 1.5.1 e la 1.4.2

Che versione di PostGIS stai usando ?

--strk;

   ,------o-.
   | __/ | Sign the pledge for PostGIS-2.0 Topology !
   | / 2.0 | http://www.pledgebank.com/postgistopology
   `-o------'

Il 01/12/2011 17:38, Benedetto Porfidia ha scritto:

la 1.5.1 su windoz :frowning: (direi)
purtroppo quì al lavoro non ho possibilità di usare *nix

Mia curiosita': ci dici per cortesia perche' nello specifico non c'c' possibilita'? Intendiamoci: non e' che non me lo immagini, ma mi pare interessante capire il meccanismo (ne ho visti parecchi diversi).
Grazie.

--
Paolo Cavallini
See: http://www.faunalia.it/pc

Figurati hehe
a casa uso linux dal 97 e sarà una buona decina d'anni che di win32 non c'è neanche l'ombra, ma in ufficio fino a un po' d'anni fà una serie infinita di cose non funzionava se non con windoz (il cartellino, la modulistica, etc); Negli anni quindi, ho accumulato talmente tanta roba nel pc che adesso preferisco fare i salti mortali a far funzionare cygwin, mingw etc che avendo un profilo administrator posso installare, che non buttare tutto e ricominciare da capo. Un giorno chissà mi deciderò. Ancora adesso siamo al paradosso che le disposizioni sono di bloccare tutti i pc su profili utenti senza dare le credenziali di amministrazione a nessuno e facendo fare le autenticazioni di rete attraverso i domini di windows ma non per questioni di sicurezza ma per assicurarsi che gli utenti non installino programmi pirata.
Chi deve installare qualcosa fà richiesta all'helpdesk, e da remoto gli installano le cose che ha chiesto (ovvio che la realtà è ben diversa :wink: ) ma la forma è salva.
Altra chicca: così possono aggiornare da CED gli antivirus su tutte le macchine e rallentare ancora di più i pc in dotazione che di sicuro non sono all'ultimo grido
Praticamente nei grossi uffici (un migliaio di pc) si sta ritornando ad un uso centralizzato tipo mainframe ma con pc e pure windows. Folle no?

ps. poi diciamocelo, su win esistono un sacco di cavolate divertenti che su linux non ci sono :smiley:

Il 01/12/2011 18.10, Paolo Cavallini ha scritto:

Il 01/12/2011 17:38, Benedetto Porfidia ha scritto:

la 1.5.1 su windoz :frowning: (direi)
purtroppo quì al lavoro non ho possibilità di usare *nix

Mia curiosita': ci dici per cortesia perche' nello specifico non c'c'
possibilita'? Intendiamoci: non e' che non me lo immagini, ma mi pare
interessante capire il meccanismo (ne ho visti parecchi diversi).
Grazie.

On Thu, Dec 01, 2011 at 05:38:15PM +0100, Benedetto Porfidia wrote:

Il 01/12/2011 17.26, Sandro Santilli ha scritto:
>On Thu, Dec 01, 2011 at 05:18:59PM +0100, Benedetto Porfidia wrote:
>
>>Dumping: XRecordFetch: ERROR: geometry requires more points
>
>E' un bug che che abbiamo trovato a marzo dell'anno scorso
>e per il quale abbiamo rilasciato la 1.5.1 e la 1.4.2
>
>Che versione di PostGIS stai usando ?

la 1.5.1 su windoz :frowning: (direi)

Mi mostri l'output di "SELECT postgis_full_version()" ?

--strk;

  ,------o-.
  | __/ | Sign the pledge for PostGIS-2.0 Topology !
  | / 2.0 | http://www.pledgebank.com/postgistopology
  `-o------'

On Thu, Dec 01, 2011 at 07:08:52PM +0100, Benedetto Porfidia wrote:

ps. poi diciamocelo, su win esistono un sacco di cavolate divertenti
che su linux non ci sono :smiley:

Se e' per giocare in ufficio i solitari ci sono anche per linux...

--strk(che i soldi per i regali di natale li ha versati tutti in tasse);

  ,------o-.
  | __/ | Sign the pledge for PostGIS-2.0 Topology !
  | / 2.0 | http://www.pledgebank.com/postgistopology
  `-o------'

On Thu, Dec 01, 2011 at 05:34:47PM +0100, Giuseppe Sucameli wrote:

Ciao a tutti,
PG_manager (e anche DB_manager) recupera tale valore tramite:

SELECT xmin(%(ext)s), ymin(%(ext)s), xmax(%(ext)s), ymax(%(ext)s)

con %(ext)s uguale a

estimated_extent(<schema>, <table>, <geom>)

Si potrebbe aggiungere un link per usare ST_Extent, un po' come viene
fatto per rows (estimation o counted).

Eh... estimated_extent lancia un'eccezione se non ci sono
le statistiche raccolte. C'e' una proposta di cambiare il
comportamento in modo che torni null [1].

Inoltre estimated_extent non funziona con le view [2].

[1] http://trac.osgeo.org/postgis/ticket/877
[2] http://trac.osgeo.org/postgis/ticket/510

Andrea, controlli il risultato di estimated_extent ?

Giuseppe: in quali occasioni l'extent di un layer in qgis
viene aggiornato ? C'e' modo di forzarne il ricalcolo ?

--strk;

  ,------o-.
  | __/ | Sign the pledge for PostGIS-2.0 Topology !
  | / 2.0 | http://www.pledgebank.com/postgistopology
  `-o------'

Il 01/12/2011 19.15, Sandro Santilli ha scritto:

SELECT postgis_full_version()

"POSTGIS="1.5.1" GEOS="3.2.0-CAPI-1.6.0" PROJ="Rel. 4.6.1, 21 August 2008" LIBXML="2.7.6" USE_STATS"

On Thu, Dec 01, 2011 at 07:42:55PM +0100, Benedetto Porfidia wrote:

Il 01/12/2011 19.15, Sandro Santilli ha scritto:
>SELECT postgis_full_version()
"POSTGIS="1.5.1" GEOS="3.2.0-CAPI-1.6.0" PROJ="Rel. 4.6.1, 21 August
2008" LIBXML="2.7.6" USE_STATS"

E' un problema ancora irrisolto allora. Strano.
Riesci a fare un dump della tabella (select * from thetable)
senza ricevere eccezioni ?
Mi dai anche le prime righe dell'output di pgsql2shp ?
E l'esatta chiamata all'eseguibile, completa di parametri ?
Prova anche l'opzione -b di pgsql2shp, per cortesia.

--strk;

  ,------o-.
  | __/ | Sign the pledge for PostGIS-2.0 Topology !
  | / 2.0 | http://www.pledgebank.com/postgistopology
  `-o------'

Il 01/12/2011 19.48, Sandro Santilli ha scritto:

On Thu, Dec 01, 2011 at 07:42:55PM +0100, Benedetto Porfidia wrote:

Il 01/12/2011 19.15, Sandro Santilli ha scritto:

SELECT postgis_full_version()

"POSTGIS="1.5.1" GEOS="3.2.0-CAPI-1.6.0" PROJ="Rel. 4.6.1, 21 August
2008" LIBXML="2.7.6" USE_STATS"

E' un problema ancora irrisolto allora. Strano.
Riesci a fare un dump della tabella (select * from thetable)
senza ricevere eccezioni ?
Mi dai anche le prime righe dell'output di pgsql2shp ?
E l'esatta chiamata all'eseguibile, completa di parametri ?
Prova anche l'opzione -b di pgsql2shp, per cortesia.

--strk;

   ,------o-.
   | __/ | Sign the pledge for PostGIS-2.0 Topology !
   | / 2.0 | http://www.pledgebank.com/postgistopology
   `-o------'

domattina ti mando tutto
adesso devo mollare (è da stamattina alle 8.00 che sto' in ufficio)

./b

On Thu, Dec 01, 2011 at 07:55:45PM +0100, Benedetto Porfidia wrote:

Il 01/12/2011 19.48, Sandro Santilli ha scritto:

> ,------o-.
> | __/ | Sign the pledge for PostGIS-2.0 Topology !
> | / 2.0 | http://www.pledgebank.com/postgistopology
> `-o------'

domattina ti mando tutto

Anche la firma per il pledge ? :slight_smile:

--strk;

Il 01/12/2011 19.48, Sandro Santilli ha scritto:

SELECT postgis_full_version()

"POSTGIS="1.5.1" GEOS="3.2.0-CAPI-1.6.0" PROJ="Rel. 4.6.1, 21 August
2008" LIBXML="2.7.6" USE_STATS"

E' un problema ancora irrisolto allora. Strano.
Riesci a fare un dump della tabella (select * from thetable)
senza ricevere eccezioni ?

Il dump completo si fà senza problemi

Mi dai anche le prime righe dell'output di pgsql2shp ?

eccolo (è lo stesso della prima mail ma l'ho rifatto per esser sicuro)

C:\Programmi\PostgreSQL\8.4\bin>pgsql2shp.exe -h xxx.xxx.xxx.xxx -u postgres -P postgres -r -b -f linee.shp geofisica public.nav

Initializing... Done (postgis major version: 1).
Output shape: PolyLine
Dumping: XRecordFetch: ERROR: geometry requires more points

E l'esatta chiamata all'eseguibile, completa di parametri ?

C:\Programmi\PostgreSQL\8.4\bin>pgsql2shp.exe -h xxx.xxx.xxx.xxx -u postgres -P postgres -r -b -f linee.shp geofisica public.nav

Prova anche l'opzione -b di pgsql2shp, per cortesia.

oltre al messaggio di errore c'è il file .shp prodotto che è ovviamente vuoto.

./b

On Fri, Dec 02, 2011 at 09:52:05AM +0100, Benedetto Porfidia wrote:

C:\Programmi\PostgreSQL\8.4\bin>pgsql2shp.exe -h xxx.xxx.xxx.xxx -u
postgres -P postgres -r -b -f linee.shp geofisica public.nav

Initializing... Done (postgis major version: 1).
Output shape: PolyLine
Dumping: XRecordFetch: ERROR: geometry requires more points

Prova senza il -b, non dovrebbe comportare alcuna perdita
di precisione (userebbe WKB codificato in esadecimale).

--strk;

  ,------o-.
  | __/ | Thank you for PostGIS-2.0 Topology !
  | / 2.0 | http://www.pledgebank.com/postgistopology
  `-o------'