ode-user mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From Vito <testfor...@163.com>
Subject Re:Re: Re: Re: Re: TransactionManager error when invoking multiple instances on two ODE engines
Date Tue, 18 Mar 2014 06:01:30 GMT
Hi Sathwik,

Actually there is only axis2.xml file under that folder and it's running properly except for
my problem with multiple instances. Does it mean that the axis2.xml file can also play the
role of ode-axis2.properties?

The log of my tomcat servers shows me that some problems went wrong with geronimo transaction
manager indeed. So I may also have the default database settings.

Best,
Vito



At 2014-03-18 13:44:56,"Sathwik B P" <sathwik.bp@gmail.com> wrote:
>Hi Vito,
>
>There has to be a file named ode-axis2.properties under
>*webapps/ode/WEB-INF/conf*
>
>FYI, ODE by default uses an embedded derby database with geronimo
>transaction manager, unless you change the configuration in
>ode-axis2.properties
>
>Would recommend trying the bundled ode-tomcat suggested by tammo earlier.
>
>regards,
>sathwik
>
>
>On Tue, Mar 18, 2014 at 9:48 AM, Vito <testforvln@163.com> wrote:
>
>> Hi Sathwik,
>>
>> I don't have ode-axis2.properties file in my web-inf folder. I have
>> axis2.xml file instead.
>> The two axis2.xml files content is like below, which only change their
>> ports from "8080" to "8180":
>> <axisconfig name="AxisJava2.0">
>>     <parameter name="hotdeployment" locked="false">true</parameter>
>>     <parameter name="hotupdate" locked="false">false</parameter>
>>     <parameter name="enableMTOM" locked="false">false</parameter>
>>     <parameter name="enableSwA" locked="false">false</parameter>
>>     <parameter name="attachmentDIR" locked="false"></parameter>
>>     <parameter name="sizeThreshold" locked="false">4000</parameter-->
>>     <parameter name="ConfigContextTimeoutInterval"
>> locked="false">30</parameter>
>>     <parameter name="sendStacktraceDetailsWithFaults"
>> locked="false">true</parameter>
>>     <parameter name="DrillDownToRootCauseForFaultReason"
>> locked="false">true</parameter>
>>
>>     <parameter name="userName" locked="false">admin</parameter>
>>     <parameter name="password" locked="false">axis2</parameter>
>>     <parameter name="servicePath" locked="false">processes</parameter>
>>     <parameter name="manageTransportSession"
>> locked="false">false</parameter>
>>     <parameter name="enableRESTInAxis2MainServlet"
>> locked="true">true</parameter>
>>     <parameter name="disableREST" locked="true">false</parameter>
>>     <parameter name="disableSeparateEndpointForREST"
>> locked="true">true</parameter>
>>     <messageReceivers>
>>         <messageReceiver mep="http://www.w3.org/2004/08/wsdl/in-only"
>>
>>  class="org.apache.axis2.receivers.RawXMLINOnlyMessageReceiver"/>
>>         <messageReceiver mep="http://www.w3.org/2004/08/wsdl/in-out"
>>
>>  class="org.apache.axis2.receivers.RawXMLINOutMessageReceiver"/>
>>     </messageReceivers>
>>     <transportReceiver name="http"
>>
>>  class="org.apache.axis2.transport.http.SimpleHTTPServer">
>>         <parameter name="port" locked="false">8080</parameter>
>>     </transportReceiver>
>>     <transportReceiver name="jms"
>> class="org.apache.axis2.transport.jms.JMSListener">
>>         <parameter name="myTopicConnectionFactory" locked="false">
>>             <parameter name="java.naming.factory.initial"
>> locked="false">org.apache.activemq.jndi.ActiveMQInitialContextFactory</parameter>
>>             <parameter name="java.naming.provider.url"
>> locked="false">tcp://localhost:61616</parameter>
>>             <parameter name="transport.jms.ConnectionFactoryJNDIName"
>> locked="false">TopicConnectionFactory</parameter>
>>         </parameter>
>>
>>         <parameter name="myQueueConnectionFactory" locked="false">
>>             <parameter name="java.naming.factory.initial"
>> locked="false">org.apache.activemq.jndi.ActiveMQInitialContextFactory</parameter>
>>             <parameter name="java.naming.provider.url"
>> locked="false">tcp://localhost:61616</parameter>
>>             <parameter name="transport.jms.ConnectionFactoryJNDIName"
>> locked="false">QueueConnectionFactory</parameter>
>>         </parameter>
>>
>>         <parameter name="default" locked="false">
>>             <parameter name="java.naming.factory.initial"
>> locked="false">org.apache.activemq.jndi.ActiveMQInitialContextFactory</parameter>
>>             <parameter name="java.naming.provider.url"
>> locked="false">tcp://localhost:61616</parameter>
>>             <parameter name="transport.jms.ConnectionFactoryJNDIName"
>> locked="false">QueueConnectionFactory</parameter>
>>         </parameter>
>>     </transportReceiver>-->
>>
>>     <transportSender name="tcp"
>>
>>  class="org.apache.axis2.transport.tcp.TCPTransportSender"/>
>>     <transportSender name="local"
>>
>>  class="org.apache.axis2.transport.local.LocalTransportSender"/>
>>     <transportSender name="http"
>>
>>  class="org.apache.axis2.transport.http.CommonsHTTPTransportSender">
>>         <parameter name="PROTOCOL" locked="false">HTTP/1.1</parameter>
>>         <parameter name="Transfer-Encoding"
>> locked="false">chunked</parameter>
>>     </transportSender>
>>     <transportSender name="https"
>>
>>  class="org.apache.axis2.transport.http.CommonsHTTPTransportSender">
>>         <parameter name="PROTOCOL" locked="false">HTTP/1.1</parameter>
>>         <parameter name="Transfer-Encoding"
>> locked="false">chunked</parameter>
>>     </transportSender>
>>     <transportSender name="jms"
>>                      class="org.apache.axis2.transport.jms.JMSSender"/>
>>     -->
>>    <transportSender name="mailto"
>> class="org.apache.axis2.transport.mail.MailTransportSender">
>>        <parameter name="transport.mail.smtp.host"
>> locked="false">127.0.0.1</parameter>
>>        <parameter name="transport.mail.smtp.user"
>> locked="false">axis2</parameter>
>>        <parameter name="transport.mail.smtp.password"
>> locked="false">axis2</parameter>
>>        <parameter name="transport.mail.smtp.port"
>> locked="false">25</parameter>
>>    </transportSender>
>>    -->
>>     <phaseOrder type="InFlow">
>>         <!--  System pre defined phases       -->
>>         <phase name="Transport">
>>             <handler name="RequestURIBasedDispatcher"
>>
>>  class="org.apache.axis2.dispatchers.RequestURIBasedDispatcher"/>
>>             <handler name="SOAPActionBasedDispatcher"
>>
>>  class="org.apache.axis2.dispatchers.SOAPActionBasedDispatcher"/>
>>             <handler name="ODEAxisServiceDispatcher"
>>
>>  class="org.apache.ode.axis2.hooks.ODEAxisServiceDispatcher"/>
>>         </phase>
>>         <phase name="Security"/>
>>         <phase name="Addressing">
>>             <handler name="ODEAxisOperationDispatcher"
>>
>>  class="org.apache.ode.axis2.hooks.ODEAxisOperationDispatcher"/>
>>             <handler name="AddressingBasedDispatcher"
>>
>>  class="org.apache.axis2.dispatchers.AddressingBasedDispatcher">
>>                 <order phase="Addressing"/>
>>             </handler>
>>         </phase>
>>         <phase name="PreDispatch"/>
>>         <phase name="Dispatch"
>> class="org.apache.axis2.engine.DispatchPhase">
>>             <handler name="RequestURIBasedDispatcher"
>>
>>  class="org.apache.axis2.dispatchers.RequestURIBasedDispatcher"/>
>>             <handler name="RequestURIOperationDispatcher"
>>
>>  class="org.apache.axis2.dispatchers.RequestURIOperationDispatcher"/>
>>             <handler name="HTTPLocationBasedDispatcher"
>>
>>  class="org.apache.axis2.dispatchers.HTTPLocationBasedDispatcher"/>
>>         </phase>
>>         <phase name="ProcessHeader">
>>             <handler name="SessionInHandler"
>>                  class="org.apache.ode.axis2.hooks.SessionInHandler">
>>                 <order phase="PostDispatch"/>
>>             </handler>
>>         </phase>
>>         <phase name="OperationInPhase"/>
>>     <phase name="soapmonitorPhase"/>
>>     </phaseOrder>
>>     <phaseOrder type="OutFlow">
>>         <!--      user can add his own phases to this area  -->
>>     <phase name="ProcessHeader">
>>         <handler name="SessionOutHandler"
>>              class="org.apache.ode.axis2.hooks.SessionOutHandler">
>>             <order phase="PreDispatch"/>
>>         </handler>
>>     </phase>
>>     <phase name="soapmonitorPhase"/>
>>         <phase name="OperationOutPhase"/>
>>         <phase name="PolicyDetermination"/>
>>         <phase name="MessageOut"/>
>>         <phase name="Security"/>
>>     </phaseOrder>
>>     <phaseOrder type="InFaultFlow">
>>         <phase name="Security"/>
>>         <phase name="Addressing">
>>             <handler name="AddressingBasedDispatcher"
>>
>>  class="org.apache.axis2.dispatchers.AddressingBasedDispatcher">
>>                 <order phase="Addressing"/>
>>             </handler>
>>         </phase>
>>         <phase name="PreDispatch"/>
>>         <phase name="Dispatch"
>> class="org.apache.axis2.engine.DispatchPhase">
>>             <handler name="RequestURIBasedDispatcher"
>>
>>  class="org.apache.axis2.dispatchers.RequestURIBasedDispatcher">
>>                 <order phase="Dispatch"/>
>>             </handler>
>>
>>             <handler name="SOAPActionBasedDispatcher"
>>
>>  class="org.apache.axis2.dispatchers.SOAPActionBasedDispatcher">
>>                 <order phase="Dispatch"/>
>>             </handler>
>>
>>             <handler name="SOAPMessageBodyBasedDispatcher"
>>
>>  class="org.apache.axis2.dispatchers.SOAPMessageBodyBasedDispatcher">
>>                 <order phase="Dispatch"/>
>>             </handler>
>>         </phase>
>>         <phase name="OperationInFaultPhase"/>
>>         <phase name="soapmonitorPhase"/>
>>     </phaseOrder>
>>     <phaseOrder type="OutFaultFlow">
>>         <!--      user can add his own phases to this area  -->
>>         <phase name="soapmonitorPhase"/>
>>         <phase name="OperationOutFaultPhase"/>
>>         <phase name="PolicyDetermination"/>
>>         <phase name="MessageOut"/>
>>         <phase name="Security"/>
>>     </phaseOrder>
>> </axisconfig>
>>
>>
>>
>> <axisconfig name="AxisJava2.0">
>>     <parameter name="hotdeployment" locked="false">true</parameter>
>>     <parameter name="hotupdate" locked="false">false</parameter>
>>     <parameter name="enableMTOM" locked="false">false</parameter>
>>     <parameter name="enableSwA" locked="false">false</parameter>
>>     <parameter name="attachmentDIR" locked="false"></parameter>
>>     <parameter name="sizeThreshold" locked="false">4000</parameter-->
>>     <parameter name="ConfigContextTimeoutInterval"
>> locked="false">30</parameter>
>>     <parameter name="sendStacktraceDetailsWithFaults"
>> locked="false">true</parameter>
>>     <parameter name="DrillDownToRootCauseForFaultReason"
>> locked="false">true</parameter>
>>
>>     <parameter name="userName" locked="false">admin</parameter>
>>     <parameter name="password" locked="false">axis2</parameter>
>>     <parameter name="servicePath" locked="false">processes</parameter>
>>     <parameter name="manageTransportSession"
>> locked="false">false</parameter>
>>     <parameter name="enableRESTInAxis2MainServlet"
>> locked="true">true</parameter>
>>     <parameter name="disableREST" locked="true">false</parameter>
>>     <parameter name="disableSeparateEndpointForREST"
>> locked="true">true</parameter>
>>     <messageReceivers>
>>         <messageReceiver mep="http://www.w3.org/2004/08/wsdl/in-only"
>>
>>  class="org.apache.axis2.receivers.RawXMLINOnlyMessageReceiver"/>
>>         <messageReceiver mep="http://www.w3.org/2004/08/wsdl/in-out"
>>
>>  class="org.apache.axis2.receivers.RawXMLINOutMessageReceiver"/>
>>     </messageReceivers>
>>     <transportReceiver name="http"
>>
>>  class="org.apache.axis2.transport.http.SimpleHTTPServer">
>>         <parameter name="port" locked="false">8180</parameter>
>>     </transportReceiver>
>>     <transportReceiver name="jms"
>> class="org.apache.axis2.transport.jms.JMSListener">
>>         <parameter name="myTopicConnectionFactory" locked="false">
>>             <parameter name="java.naming.factory.initial"
>> locked="false">org.apache.activemq.jndi.ActiveMQInitialContextFactory</parameter>
>>             <parameter name="java.naming.provider.url"
>> locked="false">tcp://localhost:61616</parameter>
>>             <parameter name="transport.jms.ConnectionFactoryJNDIName"
>> locked="false">TopicConnectionFactory</parameter>
>>         </parameter>
>>
>>         <parameter name="myQueueConnectionFactory" locked="false">
>>             <parameter name="java.naming.factory.initial"
>> locked="false">org.apache.activemq.jndi.ActiveMQInitialContextFactory</parameter>
>>             <parameter name="java.naming.provider.url"
>> locked="false">tcp://localhost:61616</parameter>
>>             <parameter name="transport.jms.ConnectionFactoryJNDIName"
>> locked="false">QueueConnectionFactory</parameter>
>>         </parameter>
>>
>>         <parameter name="default" locked="false">
>>             <parameter name="java.naming.factory.initial"
>> locked="false">org.apache.activemq.jndi.ActiveMQInitialContextFactory</parameter>
>>             <parameter name="java.naming.provider.url"
>> locked="false">tcp://localhost:61616</parameter>
>>             <parameter name="transport.jms.ConnectionFactoryJNDIName"
>> locked="false">QueueConnectionFactory</parameter>
>>         </parameter>
>>     </transportReceiver>-->
>>
>>     <transportSender name="tcp"
>>
>>  class="org.apache.axis2.transport.tcp.TCPTransportSender"/>
>>     <transportSender name="local"
>>
>>  class="org.apache.axis2.transport.local.LocalTransportSender"/>
>>     <transportSender name="http"
>>
>>  class="org.apache.axis2.transport.http.CommonsHTTPTransportSender">
>>         <parameter name="PROTOCOL" locked="false">HTTP/1.1</parameter>
>>         <parameter name="Transfer-Encoding"
>> locked="false">chunked</parameter>
>>     </transportSender>
>>     <transportSender name="https"
>>
>>  class="org.apache.axis2.transport.http.CommonsHTTPTransportSender">
>>         <parameter name="PROTOCOL" locked="false">HTTP/1.1</parameter>
>>         <parameter name="Transfer-Encoding"
>> locked="false">chunked</parameter>
>>     </transportSender>
>>     <transportSender name="jms"
>>                      class="org.apache.axis2.transport.jms.JMSSender"/>
>>     -->
>>    <transportSender name="mailto"
>> class="org.apache.axis2.transport.mail.MailTransportSender">
>>        <parameter name="transport.mail.smtp.host"
>> locked="false">127.0.0.1</parameter>
>>        <parameter name="transport.mail.smtp.user"
>> locked="false">axis2</parameter>
>>        <parameter name="transport.mail.smtp.password"
>> locked="false">axis2</parameter>
>>        <parameter name="transport.mail.smtp.port"
>> locked="false">25</parameter>
>>    </transportSender>
>>    -->
>>     <phaseOrder type="InFlow">
>>         <!--  System pre defined phases       -->
>>         <phase name="Transport">
>>             <handler name="RequestURIBasedDispatcher"
>>
>>  class="org.apache.axis2.dispatchers.RequestURIBasedDispatcher"/>
>>             <handler name="SOAPActionBasedDispatcher"
>>
>>  class="org.apache.axis2.dispatchers.SOAPActionBasedDispatcher"/>
>>             <handler name="ODEAxisServiceDispatcher"
>>
>>  class="org.apache.ode.axis2.hooks.ODEAxisServiceDispatcher"/>
>>         </phase>
>>         <phase name="Security"/>
>>         <phase name="Addressing">
>>             <handler name="ODEAxisOperationDispatcher"
>>
>>  class="org.apache.ode.axis2.hooks.ODEAxisOperationDispatcher"/>
>>             <handler name="AddressingBasedDispatcher"
>>
>>  class="org.apache.axis2.dispatchers.AddressingBasedDispatcher">
>>                 <order phase="Addressing"/>
>>             </handler>
>>         </phase>
>>         <phase name="PreDispatch"/>
>>         <phase name="Dispatch"
>> class="org.apache.axis2.engine.DispatchPhase">
>>             <handler name="RequestURIBasedDispatcher"
>>
>>  class="org.apache.axis2.dispatchers.RequestURIBasedDispatcher"/>
>>             <handler name="RequestURIOperationDispatcher"
>>
>>  class="org.apache.axis2.dispatchers.RequestURIOperationDispatcher"/>
>>             <handler name="HTTPLocationBasedDispatcher"
>>
>>  class="org.apache.axis2.dispatchers.HTTPLocationBasedDispatcher"/>
>>         </phase>
>>         <phase name="ProcessHeader">
>>             <handler name="SessionInHandler"
>>                  class="org.apache.ode.axis2.hooks.SessionInHandler">
>>                 <order phase="PostDispatch"/>
>>             </handler>
>>         </phase>
>>         <phase name="OperationInPhase"/>
>>     <phase name="soapmonitorPhase"/>
>>     </phaseOrder>
>>     <phaseOrder type="OutFlow">
>>         <!--      user can add his own phases to this area  -->
>>     <phase name="ProcessHeader">
>>         <handler name="SessionOutHandler"
>>              class="org.apache.ode.axis2.hooks.SessionOutHandler">
>>             <order phase="PreDispatch"/>
>>         </handler>
>>     </phase>
>>     <phase name="soapmonitorPhase"/>
>>         <phase name="OperationOutPhase"/>
>>         <phase name="PolicyDetermination"/>
>>         <phase name="MessageOut"/>
>>         <phase name="Security"/>
>>     </phaseOrder>
>>     <phaseOrder type="InFaultFlow">
>>         <phase name="Security"/>
>>         <phase name="Addressing">
>>             <handler name="AddressingBasedDispatcher"
>>
>>  class="org.apache.axis2.dispatchers.AddressingBasedDispatcher">
>>                 <order phase="Addressing"/>
>>             </handler>
>>         </phase>
>>         <phase name="PreDispatch"/>
>>         <phase name="Dispatch"
>> class="org.apache.axis2.engine.DispatchPhase">
>>             <handler name="RequestURIBasedDispatcher"
>>
>>  class="org.apache.axis2.dispatchers.RequestURIBasedDispatcher">
>>                 <order phase="Dispatch"/>
>>             </handler>
>>
>>             <handler name="SOAPActionBasedDispatcher"
>>
>>  class="org.apache.axis2.dispatchers.SOAPActionBasedDispatcher">
>>                 <order phase="Dispatch"/>
>>             </handler>
>>
>>             <handler name="SOAPMessageBodyBasedDispatcher"
>>
>>  class="org.apache.axis2.dispatchers.SOAPMessageBodyBasedDispatcher">
>>                 <order phase="Dispatch"/>
>>             </handler>
>>         </phase>
>>         <phase name="OperationInFaultPhase"/>
>>         <phase name="soapmonitorPhase"/>
>>     </phaseOrder>
>>     <phaseOrder type="OutFaultFlow">
>>         <!--      user can add his own phases to this area  -->
>>         <phase name="soapmonitorPhase"/>
>>         <phase name="OperationOutFaultPhase"/>
>>         <phase name="PolicyDetermination"/>
>>         <phase name="MessageOut"/>
>>         <phase name="Security"/>
>>     </phaseOrder>
>> </axisconfig>
>>
>>
>>
>>
>>
>>
>> At 2014-03-14 17:20:20,"Sathwik B P" <sathwik.bp@gmail.com> wrote:
>> >Hi Vito,
>> >
>> >Can you share ode-axis2.properties file from both the tomcat servers to
>> >understand your deployment.
>> >
>> >regards,
>> >sathwik
>> >
>> >
>> >On Fri, Mar 14, 2014 at 7:38 AM, Vito <testforvln@163.com> wrote:
>> >
>> >> Hi Tammo,
>> >>
>> >> Thank you for your explanation and advice. Actually I deployed the two
>> ODE
>> >> engines in two tomcat servers of different ports. So if I want to
>> invoke,
>> >> for example, 15 instances in ode1 and 15 instances in ode2, the requests
>> >> have their difference in the ports of their addresses. The question is,
>> in
>> >> this circumstance, do the two ode engines share the same database
>> instance
>> >> when they run in two tomcat servers? I use the internal jpa database.
>> >>
>> >>
>> >> Best,
>> >> Vito
>> >>
>> >>
>> >> At 2014-03-13 19:23:10,"Tammo van Lessen" <tvanlessen@gmail.com> wrote:
>> >> >Hi Vito,
>> >> >
>> >> >it doesn't matter if they share the same JVM but if they share the same
>> >> >data in the database, then you will run into trouble unless you solve
>> some
>> >> >issues needed for clustering. The background is the following: If ODE
>> >> >receives a request, it loads the instance, determines the next steps
>> and
>> >> >adds a new entry to the scheduler table for tasks that requires heavier
>> >> >work. In a cluster you need to make sure that this scheduled job is
>> >> >assigned to a single node and not taken up by all nodes. The scheduler
>> is
>> >> >ready to do that, but the missing piece is the cluster management that
>> >> >assigns IDs to nodes etc. This can be implemented with hazelcast for
>> >> >instance.
>> >> >
>> >> >As a side note: When you use an external database, it is important that
>> >> you
>> >> >have properly configured the transactions manager, either by using
>> >> >https://github.com/vanto/apache-ode-tomcat-bundle or by following the
>> >> >Sathwik's instructions at
>> >> >
>> >>
>> http://sathwikbp.blogspot.de/2013/09/apache-ode-on-tomcat-7-with-bitronix.html
>> >> ,
>> >> >this could help as well.
>> >> >
>> >> >HTH,
>> >> >  Tammo
>> >> >
>> >> >
>> >> >On Wed, Mar 12, 2014 at 2:49 AM, Vito <testforvln@163.com> wrote:
>> >> >
>> >> >> Hi Tammo,
>> >> >>
>> >> >> Yes, both instances are nearly the same except for their different
>> >> >> deployment port number, because they need to be deployed in the
two
>> ODE
>> >> of
>> >> >> different ports.
>> >> >> Do you mean that they share the same jvm and database instance?
It
>> can
>> >> >> really cause some problem.
>> >> >> Actually I'm doing some work trying to implement simple load balance
>> >> >> between different ODE instances, but it's just a external
>> implementation
>> >> >> without using any features of ODE cluster, which I'm not familiar
>> with.
>> >> >>
>> >> >>
>> >> >> Best,
>> >> >> Vito
>> >> >>
>> >> >>
>> >> >> At 2014-03-11 20:35:29,"Tammo van Lessen" <tvanlessen@gmail.com>
>> wrote:
>> >> >> >Hi Vito,
>> >> >> >
>> >> >> >do both instances share the same database schema?
>> >> >> >
>> >> >> >ODE is currently not able to run in a cluster. Actually it
is in
>> >> general
>> >> >> >ready for clustering but two pieces of glue code are missing.
1) the
>> >> load
>> >> >> >balance, 2) the master slave management that is needed for
the
>> >> scheduler
>> >> >> >and the process store. Thus, without a not-too-small amount
of
>> >> developer
>> >> >> >work its currently not possible to setup a cluster based on
open
>> source
>> >> >> >ODE. Also, ODE then assumes that the process definitions are
the
>> same
>> >> >> >across all instances within the cluster.
>> >> >> >
>> >> >> >Or did I get your question wrong?
>> >> >> >
>> >> >> >Tammo
>> >> >> >
>> >> >> >
>> >> >> >On Tue, Mar 11, 2014 at 9:44 AM, Vito <testforvln@163.com>
wrote:
>> >> >> >
>> >> >> >>  Hi all, I'm trying to invoke multiple instances on two
ODE
>> engines.
>> >> >> >> I deployed the two engines in two tomcat servers of different
>> ports
>> >> in
>> >> >> the
>> >> >> >> same computer. Then invoked 15 same process instances
on each ODE
>> >> >> engine,
>> >> >> >> and the two process definitions for the two engines are
not the
>> same.
>> >> >> When
>> >> >> >> I invoked them all, the first engine went well, but the
instances
>> on
>> >> the
>> >> >> >> second engine sometimes worked well, sometimes it threw
exception
>> >> like
>> >> >> >> below:
>> >> >> >>
>> >> >> >> 16:28:01,939 WARN  [Transaction] Unexpected exception
from
>> >> >> >> beforeCompletion; transaction will roll back
>> >> >> >> <openjpa-1.2.1-r752877:753278 nonfatal user error>
>> >> >> >> org.apache.openjpa.persistence.InvalidStateException:
Attempt to
>> >> commit
>> >> >> a
>> >> >> >> null javax.transaction.Transaction.  Some application
servers set
>> the
>> >> >> >> transaction to null if a rollback occurs.
>> >> >> >>     at
>> >> >> >>
>> >> >>
>> >>
>> org.apache.openjpa.kernel.BrokerImpl.setRollbackOnlyInternal(BrokerImpl.java:1490)
>> >> >> >>     at
>> >> >> >>
>> >> >>
>> >>
>> org.apache.openjpa.kernel.BrokerImpl.setRollbackOnly(BrokerImpl.java:1476)
>> >> >> >>     at
>> >> >> >>
>> >> >>
>> >>
>> org.apache.openjpa.kernel.DelegatingBroker.setRollbackOnly(DelegatingBroker.java:925)
>> >> >> >>     at
>> >> >> >>
>> >> >>
>> >>
>> org.apache.openjpa.persistence.EntityManagerImpl.setRollbackOnly(EntityManagerImpl.java:560)
>> >> >> >>     at
>> >> >> >>
>> >> >>
>> >>
>> org.apache.openjpa.persistence.PersistenceExceptions$2.translate(PersistenceExceptions.java:71)
>> >> >> >>     at
>> >> >> >>
>> >> >>
>> >>
>> org.apache.openjpa.kernel.BrokerImpl.translateManagedCompletionException(BrokerImpl.java:1896)
>> >> >> >>     at
>> >> >> >>
>> >> >>
>> >>
>> org.apache.openjpa.kernel.BrokerImpl.beforeCompletion(BrokerImpl.java:1830)
>> >> >> >>     at
>> >> >> >>
>> >> >>
>> >>
>> org.apache.geronimo.transaction.manager.TransactionImpl.beforeCompletion(TransactionImpl.java:514)
>> >> >> >>     at
>> >> >> >>
>> >> >>
>> >>
>> org.apache.geronimo.transaction.manager.TransactionImpl.beforeCompletion(TransactionImpl.java:498)
>> >> >> >>     at
>> >> >> >>
>> >> >>
>> >>
>> org.apache.geronimo.transaction.manager.TransactionImpl.beforePrepare(TransactionImpl.java:400)
>> >> >> >>     at
>> >> >> >>
>> >> >>
>> >>
>> org.apache.geronimo.transaction.manager.TransactionImpl.commit(TransactionImpl.java:257)
>> >> >> >>     at
>> >> >> >>
>> >> >>
>> >>
>> org.apache.geronimo.transaction.manager.TransactionManagerImpl.commit(TransactionManagerImpl.java:238)
>> >> >> >>     at
>> >> >> >>
>> >> >>
>> >>
>> org.apache.ode.scheduler.simple.SimpleScheduler.execTransaction(SimpleScheduler.java:291)
>> >> >> >>     at
>> >> >> >>
>> >> >>
>> >>
>> org.apache.ode.scheduler.simple.SimpleScheduler.execTransaction(SimpleScheduler.java:239)
>> >> >> >>     at
>> >> >> >>
>> >> >>
>> >>
>> org.apache.ode.scheduler.simple.SimpleScheduler$RunJob.call(SimpleScheduler.java:512)
>> >> >> >>     at
>> >> >> >>
>> >> >>
>> >>
>> org.apache.ode.scheduler.simple.SimpleScheduler$RunJob.call(SimpleScheduler.java:496)
>> >> >> >>     at
>> >> >> java.util.concurrent.FutureTask$Sync.innerRun(FutureTask.java:303)
>> >> >> >>     at java.util.concurrent.FutureTask.run(FutureTask.java:138)
>> >> >> >>     at
>> >> >> >>
>> >> >>
>> >>
>> java.util.concurrent.ThreadPoolExecutor$Worker.runTask(ThreadPoolExecutor.java:886)
>> >> >> >>     at
>> >> >> >>
>> >> >>
>> >>
>> java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:908)
>> >> >> >>     at java.lang.Thread.run(Thread.java:662)
>> >> >> >>
>> >> >> >> BTW after the error the instances can still go on to the
normal
>> end.
>> >> >> Maybe
>> >> >> >> the rollback saved the instance.
>> >> >> >> It seems that something went wrong with the transaction
manager.
>> >> Could
>> >> >> you
>> >> >> >> help me figure out how this error came out?
>> >> >> >> Best,
>> >> >> >> Vito
>> >> >> >>
>> >> >> >
>> >> >> >
>> >> >> >
>> >> >> >--
>> >> >> >Tammo van Lessen - http://www.taval.de
>> >> >>
>> >> >
>> >> >
>> >> >
>> >> >--
>> >> >Tammo van Lessen - http://www.taval.de
>> >>
>>
Mime
  • Unnamed multipart/alternative (inline, None, 0 bytes)
View raw message