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

With improved mtime logic, remote buffer may be briefly considered to have a filesystem conflict #21034

Open
mgsloan opened this issue Nov 22, 2024 · 1 comment
Assignees
Labels
bug [core label] remote dev Feedback for remote development servers

Comments

@mgsloan
Copy link
Contributor

mgsloan commented Nov 22, 2024

collab tests::integration_tests::test_buffer_conflict_after_save is failing on the current state of #20830. What's happening there is:

  • That change was fixing the mtime comparison here to use != instead of > for mtime comparison.

  • On file save, downstream clients are first notified of the file change and then notified of the buffer change. With the previous logic this would pass the > check and not be considered a conflict. With the new logic, this is briefly considered a conflict.

I think the mtime correctness issue is worse than the brief conflict - probably imperceptible in practice. So reducing the test iterations to 4 to avoid shard 5 where the failure happens, and referencing this TODO.

@mgsloan mgsloan added bug [core label] triage Maintainer needs to classify the issue admin read Pending admin review labels Nov 22, 2024
@mgsloan mgsloan self-assigned this Nov 22, 2024
mgsloan added a commit that referenced this issue Nov 22, 2024
This improves some behavior, but also reveals misbehavior such as #21034.

See ["mtime comparison considered harmful"](https://apenwarr.ca/log/20181113) for details of why comparators other than equality/inequality should not be used with mtime.
mgsloan added a commit that referenced this issue Nov 22, 2024
This improves some behavior, but also reveals misbehavior such as #21034.

See ["mtime comparison considered harmful"](https://apenwarr.ca/log/20181113) for details of why comparators other than equality/inequality should not be used with mtime.
@notpeter
Copy link
Member

notpeter commented Dec 4, 2024

@mgsloan Is this still valid?

@notpeter notpeter added remote dev Feedback for remote development servers and removed triage Maintainer needs to classify the issue admin read Pending admin review labels Dec 4, 2024
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
bug [core label] remote dev Feedback for remote development servers
Projects
None yet
Development

No branches or pull requests

2 participants