faban
  1. faban
  2. FABAN-13

Incorrect pre-run delay when parallel thread start is set true

    Details

    • Type: Bug Bug
    • Status: Resolved
    • Priority: Major Major
    • Resolution: Fixed
    • Labels:
      None
    • Environment:

      Solaris 11, JDK 1.6.0_24

      Description

      In config.xml, enable parallel thread start <fd:parallel>true</fd:parallel>. Configure number of agents equal to scale (the number of threads). This causes close to infinite long delay before Faban to invoke run() method of driver. In fact, the workload never got to run.

      SPECSIPASDriverAgent[0].0: Delay set to 1,302,273,336,957,175,537 nanosecs.

      And the following exception would be triggered.

      SPECSIPASDriverAgent[0].0: Sleep interrupted. Run terminating.

      By contrast, if scale is greater than the number agent, the delay amount is reasonable.

      SPECSIPASDriverAgent[0].0: Delay set to 2,998,212,082 nanosecs.

      Or if scale equals to the number of agent, but parallel thread start is set to false,

      <fd:threadStart>
      <fd:delay>1000</fd:delay>
      <fd:simultaneous>true</fd:simultaneous>
      <fd:parallel>false</fd:parallel>
      </fd:threadStart>

      the delay amount is right.

      SPECSIPASDriverAgent[0].0: Delay set to 2,999,708,046 nanosecs.

        Activity

        Hide
        yaominchen added a comment -

        commit 734ec744c66fac4c53442b2f08e1c16188930797
        Author: Super-User <root@swu4200-3.(none)>
        Date: Tue May 17 01:18:40 2011 -0700

        Basically, parallel thread start only makes sense when there are more than one thread in an agent. We fix the bug by checking the number of threads associated with an agent. If the number is one, we fold back to the code path without parallel thread start.

        Show
        yaominchen added a comment - commit 734ec744c66fac4c53442b2f08e1c16188930797 Author: Super-User <root@swu4200-3.(none)> Date: Tue May 17 01:18:40 2011 -0700 Basically, parallel thread start only makes sense when there are more than one thread in an agent. We fix the bug by checking the number of threads associated with an agent. If the number is one, we fold back to the code path without parallel thread start.

          People

          • Assignee:
            yaominchen
            Reporter:
            yaominchen
          • Votes:
            0 Vote for this issue
            Watchers:
            0 Start watching this issue

            Dates

            • Due:
              Created:
              Updated:
              Resolved: