[Geoserver-devel] [jira] Created: (GEOS-547) TransactionResponse problem

TransactionResponse problem
---------------------------

         Key: GEOS-547
         URL: http://jira.codehaus.org/browse/GEOS-547
     Project: GeoServer
        Type: Bug

    Reporter: dblasby
Assigned to: dblasby
     Fix For: 1.3.1

NOTE: first thing to do on the transaction reponse is to re-factor the code so its easy to understand (and not 800 lines long).

From jody (to track this issue):

I am writing up an article on TransactionResponse ... and I think I found a bug:

We start with an modifyFeatures - processing update elemet here:

                       if (types.length == 1) {
                           store.modifyFeatures(types[0], values[0], filter);
                       } else {
                           store.modifyFeatures(types, values, filter);
                       }

Then we try and unlock the stuff that was justed changed:
                   if ((request.getLockId() != null)
                           && store instanceof FeatureLocking
                           && (request.getReleaseAction() == TransactionRequest.SOME)) {
                       FeatureLocking locking = (FeatureLocking) store;
                       locking.unLockFeatures(filter);
                   }

Problem is we *just* changed the content, so that filter is not going to return the same set of features.

All is not lost, ealier we preprocessed the filter into a set of fids and bounding box. I think we could modify the code to operate with a new Filter constructed out of the Fid Set....

Jody

--
This message is automatically generated by JIRA.
-
If you think it was sent incorrectly contact one of the administrators:
   http://jira.codehaus.org/secure/Administrators.jspa
-
For more information on JIRA, see:
   http://www.atlassian.com/software/jira