[Geoserver-devel] [Transaction] Still have insert problems :/

Hello !!

I thaught all my geoserver problems were solved, but that was false :confused:
I only have a problem during "Insert" transactions.
Just have a look at this xml response :

<?xml version="1.0" encoding="UTF-8"?>
<wfs:TransactionResponse
   version="1.0.0"
   xmlns:wfs="http://www.opengis.net/wfs&quot;
   xmlns:ogc="http://www.opengis.net/ogc&quot;
   xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance&quot;
   xsi:schemaLocation="http://www.opengis.net/wfs ../wfs/1.0.0/WFS-transaction.xsd">
   <wfs:TransactionResult>
      <wfs:Status>
         <wfs:FAILED/>
      </wfs:Status>
      <wfs:Message>null: Problem updating features: org.geotools.data.DataSourceException: Some sort of database connection error: ERROR: current transaction is aborted, queries ignored until end of transaction block
cause: java.sql.SQLException: ERROR: current transaction is aborted, queries ignored until end of transaction block
</wfs:Message>
   </wfs:TransactionResult>
</wfs:TransactionResponse>

My transaction request looks like this :

<?xml version="1.0"?>
<wfs:Transaction version="1.0.0" service="WFS"
  xmlns="http://www.openplans.org/myns&quot;
  xmlns:wfs="http://www.opengis.net/wfs&quot;
  xmlns:gml="http://www.opengis.net/gml&quot;&gt;
  <wfs:Insert>
    <commune>
      <gid>1000</gid>
      <ID_BDCARTO>15</ID_BDCARTO>
      <NOM_COMM>CHewBIzz</NOM_COMM>
      <INSEE_COMM>007</INSEE_COMM>
      <STATUT>Capitale</STATUT>
      <X_COMMUNE>668000</X_COMMUNE>
      <Y_COMMUNE>1802360</Y_COMMUNE>
      <SUPERFICIE>5000</SUPERFICIE>
      <POPULATION>5000</POPULATION>
      <INSEE_CANT>14</INSEE_CANT>
      <INSEE_ARR>3</INSEE_ARR>
      <NOM_DEPT>AUDE</NOM_DEPT>
      <INSEE_DEPT>11</INSEE_DEPT>
      <NOM_REGION>LANGUEDOC-ROUSSILLON</NOM_REGION>
      <INSEE_REG>91</INSEE_REG>
      <the_geom>
        <gml:Polygon>
          <gml:outerBoundaryIs>
            <gml:LinearRing>
              <gml:coordinates>-100,50 -110,55 -100,60 -50,55 -100,50</gml:coordinates>
            </gml:LinearRing>
          </gml:outerBoundaryIs>
        </gml:Polygon>
      </the_geom>
    </commune>
  </wfs:Insert>
</wfs:Transaction>

I attached the complete log file of my resin server (i found how to get it :] )
In this file, the last thing geoserver does before failling is launching the following query :

SELECT oid, gid, id_bdcarto, nom_comm, insee_comm, statut, x_commune, y_commune, superficie, population, insee_cant, insee_arr, nom_dept, insee_dept, nom_region, insee_reg, AsText(the_geom) FROM commune LIMIT 100000;

So i tried this query on my PostGIS Database, and it worked well.
That's why i can't find where the problem is !

If someone could help, I would really appreciate.

(Note that I run geoserver on Windows, with a remote PostgreSQL/PostGIS database on Solaris 8, maybe this can help ... And sorry for the bad english too)

Thanks !
Steph W.

_________________________________________________________________
MSN Messenger : dialoguez en direct avec vos amis ! http://www.msn.fr/msger/default.asp

(attachments)

stdout-log.txt (18.6 KB)

The fix for this is in cvs. It was actually a few different problems, the
first was that resin parsed things a bit different and exposed a bug in
the geotools feature reading code, the second was a problem with rollbacks
and not having the database properaly correct itself, making all
subsequent transactions fail. Much thanks to W. Steph for helping to
isolate the problems.

  Chris

On Wed, 7 May 2003, W. Steph wrote:

Hello !!

I thaught all my geoserver problems were solved, but that was false :confused:
I only have a problem during "Insert" transactions.
Just have a look at this xml response :

<?xml version="1.0" encoding="UTF-8"?>
<wfs:TransactionResponse
   version="1.0.0"
   xmlns:wfs="http://www.opengis.net/wfs&quot;
   xmlns:ogc="http://www.opengis.net/ogc&quot;
   xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance&quot;
   xsi:schemaLocation="http://www.opengis.net/wfs
../wfs/1.0.0/WFS-transaction.xsd">
   <wfs:TransactionResult>
      <wfs:Status>
         <wfs:FAILED/>
      </wfs:Status>
      <wfs:Message>null: Problem updating features:
org.geotools.data.DataSourceException: Some sort of database connection
error: ERROR: current transaction is aborted, queries ignored until end of
transaction block
cause: java.sql.SQLException: ERROR: current transaction is aborted,
queries ignored until end of transaction block
</wfs:Message>
   </wfs:TransactionResult>
</wfs:TransactionResponse>

My transaction request looks like this :

<?xml version="1.0"?>
<wfs:Transaction version="1.0.0" service="WFS"
  xmlns="http://www.openplans.org/myns&quot;
  xmlns:wfs="http://www.opengis.net/wfs&quot;
  xmlns:gml="http://www.opengis.net/gml&quot;&gt;
  <wfs:Insert>
    <commune>
      <gid>1000</gid>
      <ID_BDCARTO>15</ID_BDCARTO>
      <NOM_COMM>CHewBIzz</NOM_COMM>
      <INSEE_COMM>007</INSEE_COMM>
      <STATUT>Capitale</STATUT>
      <X_COMMUNE>668000</X_COMMUNE>
      <Y_COMMUNE>1802360</Y_COMMUNE>
      <SUPERFICIE>5000</SUPERFICIE>
      <POPULATION>5000</POPULATION>
      <INSEE_CANT>14</INSEE_CANT>
      <INSEE_ARR>3</INSEE_ARR>
      <NOM_DEPT>AUDE</NOM_DEPT>
      <INSEE_DEPT>11</INSEE_DEPT>
      <NOM_REGION>LANGUEDOC-ROUSSILLON</NOM_REGION>
      <INSEE_REG>91</INSEE_REG>
      <the_geom>
        <gml:Polygon>
          <gml:outerBoundaryIs>
            <gml:LinearRing>
              <gml:coordinates>-100,50 -110,55 -100,60 -50,55
-100,50</gml:coordinates>
            </gml:LinearRing>
          </gml:outerBoundaryIs>
        </gml:Polygon>
      </the_geom>
    </commune>
  </wfs:Insert>
</wfs:Transaction>

I attached the complete log file of my resin server (i found how to get it
:] )
In this file, the last thing geoserver does before failling is launching the
following query :

SELECT oid, gid, id_bdcarto, nom_comm, insee_comm, statut, x_commune,
y_commune, superficie, population, insee_cant, insee_arr, nom_dept,
insee_dept, nom_region, insee_reg, AsText(the_geom) FROM commune LIMIT
100000;

So i tried this query on my PostGIS Database, and it worked well.
That's why i can't find where the problem is !

If someone could help, I would really appreciate.

(Note that I run geoserver on Windows, with a remote PostgreSQL/PostGIS
database on Solaris 8, maybe this can help ... And sorry for the bad english
too)

Thanks !
Steph W.

_________________________________________________________________
MSN Messenger : dialoguez en direct avec vos amis !
http://www.msn.fr/msger/default.asp