JBoss Community

Working around transaction timeouts

created by dfisher in Beginner's Corner - View the full discussion

Using JBoss 5.1.0

 

I've got a long running clean up task that repeatedly invokes a stateless session bean.

The problem I'm having is that the task takes longer than 5 minutes to run, which is the default transaction timeout.

Rather than change the default value or define a custom value on the SSB, I'm trying to wire things up so each SSB call uses it's own transaction.

My current design looks like:

 

MBean

  invoke Task [SSB with @TransactionAttribute(NEVER)]

          invoke Search [SSB with @TransactionAttribute(REQUIRED)], look up entities to operate on

          for each entity

            invoke Operation [SSB with @TransactionAttribute(REQUIRED)], perform operation

 

My expectation is that Task does not have a transaction.

The Search transaction will commit when all entities are found.

A new transaction will run and commit for each invocation on Operation.

However, what occurs is that all operations rollback after 5 minutes.

 

Can anyone explain the correct way to do this?

Thanks.

Reply to this message by going to Community

Start a new discussion in Beginner's Corner at Community