2 Replies Latest reply on Jan 19, 2006 9:54 AM by adrian.brock

    DLQueue no ExceptionListener

    rme

      After the DLQHandler creates a Connection it does
      not register an ExceptionListener for that
      Connection. As a result, if the Connection fails,
      1) the Connection is not re-established and 2)
      the logfile fills up with the reports in the
      asynchFailure Connection method.

      Fix is something like:

      DLQHandler implements ExceptionListener.
      After creating Connection, register "this".

      onException(...) {
      try {
      kill Connection
      } catch (...) { ... }
      try {
      create Connection
      register "this" as ExceptionListener
      } catch (...) {...}
      }

      Please put fix into 3.2.8 and next 4.x release.
      Thanks.

        • 1. Re:  DLQueue no ExceptionListener
          • 2. Re:  DLQueue no ExceptionListener

             


            We test on Solaris, Linux and Windows. On Window boxes one can cause connection
            ping timeouts by simply disconnecting the box from the network. A significant percentage
            of such tests, the dead letter queue connections do not recover. On Solaris and Linux
            disconnecting from the network does not produce ping timeout events.
            Once a connection starts failing the timeouts, unless one has an exceptionlistener
            register, the log file fills with the ping timeout notification.
            So, on Windows this is something that is easy to produce and at customer sites having
            the log files filled with such notification just because some IT guy disconnected a
            cable by mistake is not an unlikely event (and unnerves the customer).
            Yes, a dead letter queue is only used in the event of some other error but its the filling of
            the log file thats the customer-visible problem.


            http://wiki.jboss.org/wiki/Wiki.jsp?page=HelpBugReport
            Please keep the discussions in the forums. JIRA goes in the release notes.