Uploaded image for project: 'ActiveMQ C++ Client'
  1. ActiveMQ C++ Client
  2. AMQCPP-449

activemq::library::ActiveMQCPP::shutdownLibrary(); causing runtime exception

    XMLWordPrintableJSON

Details

    Description

      Whenever my simple driver application or my receiver application call the shutdownLibrary() method at the end, as the program is going through desctuctors for threads it prints and causes a core dump
      aCC runtime: Unexpected exception of type "decaf::lang::exceptions::RuntimeException".
      aCC runtime: what(): Failed to Lock OS Mutex
      Abort(coredump)

      I added another catch and print in decaf/lang/Thread.cpp about line 133 and on decaf/internal/util/concurrent/unix/PlatformThread.cpp about line 76 i printed out ther error number return from pthread_mutex_lock()

      Now i get:
      Failed to Lock OS Mutex, Error num: 22
      FILE: decaf/internal/util/concurrent/unix/PlatformThread.cpp, LINE: 78
      aCC runtime: Unexpected exception of type "decaf::lang::exceptions::RuntimeException".
      aCC runtime: what(): Failed to Lock OS Mutex, Error num: 22
      Abort(coredump)

      Error 22 is EINVAL and can have two meanings on my system:
      mutex is a PTHREAD_PRIO_PROTECT mutex and the caller's priority is higher than mutex's priority ceiling.
      mutex is not an initialized mutex.

      I'll try and upload my code to see if this happens on other systems as well.

      Attachments

        1. amqdriver.cpp
          15 kB
          Jeffrey B
        2. amqdriver.cpp
          15 kB
          Timothy A. Bish

        Issue Links

          Activity

            People

              tabish Timothy A. Bish
              doldrums Jeffrey B
              Votes:
              0 Vote for this issue
              Watchers:
              2 Start watching this issue

              Dates

                Created:
                Updated:
                Resolved: