Hi Maciej,
On Tue, 26. Feb 2008 at 21:48:40 +0100, Maciej Sieczka wrote:
> The application should either:
>
> 1. Take an advisory lock (see the functions/admin functions chapter) so
> that it can use another table to indicate which parts of the GIS are in use.
> 2. Check to see if the data changed while the user was editing but
> before committing (known as "optimistic locking"). Then give the user
> the option to overwrite/rollback.
> A last resort would be locking rows or the whole table, since a user
> might click "edit" then go to lunch.
> Certainly doing nothing isn't much use if you have multiple users
> editing.
That doesn't only apply the postgis provider.
We probably need an infrastructure in QgsVectorLayer to do feature
locking when features are changed or deleted - ie. some method that
locks the feature when the before they enter mChangedGeometries,
mChangedAttributes or mDeletedFeaturesIds and releases the locks on
commitChanges/rollBack.
For the PostGIS case the provider should do an AddAuth on connect,
LockRow when a feature is about to be changed and UnlockRows on
commit or rollback.
How does that sound?
Jürgen
--
Jürgen E. Fischer norBIT GmbH Tel. +49-4931-918175-0
Dipl.-Inf. (FH) Rheinstraße 13 Fax. +49-4931-918175-50
Software Engineer D-26506 Norden
http://www.norbit.de--
norBIT Gesellschaft fuer Unternehmensberatung und Informationssysteme mbH
Rheinstrasse 13, 26506 Norden
GF: Jelto Buurman, HR: Amtsgericht Emden, HRB 5502
_______________________________________________
Qgis-developer mailing list
[hidden email]
http://lists.qgis.org/cgi-bin/mailman/listinfo/qgis-developer