On Mar 15, 2008, at 2:37 PM, David Blevins wrote:


On Mar 15, 2008, at 12:06 AM, David Jencks wrote:

While not ideal, I think using a working although slower transport is a reasonable compromise to a faster, broken transport until we can get a fixed activemq out.

We definitely need the vm transport for the embedded testing scenarios and we don't have tx recovery yet, so this is something we probably don't want enable by default. We can wrap the wrapping with the "duct tape" flag like so:

   if (System.getProperty("duct tape") != null) {
xaResource = new WrapperNamedXAResource(xaResource, container.getContainerID().toString());
   }
EndpointHandler endpointHandler = new EndpointHandler(container, deploymentInfo, instanceFactory, xaResource);

If you have time to make the change and rollback the service- jar.xml settings, that'd be great, otherwise I'll get to it before we release.

You should probably check my work :-) but after some work I think the current status is:

- recovery works if howl log configured in tm configuration
- there's a flag TxRecovery for MDB container and the DBCP pools that turns on the NamedXAResource wrapping - recovery and wrapping is turned on for standalone and tomcat, and these use the amq tcp transport - recovery and wrapping is turned off for embedded and it uses vm transport

The tests break if you turn on recovery and wrapping in embedded because the howl log locks its log files and does not unlock them. Without a "stop" lifecycle call I don't know how the howl log can determine its time for a clean shutdown.

thanks
david jencks


-David


Reply via email to