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

Sync protocol efficiency changes #368

Open
a-type opened this issue Mar 21, 2024 · 0 comments
Open

Sync protocol efficiency changes #368

a-type opened this issue Mar 21, 2024 · 0 comments
Assignees

Comments

@a-type
Copy link
Owner

a-type commented Mar 21, 2024

Two concepts:

  1. Sending an operation doesn't give the server enough info to know you've acked up to the server order of that operation, so the next sync can (and does) return that operation to you (maybe just for push/pull mode?)
  2. The response to a replica operation is kind of wasted with a simple ack right now

Idea:

Keep push/pull replicas alive in memory for some period of time. Enqueue op-re messages for those replicas in their message queue. When that replica sends a request to submit an op, respond with the ack and the drained message queue. The replica then sends a final ack for the latest op-re server order. This functions as an on-the-fly sync, allowing push/pull replicas to sync more continuously as long as they are sending ops.

@a-type a-type self-assigned this Mar 21, 2024
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

1 participant