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

[3pt] streams are implemented in iproto #2307

Closed
TarantoolBot opened this issue Aug 23, 2021 · 1 comment · Fixed by #2356
Closed

[3pt] streams are implemented in iproto #2307

TarantoolBot opened this issue Aug 23, 2021 · 1 comment · Fixed by #2356
Assignees
Labels
feature A new functionality iproto Related to the iproto protocol server [area] Task relates to Tarantool's server (core) functionality
Milestone

Comments

@TarantoolBot
Copy link
Collaborator

TarantoolBot commented Aug 23, 2021

Product: Tarantool
Since: 2.10.0-beta1
Root document: https://www.tarantool.io/en/doc/latest/dev_guide/internals/box_protocol/
SME: @ EvgenyMekhanik

Details

A distinctive feature of streams is that all requests in them
are processed sequentially. The execution of the next request
in stream will not start until the previous one is completed.
To separate requests belonging to and not belonging to streams
we use stream ID field in binary iproto protocol: requests with
non-zero stream ID belongs to some stream. Stream ID is unique
within the connection and indicates which stream the request
belongs to. For streams from different connections, the IDs may
be the same.
There is no need to send special command to start stream: you
just only need to send request with non zero stream ID, server
creates stream if it is not exist and process this request in it.
Stream ID is generated on the client size. There is no stream ID
in responses: since the client generates a stream ID, and the client
knows for what request come this response, there is no need for this.

tarantool/tarantool@711cca1

Related to #2308

@veod32 veod32 added this to the Estimate [@veod32] milestone Sep 8, 2021
@veod32 veod32 added server [area] Task relates to Tarantool's server (core) functionality feature A new functionality iproto Related to the iproto protocol labels Sep 8, 2021
@veod32 veod32 changed the title streams are implemented in iproto [5pt] streams are implemented in iproto Sep 8, 2021
@veod32 veod32 removed this from the Estimate [@veod32] milestone Sep 8, 2021
@art-dr art-dr changed the title [5pt] streams are implemented in iproto [3pt] streams are implemented in iproto Sep 22, 2021
@art-dr art-dr added this to the Stream related issues milestone Sep 22, 2021
@NickVolynkin NickVolynkin assigned pgulutzan and unassigned pgulutzan Sep 24, 2021
@NickVolynkin
Copy link
Contributor

Hi @pgulutzan! This is a part of a bunch of tickets related to the new streams feature. We've gathered them in a milestone: https://github.com/tarantool/doc/milestone/31

This particular issue is about a reference to the new feature's implementation in iproto. We'll write an explanation with use cases in a separate document.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
feature A new functionality iproto Related to the iproto protocol server [area] Task relates to Tarantool's server (core) functionality
Projects
None yet
Development

Successfully merging a pull request may close this issue.

5 participants