Qpid
  1. Qpid
  2. QPID-3013

ConnectionCloseTest fails on machines with increased processor counts

    Details

    • Type: Test Test
    • Status: Resolved
    • Priority: Minor Minor
    • Resolution: Fixed
    • Affects Version/s: 0.8
    • Fix Version/s: 0.9
    • Component/s: Java Broker, Java Client
    • Labels:
      None

      Description

      ConnectionCloseTest fails on machines with increased processor counts. This is because it does allow for the larger number of threads that can be assigned to thread pools created in the MINA codebase.

        Activity

        Hide
        Andrew Kennedy added a comment -

        Works, but we need to verify this behaviour on a machine where N_processors is large, say 128 or 256?

        Show
        Andrew Kennedy added a comment - Works, but we need to verify this behaviour on a machine where N_processors is large, say 128 or 256?
        Hide
        Robbie Gemmell added a comment -

        Removed the initial connection, moving its closure showed that only the encessary threads in the pools were started and so it wasnt having the desired effect of taing the pool size out of the equation afterall.

        Added a processor count based variable delta instead.

        Show
        Robbie Gemmell added a comment - Removed the initial connection, moving its closure showed that only the encessary threads in the pools were started and so it wasnt having the desired effect of taing the pool size out of the equation afterall. Added a processor count based variable delta instead.
        Hide
        Andrew Kennedy added a comment -

        Good idea, but should move the intialConnection.close() to after counting the threads for the second time, as in the sequence below. Additionally, the delta check should be scalable with the number of CPUs - see step 5 below, although the coefficients may need fixing, as I just guessed:

        1. start initial connection
        2. count threads T_1
        3. perform test
        4. count threads T_2
        5. delta = T_2 - T_1 <= (a * CPUs) + b :

        { a = 2, b = 4 }

        6. close initial connection

        Show
        Andrew Kennedy added a comment - Good idea, but should move the intialConnection.close() to after counting the threads for the second time, as in the sequence below. Additionally, the delta check should be scalable with the number of CPUs - see step 5 below, although the coefficients may need fixing, as I just guessed: 1. start initial connection 2. count threads T_1 3. perform test 4. count threads T_2 5. delta = T_2 - T_1 <= (a * CPUs) + b : { a = 2, b = 4 } 6. close initial connection
        Hide
        Robbie Gemmell added a comment -

        Andrew can you review please? Thanks

        Show
        Robbie Gemmell added a comment - Andrew can you review please? Thanks

          People

          • Assignee:
            Andrew Kennedy
            Reporter:
            Robbie Gemmell
          • Votes:
            0 Vote for this issue
            Watchers:
            0 Start watching this issue

            Dates

            • Created:
              Updated:
              Resolved:

              Development