In ticket 48445 the creation of a keep alive entry aftzer online init was removed because the creation i replica_enable_replication() led to inconsistencies between database and changelog. But the creation of a keep alive entry directly after init is useful to have a csn for teh local replica in the RUV. A safer place to add it is in the attached patch
attachment 0001-create-keep-alive-at-end-of-repl.patch
attachment 0001-ticket-48999-create-keep-alive-at-end-of-repl-init.patch
Metadata Update from @lkrispen: - Issue set to the milestone: 1.3.5.14
Metadata Update from @lkrispen: - Issue assigned to lkrispen
To echo the voice of Mark "You have an indentation problem in this patch".
Otherwise, the patch seems to make sense. I assume that this keep alive addition is atomic relative to the operation of the init? IE we won't see:
init incremental keep alive
In that order? the init and keep alive are not able to be seperated?
Metadata Update from @firstyear: - Issue close_status updated to: None
Metadata Update from @mreynolds: - Issue set to the milestone: 1.3.7 backlog (was: 1.3.5.14)
Metadata Update from @mreynolds: - Issue set to the milestone: 1.3.7.0 (was: 1.3.7 backlog)
@lkrispen - Is this still useful?
Metadata Update from @mreynolds: - Custom field reviewstatus adjusted to None - Issue set to the milestone: 1.4.2 (was: 1.3.7.0)
I think it is, but the patch has to be rebased, correctly indented and tested again.
and I would like t get the opinion of @tbordaz
The patch allows a consumer (configured as a master) to create (if it did not exist before) the consumer's keep alive entry. It creates it at the end of a replication session at a time we are sure the changelog exists and will not be reset. It allows a consumer to have RUVelement with csn in the RUV at the first incoming replication session.
Without that patch, the consumer waits to behave as a master and send data to create the RUVelement. So the RUV on the consumer may have empty RUVelement until it receives a direct update.
The patch looks good to me to obtain a non empty RUVelement. ACK
Metadata Update from @vashirov: - Issue priority set to: normal (was: major) - Issue set to the milestone: 1.4.3 (was: 1.4.2)
Metadata Update from @mreynolds: - Assignee reset - Issue tagged with: Replication
Metadata Update from @mreynolds: - Custom field rhbz adjusted to https://bugzilla.redhat.com/show_bug.cgi?id=1859227
Issue linked to Bugzilla: Bug 1859227
389-ds-base is moving from Pagure to Github. This means that new issues and pull requests will be accepted only in 389-ds-base's github repository.
This issue has been cloned to Github and is available here: - https://github.com/389ds/389-ds-base/issues/2058
If you want to receive further updates on the issue, please navigate to the github issue and click on subscribe button.
subscribe
Thank you for understanding. We apologize for all inconvenience.
Metadata Update from @spichugi: - Issue close_status updated to: wontfix - Issue status updated to: Closed (was: Open)
Login to comment on this ticket.