Antw: Re: [Fwd: duplicate key Error beim Einlesen eines WMS]

2 messages Options
Embed this post
Permalink
Ronald Woita

Antw: Re: [Fwd: duplicate key Error beim Einlesen eines WMS]

Reply Threaded More More options
Print post
Permalink
ich habe in der Zwischenzeit die WMS Dienste angepasst und all die netten Hinweise
zu den "Mandatory mapfile parametern" aus den Capabilites beseitigt und siehe da, das Laden der Dienste funktioniert auch wieder !
Da war ich wohl etwas zu schluderig in der Map File Konfiguration...

danke für den Tip !
Ronald


>>> [hidden email] 15.09.2009 11:30:12 >>>
Der beschriebene Bug sollte eigentlich längst behoben sein, siehe [1].

Da die Sequenz der WMS Tabelle funktioniert, kann es eigentlich nur
auftreten, wenn ein WMS redundante Angaben zum SRS macht. Bitte schicken
Sie die Capabilities-URL des Dienstes zum Testen, oder zur Not das
Capabilities-Dokument (Ein Zip des XML).

Falls Sie selbst mal schauen wollen, was in Ihre Datenbank eingetragen
wird, fügen Sie diese beiden Zeilen

       new mb_exception("-----WMS_SRS: " . serialize($this->wms_srs));
       new mb_exception("-----WMS_ID: " . $myWMS);

am Anfang der Funktion "insertSRS" in der Datei
"http/classes/class_wms.php" ein. Also wie folgt

   function insertSRS($myWMS){
       new mb_exception("-----WMS_SRS: " . serialize($this->wms_srs));
       new mb_exception("-----WMS_ID: " . $myWMS);
       for($i=0; $i<count($this->wms_srs);$i++){
           $sql ="INSERT INTO wms_srs (fkey_wms_id, wms_srs)
values($1,$2)";                  $v =
array($myWMS,mb_strtoupper($this->wms_srs[$i]));
           $t = array('i','s');                  $res =
db_prep_query($sql,$v,$t);
           if(!$res){
               db_rollback();              }
       }      }


Christoph Baudson

[1] http://trac.osgeo.org/mapbender/changeset/1735 



Christoph Baudson schrieb:

> offlist inquiry, will reply asap
>
>
> ------------------------------------------------------------------------
>
> Betreff:
> duplicate key Error beim Einlesen eines WMS
> Von:
> "Ronald Woita" <[hidden email]>
> Datum:
> Tue, 15 Sep 2009 09:17:38 +0200
> An:
> <[hidden email]>
>
> An:
> <[hidden email]>
>
>
> Hallo zusammen,
>
>
> beim Einrichten einer Mapbender 2.6RC (r4603)  Installation taucht folgender Fehler während des Einlesens eines (beliebigen)  WMS Dienstes auf :
> (zugegebenermaßen habe ich schon ziemlich viel rumgeholzt in den Tabellen ;-)
>
> sql error: ERROR: duplicate key value violates unique constraint "pk_wms_srs" ROLLBACK performed....
>
> Im LOG steht dazu folgendes :
> 2009.09.15, 08:55:46,ERROR: Error while executing prepared statement in /path_to/mapbender_26/http/php/mod_loadwms.php: Sql: INSERT INTO wms_srs (fkey_wms_id, wms_srs) values($1,$2), Error: ERROR:  duplicate key value violates unique constraint "pk_wms_srs"
>
> Ich habe bereits die Sequenzen mit dem Skript 'pgsql_serial_set_sequences_2.5.sql' zurückgesetzt.
> Folgende Abfragen habe ich dazu noch zur Kontrolle gemacht :
>
> SELECT currval('wms_wms_id_seq');
> #930
>
> SELECT max(fkey_wms_id) from wms_srs;
> #930
>
> ist doch eigentlich alles richtig, oder ?
> Woraus kann der Fehler denn noch resultieren ?
>
>
> viele Grüße von der Ostsee
> Ronald
>
>
>
>
>  
> ------------------------------------------------------------------------
>
> _______________________________________________
> Mapbender_users mailing list
> [hidden email]
> http://lists.osgeo.org/mailman/listinfo/mapbender_users 
>  


--
********************************************
INTERGEO 2009
22.-24. September 2009 in Karlsruhe
Halle 1, Stand 1.417
www.intergeo.de
********************************************

_______________________________________

W h e r e G r o u p GmbH & Co. KG

Siemensstraße 8
53121 Bonn
Germany

Christoph Baudson
Anwendungsentwickler

Fon: +49 (0)228 / 90 90 38 - 15
Fax: +49 (0)228 / 90 90 38 - 11
[hidden email]
www.wheregroup.com
Amtsgericht Bonn, HRA 6788
_______________________________________

Komplementärin:
WhereGroup Verwaltungs GmbH
vertreten durch:
Olaf Knopp, Peter Stamm
_______________________________________

_______________________________________________
Mapbender_users mailing list
[hidden email]
http://lists.osgeo.org/mailman/listinfo/mapbender_users 




_______________________________________________
Mapbender_users mailing list
[hidden email]
http://lists.osgeo.org/mailman/listinfo/mapbender_users
Christoph Baudson (Wheregroup)

Re: Antw: Re: [Fwd: duplicate key Error beim Einlesen eines WMS]

Reply Threaded More More options
Print post
Permalink
if the problem keeps coming back, try this patch

http://trac.osgeo.org/mapbender/changeset/4636

Christoph


Ronald Woita schrieb:

> ich habe in der Zwischenzeit die WMS Dienste angepasst und all die netten Hinweise
> zu den "Mandatory mapfile parametern" aus den Capabilites beseitigt und siehe da, das Laden der Dienste funktioniert auch wieder !
> Da war ich wohl etwas zu schluderig in der Map File Konfiguration...
>
> danke für den Tip !
> Ronald
>
>
>  
>>>> [hidden email] 15.09.2009 11:30:12 >>>
>>>>        
> Der beschriebene Bug sollte eigentlich längst behoben sein, siehe [1].
>
> Da die Sequenz der WMS Tabelle funktioniert, kann es eigentlich nur
> auftreten, wenn ein WMS redundante Angaben zum SRS macht. Bitte schicken
> Sie die Capabilities-URL des Dienstes zum Testen, oder zur Not das
> Capabilities-Dokument (Ein Zip des XML).
>
> Falls Sie selbst mal schauen wollen, was in Ihre Datenbank eingetragen
> wird, fügen Sie diese beiden Zeilen
>
>        new mb_exception("-----WMS_SRS: " . serialize($this->wms_srs));
>        new mb_exception("-----WMS_ID: " . $myWMS);
>
> am Anfang der Funktion "insertSRS" in der Datei
> "http/classes/class_wms.php" ein. Also wie folgt
>
>    function insertSRS($myWMS){
>        new mb_exception("-----WMS_SRS: " . serialize($this->wms_srs));
>        new mb_exception("-----WMS_ID: " . $myWMS);
>        for($i=0; $i<count($this->wms_srs);$i++){
>            $sql ="INSERT INTO wms_srs (fkey_wms_id, wms_srs)
> values($1,$2)";                  $v =
> array($myWMS,mb_strtoupper($this->wms_srs[$i]));
>            $t = array('i','s');                  $res =
> db_prep_query($sql,$v,$t);
>            if(!$res){
>                db_rollback();              }
>        }      }
>
>
> Christoph Baudson
>
> [1] http://trac.osgeo.org/mapbender/changeset/1735 
>
>
>
> Christoph Baudson schrieb:
>  
>> offlist inquiry, will reply asap
>>
>>
>> ------------------------------------------------------------------------
>>
>> Betreff:
>> duplicate key Error beim Einlesen eines WMS
>> Von:
>> "Ronald Woita" <[hidden email]>
>> Datum:
>> Tue, 15 Sep 2009 09:17:38 +0200
>> An:
>> <[hidden email]>
>>
>> An:
>> <[hidden email]>
>>
>>
>> Hallo zusammen,
>>
>>
>> beim Einrichten einer Mapbender 2.6RC (r4603)  Installation taucht folgender Fehler während des Einlesens eines (beliebigen)  WMS Dienstes auf :
>> (zugegebenermaßen habe ich schon ziemlich viel rumgeholzt in den Tabellen ;-)
>>
>> sql error: ERROR: duplicate key value violates unique constraint "pk_wms_srs" ROLLBACK performed....
>>
>> Im LOG steht dazu folgendes :
>> 2009.09.15, 08:55:46,ERROR: Error while executing prepared statement in /path_to/mapbender_26/http/php/mod_loadwms.php: Sql: INSERT INTO wms_srs (fkey_wms_id, wms_srs) values($1,$2), Error: ERROR:  duplicate key value violates unique constraint "pk_wms_srs"
>>
>> Ich habe bereits die Sequenzen mit dem Skript 'pgsql_serial_set_sequences_2.5.sql' zurückgesetzt.
>> Folgende Abfragen habe ich dazu noch zur Kontrolle gemacht :
>>
>> SELECT currval('wms_wms_id_seq');
>> #930
>>
>> SELECT max(fkey_wms_id) from wms_srs;
>> #930
>>
>> ist doch eigentlich alles richtig, oder ?
>> Woraus kann der Fehler denn noch resultieren ?
>>
>>
>> viele Grüße von der Ostsee
>> Ronald
>>
>>
>>
>>
>>  
>> ------------------------------------------------------------------------
>>
>> _______________________________________________
>> Mapbender_users mailing list
>> [hidden email]
>> http://lists.osgeo.org/mailman/listinfo/mapbender_users 
>>  
>>    
>
>
>  


--
********************************************
INTERGEO 2009
22.-24. September 2009 in Karlsruhe
Halle 1, Stand 1.417
www.intergeo.de
********************************************

_______________________________________

W h e r e G r o u p GmbH & Co. KG

Siemensstraße 8
53121 Bonn
Germany

Christoph Baudson
Anwendungsentwickler

Fon: +49 (0)228 / 90 90 38 - 15
Fax: +49 (0)228 / 90 90 38 - 11
[hidden email]
www.wheregroup.com
Amtsgericht Bonn, HRA 6788
_______________________________________

Komplementärin:
WhereGroup Verwaltungs GmbH
vertreten durch:
Olaf Knopp, Peter Stamm
_______________________________________

_______________________________________________
Mapbender_users mailing list
[hidden email]
http://lists.osgeo.org/mailman/listinfo/mapbender_users