fixed potential deadlock with PooledConnection