Of course. I will create a JIRA and investigate it further to see if it can
make 8.0.5 release

On Tue, Jul 21, 2020 at 3:24 PM Jonathan Gallimore <
[email protected]> wrote:

> The JIRA shouldn't be resolved. The update was backed out because it broke
> a number of unit tests.
>
> I'm very happy for you to create a JIRA and work on it, that's much
> appreciated. I too don't know specifically what the issue is - if you've
> managed to pin the breakage down to a specific OWB commit, you're
> doing better than me :-).
>
> I don't think its "showstopping" issue for the release though - if its
> going to take a little time to get working and a green build, I'd prefer to
> do two releases (one now and one when its working) than hold up this
> release which includes Tomcat updates to address CVEs. Releases are getting
> easier the more frequently we do them.
>
> Jon
>
> On Tue, Jul 21, 2020 at 1:36 PM Vicente Rossello <[email protected]>
> wrote:
>
> > Hi,
> >
> > Looking at the OWB upgrade, I see that the JIRA issue is resolved (
> > https://issues.apache.org/jira/browse/TOMEE-2809 ) but it was reverted
> in
> > a
> > subsequent commit for some reason (I guess there is an issue with
> > application composer), so 2.0.12 it's still in.
> >
> > I would love to help with this but I have no idea of the issue.
> >
> > This applicationComposer starts correctly with 2.0.15 (I have simplified
> > without extensions since I use junit 5):
> >
> > import org.apache.openejb.jee.WebApp;
> > import org.apache.openejb.testing.Application;
> > import org.apache.openejb.testing.ApplicationComposers;
> > import org.apache.openejb.testing.Classes;
> > import org.apache.openejb.testing.Module;
> > import org.junit.jupiter.api.Test;
> >
> > public class SomeTest {
> >
> >     @Module
> >     @Classes(cdi = true)
> >     public WebApp app() {
> >         return new WebApp()
> >                 .contextRoot("/")
> >                 .addServlet("REST Application",
> > Application.class.getName());
> >     }
> >
> >     @Test
> >     public void start() {
> >         ApplicationComposers.run(SomeTest.class, new String[]{});
> >     }
> > }
> >
> > But it doesn't work with 2.0.16 (note that it also works with cdi =
> false).
> > The error is:
> >
> >
> > java.lang.IllegalStateException: On a thread without an initialized
> context
> > nor a classloader mapping a deployed app
> > org.apache.openejb.OpenEJBRuntimeException:
> > java.lang.IllegalStateException: On a thread without an initialized
> context
> > nor a classloader mapping a deployed app
> > at
> >
> >
> org.apache.openejb.testing.ApplicationComposers.run(ApplicationComposers.java:1563)
> > at com.tr2.web.admin.SomeTest.start(SomeTest.java:22)
> > at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native
> > Method)
> > at
> >
> >
> java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62)
> > at
> >
> >
> java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
> > at java.base/java.lang.reflect.Method.invoke(Method.java:564)
> > at
> >
> >
> org.junit.platform.commons.util.ReflectionUtils.invokeMethod(ReflectionUtils.java:686)
> > at
> >
> >
> org.junit.jupiter.engine.execution.MethodInvocation.proceed(MethodInvocation.java:60)
> > at
> >
> >
> org.junit.jupiter.engine.execution.InvocationInterceptorChain$ValidatingInvocation.proceed(InvocationInterceptorChain.java:131)
> > at
> >
> >
> org.junit.jupiter.engine.extension.TimeoutExtension.intercept(TimeoutExtension.java:149)
> > at
> >
> >
> org.junit.jupiter.engine.extension.TimeoutExtension.interceptTestableMethod(TimeoutExtension.java:140)
> > at
> >
> >
> org.junit.jupiter.engine.extension.TimeoutExtension.interceptTestMethod(TimeoutExtension.java:84)
> > at
> >
> >
> org.junit.jupiter.engine.execution.ExecutableInvoker$ReflectiveInterceptorCall.lambda$ofVoidMethod$0(ExecutableInvoker.java:115)
> > at
> >
> >
> org.junit.jupiter.engine.execution.ExecutableInvoker.lambda$invoke$0(ExecutableInvoker.java:105)
> > at
> >
> >
> org.junit.jupiter.engine.execution.InvocationInterceptorChain$InterceptedInvocation.proceed(InvocationInterceptorChain.java:106)
> > at
> >
> >
> org.junit.jupiter.engine.execution.InvocationInterceptorChain.proceed(InvocationInterceptorChain.java:64)
> > at
> >
> >
> org.junit.jupiter.engine.execution.InvocationInterceptorChain.chainAndInvoke(InvocationInterceptorChain.java:45)
> > at
> >
> >
> org.junit.jupiter.engine.execution.InvocationInterceptorChain.invoke(InvocationInterceptorChain.java:37)
> > at
> >
> >
> org.junit.jupiter.engine.execution.ExecutableInvoker.invoke(ExecutableInvoker.java:104)
> > at
> >
> >
> org.junit.jupiter.engine.execution.ExecutableInvoker.invoke(ExecutableInvoker.java:98)
> > at
> >
> >
> org.junit.jupiter.engine.descriptor.TestMethodTestDescriptor.lambda$invokeTestMethod$6(TestMethodTestDescriptor.java:212)
> > at
> >
> >
> org.junit.platform.engine.support.hierarchical.ThrowableCollector.execute(ThrowableCollector.java:73)
> > at
> >
> >
> org.junit.jupiter.engine.descriptor.TestMethodTestDescriptor.invokeTestMethod(TestMethodTestDescriptor.java:208)
> > at
> >
> >
> org.junit.jupiter.engine.descriptor.TestMethodTestDescriptor.execute(TestMethodTestDescriptor.java:137)
> > at
> >
> >
> org.junit.jupiter.engine.descriptor.TestMethodTestDescriptor.execute(TestMethodTestDescriptor.java:71)
> > at
> >
> >
> org.junit.platform.engine.support.hierarchical.NodeTestTask.lambda$executeRecursively$5(NodeTestTask.java:135)
> > at
> >
> >
> org.junit.platform.engine.support.hierarchical.ThrowableCollector.execute(ThrowableCollector.java:73)
> > at
> >
> >
> org.junit.platform.engine.support.hierarchical.NodeTestTask.lambda$executeRecursively$7(NodeTestTask.java:125)
> > at
> > org.junit.platform.engine.support.hierarchical.Node.around(Node.java:135)
> > at
> >
> >
> org.junit.platform.engine.support.hierarchical.NodeTestTask.lambda$executeRecursively$8(NodeTestTask.java:123)
> > at
> >
> >
> org.junit.platform.engine.support.hierarchical.ThrowableCollector.execute(ThrowableCollector.java:73)
> > at
> >
> >
> org.junit.platform.engine.support.hierarchical.NodeTestTask.executeRecursively(NodeTestTask.java:122)
> > at
> >
> >
> org.junit.platform.engine.support.hierarchical.NodeTestTask.execute(NodeTestTask.java:80)
> > at
> >
> >
> org.junit.platform.engine.support.hierarchical.ForkJoinPoolHierarchicalTestExecutorService$ExclusiveTask.compute(ForkJoinPoolHierarchicalTestExecutorService.java:171)
> > at
> >
> >
> org.junit.platform.engine.support.hierarchical.ForkJoinPoolHierarchicalTestExecutorService.invokeAll(ForkJoinPoolHierarchicalTestExecutorService.java:115)
> > at
> >
> >
> org.junit.platform.engine.support.hierarchical.NodeTestTask.lambda$executeRecursively$5(NodeTestTask.java:139)
> > at
> >
> >
> org.junit.platform.engine.support.hierarchical.ThrowableCollector.execute(ThrowableCollector.java:73)
> > at
> >
> >
> org.junit.platform.engine.support.hierarchical.NodeTestTask.lambda$executeRecursively$7(NodeTestTask.java:125)
> > at
> > org.junit.platform.engine.support.hierarchical.Node.around(Node.java:135)
> > at
> >
> >
> org.junit.platform.engine.support.hierarchical.NodeTestTask.lambda$executeRecursively$8(NodeTestTask.java:123)
> > at
> >
> >
> org.junit.platform.engine.support.hierarchical.ThrowableCollector.execute(ThrowableCollector.java:73)
> > at
> >
> >
> org.junit.platform.engine.support.hierarchical.NodeTestTask.executeRecursively(NodeTestTask.java:122)
> > at
> >
> >
> org.junit.platform.engine.support.hierarchical.NodeTestTask.execute(NodeTestTask.java:80)
> > at
> >
> >
> org.junit.platform.engine.support.hierarchical.ForkJoinPoolHierarchicalTestExecutorService$ExclusiveTask.compute(ForkJoinPoolHierarchicalTestExecutorService.java:171)
> > at
> >
> >
> org.junit.platform.engine.support.hierarchical.ForkJoinPoolHierarchicalTestExecutorService.invokeAll(ForkJoinPoolHierarchicalTestExecutorService.java:115)
> > at
> >
> >
> org.junit.platform.engine.support.hierarchical.NodeTestTask.lambda$executeRecursively$5(NodeTestTask.java:139)
> > at
> >
> >
> org.junit.platform.engine.support.hierarchical.ThrowableCollector.execute(ThrowableCollector.java:73)
> > at
> >
> >
> org.junit.platform.engine.support.hierarchical.NodeTestTask.lambda$executeRecursively$7(NodeTestTask.java:125)
> > at
> > org.junit.platform.engine.support.hierarchical.Node.around(Node.java:135)
> > at
> >
> >
> org.junit.platform.engine.support.hierarchical.NodeTestTask.lambda$executeRecursively$8(NodeTestTask.java:123)
> > at
> >
> >
> org.junit.platform.engine.support.hierarchical.ThrowableCollector.execute(ThrowableCollector.java:73)
> > at
> >
> >
> org.junit.platform.engine.support.hierarchical.NodeTestTask.executeRecursively(NodeTestTask.java:122)
> > at
> >
> >
> org.junit.platform.engine.support.hierarchical.NodeTestTask.execute(NodeTestTask.java:80)
> > at
> >
> >
> org.junit.platform.engine.support.hierarchical.ForkJoinPoolHierarchicalTestExecutorService$ExclusiveTask.compute(ForkJoinPoolHierarchicalTestExecutorService.java:171)
> > at
> >
> >
> java.base/java.util.concurrent.RecursiveAction.exec(RecursiveAction.java:189)
> > at
> > java.base/java.util.concurrent.ForkJoinTask.doExec(ForkJoinTask.java:290)
> > at
> >
> >
> java.base/java.util.concurrent.ForkJoinPool$WorkQueue.topLevelExec(ForkJoinPool.java:1016)
> > at
> java.base/java.util.concurrent.ForkJoinPool.scan(ForkJoinPool.java:1665)
> > at
> >
> >
> java.base/java.util.concurrent.ForkJoinPool.runWorker(ForkJoinPool.java:1598)
> > at
> >
> >
> java.base/java.util.concurrent.ForkJoinWorkerThread.run(ForkJoinWorkerThread.java:177)
> > Caused by: java.lang.IllegalStateException: On a thread without an
> > initialized context nor a classloader mapping a deployed app
> > at
> >
> >
> org.apache.openejb.cdi.ThreadSingletonServiceImpl.get(ThreadSingletonServiceImpl.java:350)
> > at
> >
> >
> org.apache.openejb.cdi.ThreadSingletonServiceImpl.getContext(ThreadSingletonServiceImpl.java:326)
> > at
> >
> >
> org.apache.openejb.cdi.ThreadSingletonServiceImpl.get(ThreadSingletonServiceImpl.java:361)
> > at
> >
> >
> org.apache.openejb.cdi.ThreadSingletonServiceImpl.get(ThreadSingletonServiceImpl.java:69)
> > at
> >
> >
> org.apache.webbeans.config.WebBeansFinder.getSingletonInstance(WebBeansFinder.java:57)
> > at
> >
> >
> org.apache.webbeans.config.WebBeansContext.getInstance(WebBeansContext.java:182)
> > at
> >
> >
> org.apache.webbeans.config.WebBeansContext.currentInstance(WebBeansContext.java:200)
> > at
> >
> >
> org.apache.webbeans.ee.event.TransactionalEventNotifier.registerTransactionSynchronization(TransactionalEventNotifier.java:70)
> > at
> >
> >
> org.apache.openejb.cdi.OpenEJBTransactionService.registerTransactionSynchronization(OpenEJBTransactionService.java:94)
> > at
> >
> >
> org.apache.webbeans.event.NotificationManager.doFireSync(NotificationManager.java:731)
> > at
> >
> >
> org.apache.webbeans.event.NotificationManager.doFireEvent(NotificationManager.java:667)
> > at
> >
> >
> org.apache.webbeans.event.NotificationManager.fireEvent(NotificationManager.java:651)
> > at
> >
> >
> org.apache.webbeans.container.BeanManagerImpl.fireEvent(BeanManagerImpl.java:495)
> > at
> >
> >
> org.apache.webbeans.container.BeanManagerImpl.fireEvent(BeanManagerImpl.java:469)
> > at
> >
> >
> org.apache.webbeans.container.BeanManagerImpl.fireEvent(BeanManagerImpl.java:453)
> > at
> >
> >
> org.apache.webbeans.container.BeanManagerImpl.fireContextLifecyleEvent(BeanManagerImpl.java:479)
> > at
> >
> >
> org.apache.webbeans.web.context.WebContextsService.initSessionContext(WebContextsService.java:503)
> > at
> >
> >
> org.apache.webbeans.web.context.WebContextsService.startContext(WebContextsService.java:314)
> > at org.apache.openejb.cdi.ScopeHelper.startContexts(ScopeHelper.java:35)
> > at
> >
> >
> org.apache.openejb.testing.ApplicationComposers.deployApp(ApplicationComposers.java:727)
> > at
> >
> >
> org.apache.openejb.testing.ApplicationComposers.before(ApplicationComposers.java:386)
> > at
> >
> >
> org.apache.openejb.testing.ApplicationComposers.run(ApplicationComposers.java:1532)
> > ... 59 more
> >
> >
> > I guess that the break comes from:
> >
> >
> https://github.com/apache/openwebbeans/commit/1f79dc5ee9fa3e9675620fd2291b63094b4933c9
> > ,
> > since I can't see an explicit start in tomee (looking at
> > TransactionalEventNotifier.java:70)
> >
> > Want me to create a JIRA issue? I would love to have 2.0.17 so we can use
> > java 14 records
> >
> > Best regards,
> > Vicente.
> >
> >
> > On Tue, Jul 21, 2020 at 12:23 PM Jonathan Gallimore <
> > [email protected]> wrote:
> >
> > > We've had some updated dependencies, some fixes around MDB instance
> > limits,
> > > and a couple of other bugs fixes. We're also starting to get into a
> > slight
> > > better momentum with regular releases.
> > >
> > > So - I'm going to roll an 8.0.4 and 9.0.0-M2 release now, and I'll
> > > follow up with releases for the two 7.x branches as well.
> > >
> > > If there's a showstopper, please let me know.
> > >
> > > Thanks
> > >
> > > Jon
> > >
> >
>

Reply via email to