Elliptics minor 2.4.1 release
Elliptics network got a very minor release, which includes logarithmically increasing reconnection timeout (but not more than 30 seconds before reconnection attempt) instead of constant one and set of renames of the example binaries. Now all installled executable binaries (server, io testing utility, statistic gathering tool and notification example) are linked with dnet_ prefix, so if installed into common directory, they will not pollute the existing namespace (so stat utility will continue to work, since elliptics statistics gathering tool is not called dnet_stat). Also renamed example server with very loud non-trivial name example into dnet_ioserv.
Major work is being concentrated on the merge conflict resolving algorithm, which will fire up when joining node already contains objects which can be synced from the remote system. Merge problem rises when there was a network partitioning and object was updated from both parts of the net, or when node was placed temporarily offline and object it maintains was updated. This may require transaction history log format to be changed.
That’s it, enjoy!
On knowledge extraction problem The climbing miracles
Comments are currently closed.

Does the elliptics network support keeping backups of data ? It would rock to support a configurable number of data copies, so that one could choose 2 copies, or even 3.
Is this possible ?
Yes, one can specify multiple transformation functions on the client or server and every data transaction will be saved with multiple IDs generated by the specified functions. Thus one can have two copies of the ‘/tmp/some_data’ if sha1 and md5 functions are specified as transformations, so data will be stored in objects identified by the sha1(“/tmp/some_data”) and md5(“/tmp/some_data”).
One can specify whatever number of copies user wants. Given transactional nature of the storage it is always possible to recreate some object from the past according to transaction history.
It seems to be symptomatic – everybody asks the same questions. I guess the reason is in the configuration logic – it’s not interested what hashes do you use. Everybody wants to know how to get N copies of data objects – not only 2, but 3, 5, 17… Unfortunately, the project looks like a hack, not a mature project.
Because elliptics network uses quite different approach compard to existing storage solutions it looks non-obvious for the starters, so I describe it in details including examples.
Exactly the same way I used two functions it is possible to use whatever number you like.
Think about transformation functions as a way to get new transaction ID for your data. How many functions you provide (or server has configured for server side replication) that many transactions will be created and sent to the network, thus that many objects will be stored/updated which contain the same data.