[Qgis-developer] problem with feature request and updateFeature
Matthias Kuhn
matthias.kuhn at gmx.ch
Fri Mar 22 10:37:00 PDT 2013
Hi Jürgen and Nathan,
On Fre 22 Mär 2013 18:00:14 CET, Jürgen E. Fischer wrote:
> Hi Nathan,
> (... snip )
> The bug is that the providers have a notion of active iterators. The iterators
> should be independent, but currently aren't. I think that's going to change
> when threading is introduced - we are just not there yet. If the iterators
> were independent updateFeature would work fine.
>
>
> Jürgen
>
While these technical restrictions have not so beauty effects (one
would not guess and has no idea that updateFeature is unreliable when
used in an iterator loop) I think such problems will pop up at one end
or another in the upcoming months, even more when multithreading is
introduced, but not all dataProviders are ready to play nice and allow
multiple iterators run in parallel. What do you think about introducing
exceptions being thrown in such cases? It would be easier to become
aware and also to react to such problems.
There can also be conditions, when the underlying data is edited while
being iterated. I remember Java had something called fail-safe and
fail-fast iterators, which might be worth revising for this case.
Concerning the current issue: If there is really no possibility to fix
this without parallel iterators, at least the API should give a hint on
these restrictions.
More information about the Qgis-developer
mailing list