New dependency on reactive-contexts
by Stephane Epardaud
Hi,
At the moment, the resteasy-rxjava and resteasy-rxjava2 modules register
hooks into the rxjava and rxjava2 plugin/hook system, in order to
propagate the RESTEasy context (thread-local) into all phases of rxjava
single/flowable/etc, which can otherwise be scheduled on any
scheduler/thread and so would lose the RESTEasy context.
RxJava being what it is, you can only register a single plugin/hook
globally, so if RESTEasy defines it, nobody else can. That's
problematic, because CDI also requires context propagation, and so does
Redpipe (to name just the two examples I am using ATM), so I created a
library called Reactive Contexts which decouples libraries that have a
context to propagate (RESTEasy, CDI, Redpipe, etc…) and libraries that
provide context propagation (RxJava1, 2, etc…).
https://reactiverse.io/reactive-contexts
That library is super small (4k core, 13k propagator for rxjava). I'd
like to remove the custom context propagation in the
resteasy-rxjava/rxjava2 and make those modules depend on a new
resteasy-reactive-context which would depend on reactive-contexts-core
to provide a context provider for RESTEasy.
This way, I can also make CDI and Redpipe provide such a module and all
those contexts will be propagated for rxjava for all users :)
WDYT? Do you agree on that extra dependency ? It's only for the rxjava
modules, not the core.
6 years, 2 months
Re: [resteasy-dev] Microprofile-OpenTracing Async issues in TCK when running on Wildfly
by Alessio Soldano
I've pushed a fix for the ResteasyServletInitializer to master
https://github.com/resteasy/Resteasy/commit/1b3870b0b7210a8b4ab70eb51fc90...
; we'll double check it with tck before next release, anyway.
Going back to the issue, 3.0.24 basically removes any doubt I had regarding
recent asyn changes, it's quite an old version.
The AsyncListener ... is this
https://github.com/pavolloffay/smallrye-opentracing/blob/00f6c4dced4990b4...
what you're referring to and which you believe is not working? it's really
a servlet/undertow thing btw...
On Wed, Jul 11, 2018 at 2:40 PM, Martin Kouba <mkouba(a)redhat.com> wrote:
> Also note that we use a modified ResteasyServletInitializer to init
> resteasy in the TCK: https://github.com/smallrye/sm
> allrye-opentracing/pull/4/files#diff-ec8fa59dbdd6534b47de691e766aff61
>
> M
>
> Dne 11.7.2018 v 13:29 Martin Kouba napsal(a):
>
> You're right, 3.0.24.Final.
>>
>> Dne 11.7.2018 v 13:09 Pavol Loffay napsal(a):
>>
>>> Hi Alessio,
>>>
>>> resteasy version in Thorntail and SmallRye should be the same -
>>> 3.0.24.Final. I have added Ken and Martin in case I am wrong.
>>>
>>> Regards,
>>>
>>> On Wed, Jul 11, 2018 at 11:30 AM Alessio Soldano <asoldano(a)redhat.com
>>> <mailto:asoldano@redhat.com>> wrote:
>>>
>>> CC-ing Pavol, not sure he's subscribed to the list
>>>
>>> On Wed, Jul 11, 2018 at 11:29 AM, Alessio Soldano
>>> <asoldano(a)redhat.com <mailto:asoldano@redhat.com>> wrote:
>>>
>>> Hi Pavol,
>>> I'm forwarding this to the dev-list, so that the whole team can
>>> read and help.
>>> Can you start by telling which version of RESTEasy was used in
>>> the previous and current integration?
>>> There's been a bunch of changes around async lately, which might
>>> possibly be related to the issue you're seeing.
>>>
>>> Cheers
>>>
>>> ---------- Forwarded message ----------
>>> From: *Pavol Loffay* <ploffay(a)redhat.com
>>> <mailto:ploffay@redhat.com>>
>>> Date: Tue, Jul 10, 2018 at 6:15 PM
>>> Subject: Microprofile-OpenTracing Async issues in TCK when
>>> running on Wildfly
>>> To: Alessio Soldano <asoldano(a)redhat.com
>>> <mailto:asoldano@redhat.com>>
>>> Cc: jean-frederic clere <jclere(a)redhat.com
>>> <mailto:jclere@redhat.com>>
>>>
>>>
>>> Hi Alessio,
>>>
>>> Jean Frederic pointed me to you as the contact for issues
>>> related to Resteasy/undertow in Wildfly.
>>>
>>> I am migrating Microprofile-OpenTracing implementation from
>>> Thorntail [1] to SmallRye [2]. TCK in Thorntail was passing
>>> fine. Now when it's deployed on Wildfly a test for async
>>> endpoint is failing. Basically, the AsyncListener (added in
>>> filter) which reports some data is never called.
>>>
>>> The issue is described on the PR
>>> https://github.com/smallrye/smallrye-opentracing/pull/4#issu
>>> ecomment-403847333.
>>>
>>>
>>> Could you please have a look and comment on the PR? Is it safe
>>> to rely on AsyncListener. Can it happen that the listener added
>>> in the filter will not be invoked?
>>>
>>> [1]:
>>> https://github.com/thorntail/thorntail/tree/master/fractions
>>> /microprofile/microprofile-opentracing
>>> [2]: https://github.com/smallrye/smallrye-opentracing/pull/4
>>>
>>> Regards,
>>> --
>>> PAVOL LOFFAY
>>>
>>> SOFTWARE ENGINEER
>>>
>>> Red Hat<https://www.redhat.com/>
>>>
>>> M: +41791562647
>>>
>>> <https://red.ht/sig>
>>>
>>>
>>>
>>>
>>> --
>>> Alessio Soldano
>>>
>>> Associate Manager
>>>
>>> Red Hat
>>>
>>> <https://www.redhat.com>
>>>
>>> <https://red.ht/sig>
>>>
>>>
>>>
>>>
>>> --
>>> Alessio Soldano
>>>
>>> Associate Manager
>>>
>>> Red Hat
>>>
>>> <https://www.redhat.com>
>>>
>>> <https://red.ht/sig>
>>>
>>>
>>>
>>> --
>>>
>>> PAVOL LOFFAY
>>>
>>> SOFTWARE ENGINEER
>>>
>>> Red Hat<https://www.redhat.com/>
>>>
>>> M: +41791562647 <javascript:void(0);>
>>>
>>> <https://red.ht/sig>
>>>
>>>
>>
> --
> Martin Kouba
> Senior Software Engineer
> Red Hat, Czech Republic
>
--
Alessio Soldano
Associate Manager
Red Hat
<https://www.redhat.com>
<https://red.ht/sig>
6 years, 5 months
Fwd: Microprofile-OpenTracing Async issues in TCK when running on Wildfly
by Alessio Soldano
Hi Pavol,
I'm forwarding this to the dev-list, so that the whole team can read and
help.
Can you start by telling which version of RESTEasy was used in the previous
and current integration?
There's been a bunch of changes around async lately, which might possibly
be related to the issue you're seeing.
Cheers
---------- Forwarded message ----------
From: Pavol Loffay <ploffay(a)redhat.com>
Date: Tue, Jul 10, 2018 at 6:15 PM
Subject: Microprofile-OpenTracing Async issues in TCK when running on
Wildfly
To: Alessio Soldano <asoldano(a)redhat.com>
Cc: jean-frederic clere <jclere(a)redhat.com>
Hi Alessio,
Jean Frederic pointed me to you as the contact for issues related to
Resteasy/undertow in Wildfly.
I am migrating Microprofile-OpenTracing implementation from Thorntail [1]
to SmallRye [2]. TCK in Thorntail was passing fine. Now when it's deployed
on Wildfly a test for async endpoint is failing. Basically, the
AsyncListener (added in filter) which reports some data is never called.
The issue is described on the PR https://github.com/smallrye/
smallrye-opentracing/pull/4#issuecomment-403847333.
Could you please have a look and comment on the PR? Is it safe to rely on
AsyncListener. Can it happen that the listener added in the filter will not
be invoked?
[1]: https://github.com/thorntail/thorntail/tree/
master/fractions/microprofile/microprofile-opentracing
[2]: https://github.com/smallrye/smallrye-opentracing/pull/4
Regards,
--
PAVOL LOFFAY
SOFTWARE ENGINEER
Red Hat <https://www.redhat.com/>
M: +41791562647
<https://red.ht/sig>
--
Alessio Soldano
Associate Manager
Red Hat
<https://www.redhat.com>
<https://red.ht/sig>
6 years, 5 months