Przemysław S.

Przemysław S. Geoinformacja,
INSPIRE, liczenie
bobrów, zawracanie
rzeki...

Temat: Quantum - problem bazodanowy?

Witam

postaram sie krótko przedstawić problem: W bazie PGSQL (postgis) mam tabelę punktów (z geometrią) i tabelę opisową do tychże punktów

mam zrobiony z nich widoczek łączący je, który w QGIS mi sie ładnie łąduje jednak kiedy sięgam po atrybuty danego punktu zwraca mi błąd:

1 kursor został utracony.
SQL: CLOSE qgisf1
Rezultat: 7 (BŁĄD: bieżąca transakcja została przerwana, polecenia ignorowane do końca bloku transakcji)

Inne funkcje jak wyświetlanie tabeli itp - działają - te tabele z widokiem mam podpięte też pod geoserwer i nie ma z nimi problemów.

mój widok w SQL jest skonstruowany tak:

CREATE OR REPLACE VIEW gatunki.ptak_pft_obse AS
SELECT int4(row_number() OVER (ORDER BY ptak.gid)) AS gid, ptak.gat,
ptak.the_geom, ptak.nazwa_lac, ptak.nazwa_pol, ptak.zrodlo_danych,
ptak.uwagi_2, obs.lcz, obs.jdnlcz, obs.datobs, obs.guid_
FROM gatunki.ptak_pft ptak
FULL JOIN gatunki.ptakobse obs ON ptak.guid_::text = obs.guid_::text;

przy okazji wyjaśniam zawiłość mojego GIDa - zrobiłem tak ponieważ tabela z obserwacjami zawiera czasem więcej niż jeden rekord przyporządkowany do jednego punktu w geometrii - jeśli wiec zrobiłbym FULL JOINa z guidem "pożyczonym" z tabeli geometrycznej to miałbym duplikaty guidów co Qgis zwraca oczywiście jako błąd. zrobiłęm więc tak ze row number służy mi tutaj za unikalny klucz dla widoku. (nie ma to jednak wpływu na powyższe problemy, bo juz próbowałem innaczej)

Dodam ze w postgisie 1.4 działało idealnie, w momencie kiedy przemigrowałem bazę na nowe serwery na których zainstalowałem już postgis 2.0 - pojawił sie ten upierdliwy błąd

ma ktoś jakieś pomysły?

pozdrawiam serdecznie