<div dir="ltr"><div>The transaction subsystem is going to have to handle that (with some help from the EJB subsystem). <br><br></div>Stuart<br><div><div><div class="gmail_extra"><br><div class="gmail_quote">On Mon, Jul 25, 2016 at 7:45 PM, Michael Musgrove <span dir="ltr">&lt;<a href="mailto:mmusgrov@redhat.com" target="_blank">mmusgrov@redhat.com</a>&gt;</span> wrote:<br><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex"><div dir="ltr"><br><div class="gmail_extra"><br><div class="gmail_quote"><span class="">On Wed, Jul 6, 2016 at 9:37 AM, Wolf Fink <span dir="ltr">&lt;<a href="mailto:wfink@redhat.com" target="_blank">wfink@redhat.com</a>&gt;</span> wrote:<br><blockquote class="gmail_quote" style="margin:0px 0px 0px 0.8ex;border-left:1px solid rgb(204,204,204);padding-left:1ex"><div dir="ltr"><div><div><div><div><div><div><div><div><div>Also I expect EJB chains working, I mean the following sequences<br></div>- remote-&gt;EJB (@NotSupported @Supports - no Tx started) -&gt; internal EJB (no matter whether called via Local/Remote interface) with @ReqNew or @Required<br>- remote-&gt;EJB (any Tx started @Supports @Required @RequiresNew @Mandatory) -&gt; internal EJB (no matter whether called via Local/Remote interface) @RequiresNew<br><br></div>I&#39;m not sure about this use-case with a client (no matter whether it is a standalone app or another server)<br></div>- client starts a Tx<br></div>- client call EJB1 in Tx which return </div></div></div></div></div></div></blockquote><blockquote class="gmail_quote" style="margin:0px 0px 0px 0.8ex;border-left:1px solid rgb(204,204,204);padding-left:1ex"><div dir="ltr"><div><div><div><div><div></div>- -&gt; start Graceful shutdown<br></div></div></div></div></div></blockquote><div> </div></span><div>Stuart, how does the EJB subsystem know that there is an outstanding transaction (the EJB call may have enlisted a resource during the call)? Is it our (ie the txn subsystem) responsibility to detect that there is an outstanding transaction and delay the shutdown until it completes or until the shutdown grace period elapses?</div><div><br></div><div>    --&gt; end  Graceful shutdown</div><div><br></div><div>Mike</div><div><div class="h5"><div><br></div><blockquote class="gmail_quote" style="margin:0px 0px 0px 0.8ex;border-left:1px solid rgb(204,204,204);padding-left:1ex"><div dir="ltr"><div><div><div><div></div>- client call EJB2 in the same Tx<br></div>  - maybe EJB2 is annotated with @RequiresNew and need to suspend Tx1 and start a new one to succeed<br><br></div>My expectation and hope is that such scenario is possible to continue and finish successfully.<span><font color="#888888"><br><br></font></span></div><span><font color="#888888">Wolf</font></span><div><div><br><br><br><div><div class="gmail_extra"><br><div class="gmail_quote">On Wed, Jul 6, 2016 at 1:00 AM, Stuart Douglas <span dir="ltr">&lt;<a href="mailto:stuart.w.douglas@gmail.com" target="_blank">stuart.w.douglas@gmail.com</a>&gt;</span> wrote:<br><blockquote class="gmail_quote" style="margin:0px 0px 0px 0.8ex;border-left:1px solid rgb(204,204,204);padding-left:1ex"><div dir="ltr"><div><div>Local transaction creation has to be allowed during graceful shutdown. e.g. if a web request is in the process of running and it attempts to start a transaction this must be allowed (the core requirement of graceful shutdown is that requests that have already been accepted continue to run as normal).<br><br></div>The only case when transactions should be disallowed are remote transactions, such as remote EJB and CORBA, which I think should already be dealt with at the respective endpoints (in terms of disallowing new transaction creation). I think the main thing that needs consideration here is what to do with EJB requests that would otherwise be rejected that are part of an existing remote transaction. We probably need some way of identifying these requests and allowing them to proceed. <br><span><font color="#888888"><br></font></span></div><span><font color="#888888">Stuart<br><div><div><br><br></div></div></font></span></div><div><div><div class="gmail_extra"><br><div class="gmail_quote">On Mon, Jul 4, 2016 at 11:11 PM, Gytis Trikleris <span dir="ltr">&lt;<a href="mailto:gtrikler@redhat.com" target="_blank">gtrikler@redhat.com</a>&gt;</span> wrote:<br><blockquote class="gmail_quote" style="margin:0px 0px 0px 0.8ex;border-left:1px solid rgb(204,204,204);padding-left:1ex">Hello,<br>
<br>
I’m in the process of writing an analysis document for <a href="https://issues.jboss.org/browse/EAP7-459" rel="noreferrer" target="_blank">https://issues.jboss.org/browse/EAP7-459</a> and need your input. Specifically I’m looking for the list of subsystems which might need to create new transactions during the graceful shutdown. Normally new transactions would not be allowed then, but this might stop other subsystems to shutdown properly. If such subsystems exist we’ll need to think of the way how to filter out their requests (e.g. providing SPI for them).<br>
<br>
Thanks,<br>
Gytis<br>
_______________________________________________<br>
wildfly-dev mailing list<br>
<a href="mailto:wildfly-dev@lists.jboss.org" target="_blank">wildfly-dev@lists.jboss.org</a><br>
<a href="https://lists.jboss.org/mailman/listinfo/wildfly-dev" rel="noreferrer" target="_blank">https://lists.jboss.org/mailman/listinfo/wildfly-dev</a></blockquote></div><br></div>
</div></div><br>_______________________________________________<br>
wildfly-dev mailing list<br>
<a href="mailto:wildfly-dev@lists.jboss.org" target="_blank">wildfly-dev@lists.jboss.org</a><br>
<a href="https://lists.jboss.org/mailman/listinfo/wildfly-dev" rel="noreferrer" target="_blank">https://lists.jboss.org/mailman/listinfo/wildfly-dev</a><br></blockquote></div><br></div></div></div></div></div>
<br>_______________________________________________<br>
wildfly-dev mailing list<br>
<a href="mailto:wildfly-dev@lists.jboss.org" target="_blank">wildfly-dev@lists.jboss.org</a><br>
<a href="https://lists.jboss.org/mailman/listinfo/wildfly-dev" rel="noreferrer" target="_blank">https://lists.jboss.org/mailman/listinfo/wildfly-dev</a><br></blockquote></div></div></div><br><br clear="all"><span class=""><div><br></div>-- <br><div data-smartmail="gmail_signature"><div dir="ltr"><div>Michael Musgrove</div><div>Transactions Team</div><div>e: <a href="mailto:mmusgrov@redhat.com" target="_blank">mmusgrov@redhat.com</a></div><div>t: <a href="tel:%2B44%20191%20243%200870" value="+441912430870" target="_blank">+44 191 243 0870</a></div><div><br></div><div>Registered in England and Wales under Company Registration No. 03798903</div><div>Directors: Michael Cunningham (US), Paul Hickey (Ireland), Matt Parson</div><div>(US), Charles Peters (US)</div><div><br></div><div>Michael Cunningham (US), Charles Peters (US), Matt Parson (US), Michael O&#39;Neill(Ireland)</div></div></div>
</span></div></div>
</blockquote></div><br></div></div></div></div>