[server-dev] [RFC] Interactive transactions in IProto

Vladislav Shpilevoy v.shpilevoy at tarantool.org
Wed Nov 14 21:45:53 MSK 2018


> ** Questions **
> 
> Should we limit the number of streams somehow? I don't think so, at
> least not right now, because streams are completely user controlled,
> like iproto connections.
> 
> How to close a stream so that the corresponding stream object is
> destroyed on the server? Do we need to bother at all? May be dropping
> all streams along with a connection would be enough?
> 
> Should we avoid a fiber_call() when queueing a request? In other words,
> should streams be implemented inside fiber_pool so that we don't need to
> execute a call in a fiber in case all it's going to do is just queue a
> request to be executed by another fiber. This would look cleaner and
> would probably be more efficient.

One more question: what to do with pushes? Can I push into a specific
stream using IPROTO_CHUNK_ID and box.session.push? I think, we should
allow it. By default box.session.push should push into the stream in
which it is executed.

I do not see where you describe a response format, so I guess
IPROTO_STREAM_ID should be in regular IPROTO_OK/ERROR responses too,
right?



More information about the Tarantool-discussions mailing list