[PostNAS Suite] Änderung der Spalte "anlass" bei Fortführungen
Peter Korduan
peter.korduan at gdi-service.de
Mi Aug 24 04:45:14 PDT 2016
Am 02.08.16 um 15:28 schrieb Jürgen E. Fischer:
> Moin Peter,
>
> On Tue, 02. Aug 2016 at 11:02:32 +0200, Peter Korduan wrote:
>> Beispiel (gekürzte NAS Fortführungsdatei):
>
>> <wfs:Update typeName="AX_PunktortAU">
>> <wfs:Property>
>> <wfs:Name>adv:lebenszeitintervall/adv:AA_Lebenszeitintervall/adv:endet</wfs:Name>
>> <wfs:Value>2015-08-31T09:51:28Z</wfs:Value>
>> </wfs:Property>
>> <wfs:Property>
>> <wfs:Name>adv:anlass</wfs:Name>
>> <wfs:Value>000000</wfs:Value>
>> </wfs:Property>
>> <wfs:Property>
>> <wfs:Name>adv:anlass</wfs:Name>
>> <wfs:Value>200000</wfs:Value>
>> </wfs:Property>
>> <ogc:Filter>
>> <ogc:FeatureId fid="DEBBAL620005ZcOO20130202T144107Z" />
>> </ogc:Filter>
>> </wfs:Update>
>> </wfs:Transaction>
>> </geaenderteObjekte>
>
> Produziert hier zwar auch einen Fehler, allerdings nur weil ich obiges Objekt
> nicht habe:
>
> 2016-08-02T15:19:11 > PG: PQexecParams(INSERT INTO "delete" ("typename", "featureid", "context", "anlass", "endet") VALUES ('AX_PunktortAU', 'DEBBAL620005ZcOO20130202T144107Z', 'Update', ARRAY['000000','200000'], '2015-08-31T09:51:28Z') RETURNING "ogc_fid") = PGRES_FATAL_ERROR|
>
> einen Crash gibt es allerdings nicht (nightly build aus osgeo4w;
> gdal-dev-2.2.0-34854).
>
>
> Jürgen
Moin Jürgen,
ich habe mir jetzt extra noch mal einen eigenen build gemacht mit dem
aktuellen trunk (http://svn.osgeo.org/gdal/trunk/gdal)
GDAL 2.2.0dev, released 2016/99/99
Ich komme zu dem gleichen Ergebnis wie vorher mit dem Docker image
geodata/gdal:latest.
Ein Update mit zwei Anlässen schmeist ein Segmentation fault unabhängig
vom Server auf dem das läuft.
Als Beispiel habe ich im ersten Schritt ein
AX_BauRaumOderBodenordnungsrecht Objekt eingelesen mit insert, siehe
http://gdi-service.de/public/Test/a.xml
<wfs:Insert>
<AX_BauRaumOderBodenordnungsrecht gml:id="DEBBAL620000QLOq">
<gml:identifier
codeSpace="http://www.adv-online.de/">urn:adv:oid:DEBBAL620000QLOq</gml:identifier>
<lebenszeitintervall>
<AA_Lebenszeitintervall>
<beginnt>2013-01-29T07:01:09Z</beginnt>
</AA_Lebenszeitintervall>
</lebenszeitintervall>
<modellart>
<AA_Modellart>
<advStandardModell>DLKM</advStandardModell>
</AA_Modellart>
</modellart>
<anlass>000000</anlass>
<position>
...
</position>
<artDerFestlegung>2200</artDerFestlegung>
<ausfuehrendeStelle>
<AX_Dienststelle_Schluessel>
<land>12</land>
<stelle>3106</stelle>
</AX_Dienststelle_Schluessel>
</ausfuehrendeStelle>
<bezeichnung>06001R</bezeichnung>
</AX_BauRaumOderBodenordnungsrecht>
</wfs:Insert>
und in der Fortführung wird dieses mit zwei Anlässen geupdated, siehe
http://gdi-service.de/public/Test/b.xml
<wfs:Update typeName="AX_BauRaumOderBodenordnungsrecht">
<wfs:Property>
<wfs:Name>adv:lebenszeitintervall/adv:AA_Lebenszeitintervall/adv:endet</wfs:Name>
<wfs:Value>2013-08-15T18:17:03Z</wfs:Value>
</wfs:Property>
<wfs:Property>
<wfs:Name>adv:anlass</wfs:Name>
<wfs:Value>000000</wfs:Value>
</wfs:Property>
<wfs:Property>
<wfs:Name>adv:anlass</wfs:Name>
<wfs:Value>300400</wfs:Value>
</wfs:Property>
<ogc:Filter>
<ogc:FeatureId fid="DEBBAL620000QLOq20130129T070109Z" />
</ogc:Filter>
</wfs:Update>
Wenn im Update nur eine Property mit Name adv:anlass ist, läuft es
korrekt durch.
Wenn ich den Durchlauf mit den zwei Anlässen mache, werden laut SQL-Log
keine SQL-Anfragen ausgeführt, sondern es kommt gleich ein Segmentation
fault.
Ich kann mir einfach nicht helfen, es muss an dem ogr Treiber liegen.
Kannst Du das bitte noch mal prüfen.
Gruß Peter
--
GDI-Service Rostock
Dr. Peter Korduan
Joachim-Jungius-Str. 9
18059 Rostock
Tel: 0381 40344444
Mobil: 0175 5446411
E-Mail: peter.korduan at gdi-service.de
Mehr Informationen über die Mailingliste NAS