moby / datakit

Connect processes into powerful data pipelines with a simple git-like filesystem interface
Apache License 2.0
1.08k stars 148 forks source link

Customizable merge functions #12

Closed samoht closed 8 years ago

samoht commented 8 years ago

See https://github.com/docker/pinata/issues/52

It'd be great if DB users can registers their own merge functions to be used when a transaction is committed, (possibly) written in different languages (Lua, Go, OCaml, etc.) or using interesting combinators that we will provide later (such as CRDTs).

Currently the merge functions are statically decided and the one being used is the simplest one: if a file modified in the transaction is modified in the main branch, the then transaction returns a conflict.

talex5 commented 8 years ago

The current irmin9 merge API allows the caller to resolve conflicts themselves, using whatever process they think is best. Do we need anything else?

https://github.com/docker/datakit/tree/master/db#merging