Commons Pool
  1. Commons Pool
  2. POOL-182

Issues with org.apache.commons.pool2.performance. PerformanceTest

    Details

    • Type: Bug Bug
    • Status: Resolved
    • Priority: Trivial Trivial
    • Resolution: Fixed
    • Affects Version/s: 2.0
    • Fix Version/s: 2.0
    • Labels:
      None

      Description

      the use volatiles : waiting,complete,totalBorrowTime, totalReturnTime, nrSamples
      is not correct.

      for ex the following totalBorrowTime += borrowTime is not atomic resulting in a
      race condition.

      one way to fix this is using the java.util.concurent Atomic variants or even
      better,
      make these variables members of MyThread and aggregate them at the end of the
      test,
      this way there will be no need to use Atomic and thus increasing efficiency, and
      accuracy of the test of the test.

      also:

      private boolean start;

      needs to be volatile, due to visibility issue.
      (when updating start other threads might not pick up the value)

        Activity

        No work has yet been logged on this issue.

          People

          • Assignee:
            Unassigned
            Reporter:
            Zoltan Farkas
          • Votes:
            0 Vote for this issue
            Watchers:
            0 Start watching this issue

            Dates

            • Created:
              Updated:
              Resolved:

              Time Tracking

              Estimated:
              Original Estimate - 4h
              4h
              Remaining:
              Remaining Estimate - 4h
              4h
              Logged:
              Time Spent - Not Specified
              Not Specified

                Development