architecture - Does MNesia support synchronization after disconnected operation? -


i'm starting architect project following requirements:

  • the overall system distributed across multiple physical nodes on wan
  • each node using , manipulating common set of data records
  • operations on these records must resilient network outages

i'm considering utilizing mnesia/erlang base platform project, i'd know how (mnesia) can handle simultaneous disconnected conflicting operations on data set.

an illustrative scenario:

  1. nodes , b have connectivity , empty data set.
  2. node adds record (1, abc).
    • here, record sets should transparently synchronize , node b has record (1, abc).
  3. network connectivity between them lost.
  4. node alters record (1, def).
  5. node b (later timestamp) alters record (1, ghi).
  6. network connectivity restored
    • expected: after transparent synchronization, both nodes contain record (1, ghi).

to simplify, let's assume complete change history not required (e.g. it's not important record 1 used contain abc or def, it's important contains ghi).

is out-of-the-box (or trivial implement) capability of mnesia?

ulf wiger had talk last erlang factory in san francisco (2010) on topic. can find slides here: http://www.erlang-factory.com/upload/item/7/ulfwiger-10minutetalk.pdf

they contains overview of problems , pointers source code might of use you.


Comments

Popular posts from this blog

apache - Add omitted ? to URLs -

redirect - bbPress Forum - rewrite to wwww.mysite prohibits login -

php - How can I stop spam on my custom forum/blog? -