[gdal-dev] OGR OCI Driver improvement
Nicolas Simon
nicolas.simon at spw.wallonie.be
Wed Jul 29 11:15:47 EDT 2009
Dear developpers,
I use OCI driver for a while and I found some problems
These problems are blocking for me and I already have solution for some of them.
My firsts questions are organisational.
What to do to have the code I proposed tested by other people sharing the same problem ?
How to get these patch included in the main trunk for a future release of GDAL ?
I'm conscientious that the development team could not provide solution to all problems in a short delay, so how can I help to get quick (and stable) adaptation ?
Problems are
1) Bad dimension support when using existing layer (DIM parameter is only valid during Creation) Ticket #3025 => I have solution
2) When adding new feature in multi-user environment, FID generated by different client may conflict.
Proposition
Let existing FID generation for compatibility purpose.
When FID are generated on the basis of an oracle sequence (my situation) retrieving the FID through INSERT ... RETURNING FID_FIELD INTO :variable
And using this variable to set the FID's Feature
Note: this proposition fix a problem when poFeature->GetFID() == OGRNullFID because SetFID is not called in this case.
=> I have solution
3) OCITableLayer.SetFeature() not compliant with OGR Documentation
Documentation says that SetFeature Rewrite an existing feature.
3.1) Actual implementation try to make a delete before an insert and doesn't test if delete effectively delete one row.
3.2) Implementation with delete + insert is not nice if we have
- logic to generate new FID
- trigger on update
I write a code that translate SetFeature in an update statement.
=> I have solution
Concerning compliance with the documentation, documentation should by updated if inserting new feature is permitted. In this case, I could adapt my code to make an insert if no row is processed by the update.
4) Presently, driver return that it support Transactions in TestCapability. It is not the case. It should return false until true transaction support will be implemented.
Thanks a lot, and I expect that I could contribute in the improvement of the OCI driver
==================================================
Nicolas Simon, Informaticien
Service Public de Wallonie (SPW)
Direction générale opérationnelle Agriculture, Ressources Naturelles et Environnement (DGARNE)
Département des Aides
Direction de l'Octroi des Aides agricoles - Service Informatique
14, Chaussée de Louvain - 4e étage
5000 Namur
BELGIUM
-------------- next part --------------
An HTML attachment was scrubbed...
URL: http://lists.osgeo.org/pipermail/gdal-dev/attachments/20090729/819bba36/attachment.html
More information about the gdal-dev
mailing list