You are viewing a plain text version of this content. The canonical link for it is here.
Posted to issues@ignite.apache.org by "Igor Sapego (Jira)" <ji...@apache.org> on 2025/05/28 09:25:00 UTC

[jira] [Commented] (IGNITE-25361) Data Streamer calls user code under lock

    [ https://issues.apache.org/jira/browse/IGNITE-25361?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=17954521#comment-17954521 ] 

Igor Sapego commented on IGNITE-25361:
--------------------------------------

Looks good.

> Data Streamer calls user code under lock
> ----------------------------------------
>
>                 Key: IGNITE-25361
>                 URL: https://issues.apache.org/jira/browse/IGNITE-25361
>             Project: Ignite
>          Issue Type: Bug
>          Components: data streamer ai3
>            Reporter: Pavel Tupitsyn
>            Assignee: Pavel Tupitsyn
>            Priority: Major
>              Labels: ignite-3
>          Time Spent: 0.5h
>  Remaining Estimate: 0h
>
> *StreamerSubscriber* calls *subscription.request* under lock, which might cause unnecessary contention.
> Additionally, we call request synchronously, which might cause stack overflow in certain scenarios:
> {code}
> at org.apache.ignite.internal.runner.app.ItStreamTest$1.request(ItStreamTest.java:154)
> 	  - locked <0x985> (a java.lang.Class)
> 	  at org.apache.ignite.internal.streamer.StreamerSubscriber.requestMore(StreamerSubscriber.java:375)
> 	  - locked <0x45ae> (a org.apache.ignite.internal.streamer.StreamerSubscriber)
> 	  at org.apache.ignite.internal.streamer.StreamerSubscriber.onNext(StreamerSubscriber.java:190)
> 	  at org.apache.ignite.internal.runner.app.ItStreamTest$1.request(ItStreamTest.java:154)
> 	  at org.apache.ignite.internal.streamer.StreamerSubscriber.requestMore(StreamerSubscriber.java:375)
> 	  at org.apache.ignite.internal.streamer.StreamerSubscriber.onNext(StreamerSubscriber.java:190)
> 	  at org.apache.ignite.internal.runner.app.ItStreamTest$1.request(ItStreamTest.java:154)
> 	  at org.apache.ignite.internal.streamer.StreamerSubscriber.requestMore(StreamerSubscriber.java:375)
> 	  at org.apache.ignite.internal.streamer.StreamerSubscriber.onNext(StreamerSubscriber.java:190)
> 	  at org.apache.ignite.internal.runner.app.ItStreamTest$1.request(ItStreamTest.java:154)
> ...
> {code}



--
This message was sent by Atlassian Jira
(v8.20.10#820010)