Hi everybody,
here is the result of my work on replication conflicts. I would like you
to review and comment. I know that given the complexity of the problem
and the volume of teh patches this is not an easy task - I'm sure there
is need for further clarification and correction, but I think I reached
a state where it handles the most important scenarios and more, and does
not break anything.
First there is the design doc:
https://docs.google.com/a/redhat.com/document/d/1Nv8Y7Lc6E2inSKBTVWvI7eztAFluAv67fFhzDzb0bAU/edit?usp=sharing
unfortunately I failed to convert to markup so far, so it is not yet
available on teh 389 wiki, but it will be soon. If anybody has a problem
with the link please contact me and I'll send a copy.
Next there are two test suites and a script to verify consistency of the
database after running the tests (this consistency check needs to go
into rth etests themselve, started, but not completed):
https://pagure.io/389-ds-base/issue/raw/00571921ea43decbc7d643449783871aefe323fd3c314427161fb228dc22a463-ticket49043_1_test.py
https://pagure.io/389-ds-base/issue/raw/d67802efd3d3623d2ec5cda2de79b395c4905c85aab6ff4ff78b4d876d20ccfc-ticket49043_2_test.py
https://pagure.io/389-ds-base/issue/raw/885ee5b2aa7c5bb54dcbb831bf312e8274d1636c59d261c9fec62fa91d1d4ec7-check-db.sh
An then the patches:
A few patches were needed and tracked in other tickets:
https://pagure.io/389-ds-base/issue/raw/d3e4d156c3c40743957388be3e5eb8142d3fed7a82f5f10dce67f2e516480fac-0001-fix-for-ticket-49161.patch
https://pagure.io/389-ds-base/issue/raw/9940ede75ff7e8a560903e0d803ba0f0c84f252443ec37b2879e72c598949077-0001-Ticket-49050-make-objectclass-ldapsubentry-effective.patch
and then the conflict patches themselves, they are split into four
patches, owing separate development steps, but final review maybe best
after applying all of them:
https://pagure.io/389-ds-base/issue/raw/909764b4533245bfed8f7620ba4df67b761c3ec8f2ce36b4801b04eec582567f-0001-ticket-49043-part1-manage-replication-conflicts.patch
https://pagure.io/389-ds-base/issue/raw/d89d2dcb9d7e2bf1af832de22c0db43a0bc5551d5315119600a4aa76c8c6d47f-0002-ticket-49043-part2-factor-out-mmr-repl-plugin-from-g.patch
https://pagure.io/389-ds-base/issue/raw/158ac556e45e5f44a08d6f2d7e3a650cd3865b0bd02605a4bbaa416ea20cef3f-0003-ticket-49043-part3-hanle-complex-scenarios.patch
https://pagure.io/389-ds-base/issue/raw/77b134c6f3595ceff13f15100cfad7268eeaecdb41250bb2539595079bba8886-0004-ticket-49043-part4-fix-errors-and-leaks-reported-by-.patch
and then there is a memeory leak which was already there but exposed by
my changes:
https://pagure.io/389-ds-base/issue/raw/5ddeab0c189edfc7571a281a8ae80053f5c9d188b4c0feda74ec6822622f8259-0001-Ticket-49285-memory-leak-when-resurrecting-tombstone.patch
Regards,
Ludwig
--
Red Hat GmbH, http://www.de.redhat.com/, Registered seat: Grasbrunn,
Commercial register: Amtsgericht Muenchen, HRB 153243,
Managing Directors: Charles Cachera, Michael Cunningham, Michael O'Neill, Eric Shander
_______________________________________________
389-devel mailing list -- 389-devel@xxxxxxxxxxxxxxxxxxxxxxx
To unsubscribe send an email to 389-devel-leave@xxxxxxxxxxxxxxxxxxxxxxx