1 2 Previous Next 15 Replies Latest reply on Jul 16, 2015 12:07 PM by tomjenkinson

    Wildfly 8 Concurrency error

    diego.hidalgo

      Dear Friends, can you help me please, I have an application deployed on a JEE wildfly 8 to start with a user have no problem but when I use more than one concurrent user have the following error

       

       

      12:23:38,409 WARN  [com.arjuna.ats.arjuna] (Transaction Reaper) ARJUNA012117: TransactionReaper::check timeout for TX 0:ffffc0a83801:-4dbfde6b:559175cc:12d in state  RUN

      12:23:38,412 WARN  [com.arjuna.ats.arjuna] (Transaction Reaper Worker 0) ARJUNA012095: Abort of action id 0:ffffc0a83801:-4dbfde6b:559175cc:12d invoked while multiple threads active within it.

      12:23:38,412 WARN  [com.arjuna.ats.arjuna] (Transaction Reaper Worker 0) ARJUNA012108: CheckedAction::check - atomic action 0:ffffc0a83801:-4dbfde6b:559175cc:12d aborting with 1 threads active!

      12:23:38,416 WARN  [com.arjuna.ats.arjuna] (Transaction Reaper Worker 0) ARJUNA012121: TransactionReaper::doCancellations worker Thread[Transaction Reaper Worker 0,5,main] successfully canceled TX 0:ffffc0a83801:-4dbfde6b:559175cc:12d

        • 1. Re: Wildfly 8 Concurrency error
          tomjenkinson

          My guess is that you are dead locking in your SQL but you will need to give far more details than you have provided. It will be more appropriate to discuss on the WildFly forum (WildFly) initially as it could be JCA/EJB/app related and is unlikely to be an issue in the transaction manager itself.

          • 2. Re: Wildfly 8 Concurrency error
            diego.hidalgo

            Dear there is no dead lock in the database, that was my first option, the trace gives me only these 4 lines, I could see is that the transaction never does timeout and waits forever so I have to reboot my wildfly, thank you very much

            • 3. Re: Wildfly 8 Concurrency error
              tomjenkinson

              It sounds like an issue in your business logic. Unless you can provide more details there is not much I can say. Try taking thread dumps. I think you need more details then take this to the WildFly forum.

              • 4. Re: Wildfly 8 Concurrency error
                mmusgrov

                The message means that you have a transaction that is taking too long to complete (the default is 5 minutes) and when the time limit is exceeded we rollback the transaction. Since there is a business logic thread still active within the transaction when we call rollback we log a warning message. You could check your business logic to see why you are taking so long to complete your operations - if it is genuinely long operation then extend the transaction timeout.

                • 5. Re: Wildfly 8 Concurrency error
                  diego.hidalgo

                  I do not know why not end the process but the log4j shows this:

                   

                  2015-07-07 09:13:32 INFO  stdout:71 - ] --> com.tandi.dto.party.OrganizationNameDTO@efed702    MAPID:

                   

                   

                  2015-07-07 09:13:32 DEBUG MappingProcessor:371 - MAPPED: Organization.organizationnames --> OrganizationDTO.organizationnames    VALUES: org.eclipse.persistence.indirection.IndirectList@660db946[

                    delegate=java.util.Vector@61fc0e3c

                    valueHolder={{[com.tandi.persistence.entities.Organizationname@7c453d43]}}

                    initialCapacity=10

                    isRegistered=true

                    isListOrderBrokenInDb=false

                    useLazyInstantiation=true

                    elementData={}

                    elementCount=0

                    capacityIncrement=0

                  ] --> com.tandi.dto.party.OrganizationNameDTO@efed702    MAPID:

                  2015-07-07 09:13:32 INFO  stdout:71 - 2015-07-07 09:13:32 DEBUG FieldMap:92 - Getting ready to invoke write method on the destination object. Dest Obj: OrganizationDTO, Dest value: UNIVERSAL

                   

                   

                  2015-07-07 09:13:32 DEBUG FieldMap:92 - Getting ready to invoke write method on the destination object. Dest Obj: OrganizationDTO, Dest value: UNIVERSAL

                  2015-07-07 09:13:32 INFO  stdout:71 - 2015-07-07 09:13:32 DEBUG MappingProcessor:371 - MAPPED: Organization.name --> OrganizationDTO.name    VALUES: UNIVERSAL --> UNIVERSAL    MAPID:

                  • 6. Re: Wildfly 8 Concurrency error
                    diego.hidalgo

                    thank you very much, the problem is that a rollback will not release the transaction still waiting to the point that I have to restart my wildfly, logs only show me the Arjuna Warning and log4j that statement has a  half this process

                    • 7. Re: Wildfly 8 Concurrency error
                      tomjenkinson

                      Try to get some thread dumps to see where your business logic is blocked?

                      • 8. Re: Wildfly 8 Concurrency error
                        diego.hidalgo

                        Thanks, It is mapping entity bean to DTO using the dozer framework , however when I have a manual mapping also happens that, it is difficult to follow the trace because I have to use more than one user to have the error, in a development environment does not happen

                        • 9. Re: Wildfly 8 Concurrency error
                          tomjenkinson

                          Could it be an issue in dozer? Where do you feel the issue lies?

                          • 10. Re: Wildfly 8 Concurrency error
                            diego.hidalgo

                            why Wildfly  issue a warning if a thread terminates a transaction when other threads are still active within it? It should throw an error to be captured and processed

                            • 11. Re: Wildfly 8 Concurrency error
                              mmusgrov

                              Diego Hidalgo wrote:

                               

                              why Wildfly  issue a warning if a thread terminates a transaction when other threads are still active within it? It should throw an error to be captured and processed

                              It is the transaction manager "reaper timeout thread" that is rolling back the transaction independently of any application threads. When an "application thread" eventually gets around to committing or rolling back the transaction an exception will be thrown at which time that "application thread" can capture and process.it.

                              • 12. Re: Wildfly 8 Concurrency error
                                diego.hidalgo

                                Thanks, I understand that,  there is some way I could spend an exception when that happens ?,  when transaction manager return timeout  throws exception in my application ??

                                • 13. Re: Wildfly 8 Concurrency error
                                  tomjenkinson

                                  There are some details on CheckedActions (callback when a transaction is completed with multiple threads in it) over here: http://narayana.io/docs/project/index.html (section 3.2.3.19 for example)

                                  narayana/CheckedAction.java at master · jbosstm/narayana · GitHub

                                  • 14. Re: Wildfly 8 Concurrency error
                                    diego.hidalgo

                                    thank you very much it checked, and found some things there, a question as I can handle the org.jboss.util.deadlock.ApplicationDeadlockException in wildfly??, i dont found this class..

                                    1 2 Previous Next