[
https://issues.apache.org/jira/browse/IGNITE-18510?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
]
Yury Gerzhedovich reassigned IGNITE-18510:
------------------------------------------
Assignee: Yury Gerzhedovich
> Sql. CompositePublisher is not thread safe
> ------------------------------------------
>
> Key: IGNITE-18510
> URL: https://issues.apache.org/jira/browse/IGNITE-18510
> Project: Ignite
> Issue Type: Bug
> Components: sql
> Reporter: Yury Gerzhedovich
> Assignee: Yury Gerzhedovich
> Priority: Major
> Labels: ignite-3
>
> Currently our CompositePublisher is not threadsafe, but we have to deal with
> 3 types of potentially concurrent signals when arbitrating
> {*}Flow.Subscription{*}s:
> # A *request(long)* call from downstream that has to be routed to the
> current Flow.Subscription
> # A *cancel()* call from downstream that has to be routed to the current
> *Flow.Subscription* and cancel any future {*}Flow.Subscription{*}.
> # A *setSubscription(Flow.Subscription)* that is called by the current
> *Flow.Subscriber* after subscribing to any *Flow.Publisher* which is not
> guaranteed to happen on the same thread *subscribe()* is called
> Let's reimplement our CompositePublisher
--
This message was sent by Atlassian Jira
(v8.20.10#820010)