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

Tablets: introduce system pipes and use them for http requests #10754

Open
snaury opened this issue Oct 23, 2024 · 0 comments
Open

Tablets: introduce system pipes and use them for http requests #10754

snaury opened this issue Oct 23, 2024 · 0 comments
Assignees

Comments

@snaury
Copy link
Member

snaury commented Oct 23, 2024

Http requests currently use regular pipes, which don't connect until tablets have fully initialized and activated. In practice, when tablets experience problems in their initial transactions it becomes impossible to peek into their internal tables and figure out what exactly went wrong.

I think we need to introduce "system" pipes that don't wait for activations and are somewhat invisible on the "user" side of the tablet. Then http requests would be forwarded via system pipes, and messages will arrive to the system part of the tablet. It would in turn either handle requests on its own (e.g. when user part is unavailable it could draw basic index page with some basic status, otherwise enqueue it until it's ready), and forward them to user part otherwise.

A challenge would be to support handling http requests in some very early states, when executor is not ready yet, restoring the state, etc. Many tablets currently use transactions to handle requests, but transactions don't work until tablet is active, so this should be handled carefully somehow.

@snaury snaury self-assigned this Oct 23, 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