There are still scenarios where replication can lead to inconsistent states for single valued attributes, which I think has two reasons: - for single valued attributes there are scenarios where modifications applied concurrently cannot be simply resolved without violating the schema - the code to handle single valued attribute resolution is quite complex and has always been extended to resolve reported issues, not making it simpler
I tried to specify all potential scenarios which should be handled and what the expected consistent state should be. In parallel writing a test suite based on lib389 test framework to provide testcases for all scenarios and then test the current implementation. The doc and test suite can be used as a reference for a potential rework of the update resolution code.
Please have a look at: http://port389.org/wiki/Update_resolution_for_single_valued_attributes
comments, corrections, additonal requirements are welcome - the doc is not final :-)
Thanks, Ludwig
On 04/25/2014 07:43 AM, Ludwig Krispenz wrote:
There are still scenarios where replication can lead to inconsistent states for single valued attributes, which I think has two reasons:
- for single valued attributes there are scenarios where modifications
applied concurrently cannot be simply resolved without violating the schema
- the code to handle single valued attribute resolution is quite
complex and has always been extended to resolve reported issues, not making it simpler
I tried to specify all potential scenarios which should be handled and what the expected consistent state should be. In parallel writing a test suite based on lib389 test framework to provide testcases for all scenarios and then test the current implementation. The doc and test suite can be used as a reference for a potential rework of the update resolution code.
Please have a look at: http://port389.org/wiki/Update_resolution_for_single_valued_attributes
comments, corrections, additonal requirements are welcome - the doc is not final :-)
Very nice!
Thanks, Ludwig -- 389-devel mailing list 389-devel@lists.fedoraproject.org https://admin.fedoraproject.org/mailman/listinfo/389-devel
389-devel@lists.fedoraproject.org