Skip to content
Snippets Groups Projects
user avatar
Gleb Kashkin authored
Before the change there was an unexpected behavior when using
channel:close(), as it closed the channel entirely and discarded all
unread events.

This commit introduces graceful channel close option in tarantool.compat
(gh-7000) that allows to select new or old behavior.

With the new behavior `close()` marks channel as closed for writing.
Only when all events are extracted, the channel is closed entirely. If
there are no events in the channel, it is closed as usual.

Document that describes new API can be found on notion (private):
https://www.notion.so/fiber-channel-graceful-close-53b2788ed1f144598c4c0e1229c2eb69

Requires #7060
Requires #8007
Closes #7746
See also #7000

@TarantoolBot document
Title: new compat option fiber_channel_close_mode

New behavior is gracefully closing fiber channel by marking it
read-only, instead of destroying. Full API description can be found
on notion (private):
https://www.notion.so/tarantool/Fiber-channel-graceful-close-53b2788ed1f144598c4c0e1229c2eb69
de9b9308
History
Name Last commit Last update