Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

PropertyDDS: Summary generation Bug Fix #18072

Merged
merged 1 commit into from
Nov 27, 2023

Conversation

ruiterr
Copy link
Contributor

@ruiterr ruiterr commented Oct 30, 2023

How contribute to this repo.

Guidelines for Pull Requests.

Description

This PR fixes a bug that resulted in the prune algorithm in PropertyDDS to prune remoteChanges but keep the associated unrebasedChanges when generating a summary. This could later result in rebase errors for clients that would join using this summary as a starting point.

The problem would occur, when a summarizer has several remote changes in its history, but the MSN points to a state before the first of these changes. In that case, none of those can yet be removed, but the old implementation would incorrectly handle this case and remove the remote change, but keep the unrebasedChanges.

Breaking Changes

This change only affects the summarizer and thus will not cause any incompatibility between clients with different versions.

@ruiterr ruiterr requested a review from a team as a code owner October 30, 2023 21:51
@github-actions github-actions bot added area: dds: propertydds public api change Changes to a public API base: main PRs targeted against main branch labels Oct 30, 2023
Copy link
Contributor

@nedalhy nedalhy left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

LGTM

expect(Object.keys(summarizerClient.unrebasedRemoteChanges).length).to.equal(2);
});

async function synchronizeMSN(container2: IContainer, container1: IContainer) {
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

NIT: Its cleaner and more readable if we move this helper method to the top of the file

@CraigMacomber CraigMacomber merged commit 1fe51cd into microsoft:main Nov 27, 2023
noencke pushed a commit to noencke/FluidFramework that referenced this pull request Nov 27, 2023
yann-achard-MS pushed a commit to yann-achard-MS/FluidFramework that referenced this pull request Nov 28, 2023
## Description

Revert microsoft#18491 to restore
microsoft#18072 but without the
build break in the test.
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
area: dds: propertydds base: main PRs targeted against main branch public api change Changes to a public API
Projects
None yet
Development

Successfully merging this pull request may close these issues.

3 participants