[QGIS-Developer] GeoPackages with constraint problems

Even Rouault even.rouault at spatialys.com
Fri Aug 3 11:40:47 PDT 2018


Matthias,

Looking a bit at this, I see from sqlite doc that foreign key constraints are 
only enforced if the user runs

PRAGMA foreign_keys = ON

which OGR does no activate by default, hence the easyness to break them.

This can be enabled by defining the configuration option/environment variable
OGR_SQLITE_PRAGMA="foreign_keys=ON"

I'm contemplating if the GPKG driver should do that by default (would probably 
makes sense since at opening it runs the PRAGMA foreign_key_check)

Even

> Hi everyone,
> 
> I recently gave a course where geopackages were used as datasets. Those
> geopackages had foreign key constraints (among others) activated. While
> editing those files, at least on one machine, someone managed to get it
> into a "corrupted" state (layer disappeared). Trying to load this layer
> later on will result in a bad layer. The only thing we have is a tiny
> message in the message log informing about "pragma foreign_key_check on
> 'file.gpkg' failed. You can disable this check by setting the
> OGR_GPKG_FOREIGN_KEY_CHECK configuration option to NO".
> 
> I think it's quite strange that QGIS/OGR manages to bring a GeoPackage
> into a corrupted state and then denies to open it.
> 
> * It would - I guess - be preferable to prevent a GeoPackage from going
> into such a state
> 
> * Since it appears to be quite easy to bring a dataset into such a state
> (although I'm afraid I can't provide detailed steps) QGIS should by
> default probably rather open (and warn) or warn and give a possibility
> to still open.
> 
> Did others experience this as well and have more ideas what to do?
> 
> Thanks and best wishes
> Matthias
> _______________________________________________
> QGIS-Developer mailing list
> QGIS-Developer at lists.osgeo.org
> List info: https://lists.osgeo.org/mailman/listinfo/qgis-developer
> Unsubscribe: https://lists.osgeo.org/mailman/listinfo/qgis-developer


-- 
Spatialys - Geospatial professional services
http://www.spatialys.com


More information about the QGIS-Developer mailing list