[gdal-dev] Adding Sync to CouchDB/Cloudant Driver

Even Rouault even.rouault at spatialys.com
Wed Mar 4 00:43:08 PST 2015


Norman,

I'm not familiar with what this "sync" is about, so please bear with the naive 
questions.
Is it to synchronize all masters between them ?
Why GetFeature() and/or not at the first GetNextFeature(), or at database 
opening ?
What is the persistence you mention, and what is the connexion with the sync 
you mention ? Is it done at client (OGR) side ? Would leveldb be a new GDAL 
dependency ?

Even

> Hi,
> 
> I am looking to add sync to the GDAL CouchDB driver. I would rather not add
> additional API functions to do this but to wrap it up in the
> usual GetFeature call. The first call to GetFeature would initiate a sync,
> but thoughts on this are appreciated.
> 
> Sync is a useful function that is a key differentiator with CouchDB which
> is a multi-master database.
> 
> There are a couple of ways of doing the sync, I could force a whole
> database sync (the CouchDB model) or we could do a filtered sync based on
> the bbox of the current local dataset. I would do the former in the initial
> implementation.
> 
> As for the persistence, I would like to use leveldb as a local store though
> I could use sqlite. The two schemas are as follows;
> 
> https://github.com/pouchdb/pouchdb/blob/master/lib/adapters/idb/idb.js#L56
> https://github.com/couchbaselabs/TouchDB-iOS/wiki/Object-Design-And-Schema
> 
> I will be create a PR on this shortly, but I am interested in any early
> feedback.
> 
> Norman

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


More information about the gdal-dev mailing list