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

Utilize linearization results for validate watch #19088

Open
serathius opened this issue Dec 19, 2024 · 2 comments · May be fixed by #19428
Open

Utilize linearization results for validate watch #19088

serathius opened this issue Dec 19, 2024 · 2 comments · May be fixed by #19428

Comments

@serathius
Copy link
Member

What would you like to be added?

Implement following TODO

// TODO: Use requests from linearization for replay.
replay := model.NewReplay(persistedRequests)

Thanks to anishathalye/porcupine#21 (comment) we should be able to extract linearization results and use them to validate watch.

Why is this needed?

Restores blackbox testing property of validating watch. Instead of needing to look under the hood of etcd WAL history we can just use the requests send by client.

@shashwat010
Copy link
Contributor

I should be using PartialLinearizationsOperations and in // TODO: Use requests from linearization for replay. replay := model.NewReplay(persistedRequests) instead of persistedRequests i should use response of PartialLinearizationsOperations ?

@serathius
Copy link
Member Author

Yes, however the task might be harder than I anticipated. I underestimated the problem of recognizing whether error response was persisted or not. It's not as easy as passing the request history to replay :(

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Development

Successfully merging a pull request may close this issue.

2 participants