I can not continues reproduce this problem, but I do observe it couple of
times:

java.util.ConcurrentModificationException
        at java.util.HashMap$HashIterator.nextEntry(HashMap.java:762)
        at java.util.HashMap$KeyIterator.next(HashMap.java:798)
        at
org.apache.jmeter.protocol.jdbc.util.DBConnectionManager.shutdown(DBConnectionManager.java:157)
        at
org.apache.jmeter.protocol.jdbc.sampler.JDBCSampler.testEnded(JDBCSampler.java:303)
        at
org.apache.jmeter.engine.StandardJMeterEngine.notifyTestListenersOfEnd(StandardJMeterEngine.java:165)
        at
org.apache.jmeter.engine.StandardJMeterEngine$StopTest.run(StandardJMeterEngine.java:220)
        at java.lang.Thread.run(Thread.java:536)

as I inspected the source code on DBConnectionManager:

    public void shutdown()
    {
      log.debug("Running shutdown from "+Thread.currentThread().getName());
      synchronized (poolMap)
      {
                  Iterator iter = poolMap.keySet().iterator();
                  while (iter.hasNext())
                  {
                  DBKey key = (DBKey)iter.next();
                      ConnectionPool pool = (ConnectionPool)
poolMap.remove(key);
                  pool.close();
                  }
      }
    }

    it is removing a object when there is an active iterator on the
map..... probabely it could be changed as:

public void shutdown()
    {
      log.debug("Running shutdown from "+Thread.currentThread().getName());
      synchronized (poolMap)
      {
                  Iterator iter = poolMap.keySet().iterator();
                  while (iter.hasNext())
                  {
                  DBKey key = (DBKey)iter.next();
//                    ConnectionPool pool = (ConnectionPool)
poolMap.remove(key);
                  pool.close();
                  }

                 poolMap.removeAll();
      }
    }

Eric Li





---------------------------------------------------------------------
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]

Reply via email to