saros-project / saros

Open Source IDE plugin for distributed collaborative software development
https://www.saros-project.org
GNU General Public License v2.0
159 stars 52 forks source link

Consistency: Recovery does not always work #85

Open dpp-gerrit opened 7 years ago

dpp-gerrit commented 7 years ago

Share a project. Make sure the invitee (BOB, inviter ALICE) does not have any opened editor. Make sure ALICE has already opened the editor for the affected file.

ALICE restricts BOB to read-only.

BOB deletes the file that ALICE is currently editing (Ignoring the warning, only available with Eclipse 4.x version).

1st issue:

Unless ALICE starts further editing in the affected file, no consistency issue is reported.

2nd issue:

After ALICE perform more edits, BOB finally recieves an inconsistency warning.

3th issue:

The inconsistency warning will remain, regardless how often you perform a consistency recovery, even after you opened an editor for the affected file.

Only another change made by ALICE after BOB opened an editor will finallly resolve the consistency issue.

Reported by: kargor

Original Ticket: dpp/bugs/899

dpp-gerrit commented 7 years ago

After further checking. This cleary a regression issue. The ClientWatchdog was changed in such a way that it will retrieve the editor contents instead of checking the file content. It worked before this change.

Problem:

As long as ALICE has the editor open, the Document Provider provider on BOBs side is not released, and so it is impossible to detect deleted files unless the editor content changes on ALICE side.

Original comment by: kargor

dpp-gerrit commented 7 years ago

With patch https://github.com/saros-project/saros/commit/187146d15ec1de9a3bbe05a7b02948e3434c9afa issue 1 and 2 are resolved.

However, issue 3 remains.

After BOB receives an inconsistency warning and ALICE still continuing to edit the affect file(s), the recovery only succeeds if BOB opens the editor, waiting for further changes made by ALICE and then start the recovery again.

Original comment by: kargor