Hi Lari,

> Thanks for replying, Penghui. The problem is that there is no rationale
nor description in that PR, https://github.com/apache/pulsar/pull/13666 .
The only sentence there is "Avoid call sync method in async rest API for
delete subscription".

For  https://github.com/apache/pulsar/pull/13666, I have shared the
stacktrace.
>From the stacktrace, you can see the `pulsar-web-40-28` blocked at

```
at java.util.concurrent.CompletableFuture.get(CompletableFuture.java:1895)
at
org.apache.pulsar.broker.admin.impl.PersistentTopicsBase.internalDeleteSubscriptionForNonPartitionedTopic(PersistentTopicsBase.java:1498)
```

Which is a sync method. Ultimately this could lead to all the pulsar-web
thread
blocked. we'd better not introduce blocking calls if we use AsyncResponse.

> What issue did you see? Please share more context. Thanks for the
patience.

It happened very earlier

Here is the issue https://github.com/apache/pulsar/issues/4756
And here is also a related fix https://github.com/apache/pulsar/pull/10619

Thanks,
Penghui




On Tue, Feb 15, 2022 at 10:52 PM Lari Hotari <lhot...@apache.org> wrote:

> On 2022/02/15 14:13:59 PengHui Li wrote:
> > The rationale for these changes, I think it starts from this PR
> > https://github.com/apache/pulsar/pull/13666
> > This is the only one example, we have seen the same issue again and
> again.
> > After #13666 get merged,
> > The contributors found there are many places that might also have the
> same
> > problem.
>
> Thanks for replying, Penghui. The problem is that there is no rationale
> nor description in that PR, https://github.com/apache/pulsar/pull/13666 .
> The only sentence there is "Avoid call sync method in async rest API for
> delete subscription".
>
> > "we have seen the same issue again and again."
>
> What issue did you see? Please share more context. Thanks for the patience.
>
> BR, Lari
>

Reply via email to