[OSM-dev] Is there a way to use simple schema without hstore

Brett Henderson brett at bretth.com
Wed Nov 24 08:39:46 GMT 2010


Hi Sarah,

On Fri, Nov 19, 2010 at 10:50 PM, Sarah Hoffmann <lonvia at denofr.de> wrote:

> On Fri, Nov 19, 2010 at 09:37:33AM +0100, Andreas Kalsch wrote:
> >> If you're applying diffs to the database you can enhance the
> >> osmosisUpdate() function (initially empty, but can be customised) to
> >> keep your separate tags tables up to date during each diff
> >> application.  You will need to run the
> >> "pgsql_simple_schema_0.6_action.sql" script against the database so
> >> that all actions during a diff are logged and can be used by your
> >> osmosisUpdate function to know which records need to be re-processed.
> > Is it possible to truncate the actions table for myself so that a
> > separate script can access the changes?
>
> Simply copy away the information from the action table somewhere
> persistent in the osmosisUpdate function. Works fine.
>
> However, +1 from me for an action table that can be truncated manually.
>

The issue here is that the action table only supports a single instance of
each entity with a single action.  This is because multiple updates to a
single entity may occur between multiple changeset write jobs.  Trying to
write the same entity twice will result in a constraint failure.  If you
want to manually truncate it then I would have to allow multiple updates to
a single entity to be queued in the table which would require a schema
change.  It's not as simple as skipping the truncate step.  There's probably
a number of ways that could be done, and I'm still thinking that's best left
to the end consumer.

Brett
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.openstreetmap.org/pipermail/dev/attachments/20101124/134ba5b6/attachment.html>


More information about the dev mailing list