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

Support for realtime web #537

Open
JohannesLichtenberger opened this issue Oct 13, 2022 · 4 comments
Open

Support for realtime web #537

JohannesLichtenberger opened this issue Oct 13, 2022 · 4 comments

Comments

@JohannesLichtenberger
Copy link
Member

JohannesLichtenberger commented Oct 13, 2022

Meaning in a first step we should stream the data changes for a resource to interested clients (we could just stream the JSON we generate, which stores a change track).

In a second step we can support queries, which only query one resource. Thus, naively we'd probably have to execute the query/queries asynchronous once a trx has been flushed to disk and check that only result nodes in the curre transaction intent log are streamed to interested clients. Maybe we can store the compiled query at least up until indexes are added/dropped.

Better ideas are of course welcome. A simpler much more efficient approach would be to check for updates on certain paths in the resource.

@JohannesLichtenberger
Copy link
Member Author

How does RethinkDB implement this?

@mosheduminer
Copy link
Member

I wonder if looking at https://github.com/pubkey/event-reduce would be helpful.

@JohannesLichtenberger
Copy link
Member Author

Thanks Moshe, do yohh understand the basic algorithm they are using? Maybe it's too late currently, but I don't get how they determine if a new record from a change event is a query result or not.

@mosheduminer
Copy link
Member

I don't know, I haven't really looked at the implementation. So I only know what it says in the readme.

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

No branches or pull requests

2 participants