On 14/09/2007, Sonam Chauhan <[EMAIL PROTECTED]> wrote:
> Thanks again Sebb:
>
>
>
> >How many threads have you got?
>
> >
>
> >If you want your threads to act as independent users, then you should
>
> >set the pool size to be at least as big. This should prevent the
>
> >timeouts.
>
>
>
> Thanks Sebb. I have a maximum of about 1500 concurrent threads. A JDBC
> thread pool that large isn't feasible, right? :{
>

Dunno - try it and see. I doubt that the connection objects take up
lots of memory.

It may place a large strain on the server - but that is what you are
trying to test ...

> Generally speaking, how do thread pools interact with databases. I'll
> ask my DBA about this too :) but do databases (in my case, Oracle)
> specify connection limit that limit a practical JMeter the thread pool
> sizes? In my case, I'm running 10-15 JMeter instances concurrently each
> with a JDBC thread pool set to 10 threads (for now). So when they run, I
> guess 150 connections open to the DB? I guess I cannot increase them all
> to 60 without speaking to my DBA. :-) -- right?

Yes, you'll need one connection per pool entry.

If you are trying to test the database, you need to try and use as
many connections as the real-life scenario you are trying to emulate.

>
>
> The Java application we are simulating has JDBC thread pool size set to
> 20. Since JMeter is testing at 3x normal load, should I set the JMeter
> pool size to 60? Upping the JMeter thread pool from 10 to 25 still
> resulted in the error.

Depends on whether you are trying to test SQL traffic increasing 3
times, but still using 20 connections, or whether you also want to
test increasing the pool count.

>
>
> >
>
> >Otherwise threads may have to wait for up to the Pool timeout - which
>
> >does seem to be what is happening here.
>
> >
>
>
>
> What are your thoughts on increasing timeout as opposed to increasing
> the pool size? I guess this affects performance testing as threads will
> no longer strictly follow the ramp up time as they will queue up longer.
>
>
The ramp-up time applies before the threads perform any JDBC requests.

>
> I also found a new exception: SQL 'Io exception' in a load test I
> recently ran.
>
> ----------
>
> <sampleResult timeStamp="1189587196968" dataType="" threadName="Load
> Test Thread Group 1-276" label="JDBC Request - check pick ticket header
> made it to ..." time="79" responseMessage="java.sql.SQLException: Io
> exception: The Network Adapter could not establish the connection"
> responseCode="" success="false"><assertionResult
> failureMessage="Response was null" error="false"
> failure="true"/></sampleResult>
>
> -----------
>
> Any idea about this? This exception only occurs once or twice (in about
> 30000 requests). The NoAvailableConnectionException has thousands of
> entries in the logs.
>

Looks to be a lack of network or host resources.

>
> Kind regards,
>
> Sonam Chauhan
>
> --
>
> Corporate Express Australia Ltd.
>
> Phone: +61-2-93350725, Email: [EMAIL PROTECTED]
>
>
>
>
>
>
>
> -----Original Message-----
>
> From: sebb [mailto:[EMAIL PROTECTED]
>
> Sent: Wednesday, 12 September 2007 8:05 PM
>
> To: JMeter Users List
>
> Subject: Re: JDBC NoAvailableConnectionException Problem
>
>
>
> How many threads have you got?
>
>
>
> If you want your threads to act as independent users, then you should
>
> set the pool size to be at least as big. This should prevent the
>
> timeouts.
>
>
>
> Otherwise threads may have to wait for up to the Pool timeout - which
>
> does seem to be what is happening here.
>
>
>
> [I'm not sure that Pooling is appropriate for JMeter ... we probably
>
> need to add an option to have per-thread connection handling, and
>
> allow manual connect and disconnect].
>
>
>
> As to idle cleanup interval, I assume that is how long a connection
>
> can be idle before it is closed, and therefore affects how often the
>
> connections have to be recycled.
>
>
>
> If you are trying to simulate real clients, then arrange the interval
>
> so that it corresponds with when they would reconnect.
>
>
>
> If you are not interested in connection overhead, then set the
>
> interval higher than the max likely idle period.
>
>
>
> S.
>
> On 12/09/2007, Sonam Chauhan <[EMAIL PROTECTED]> wrote:
>
> > Hello JMeter Users:
>
> >
>
> >
>
> >
>
> > I have a 'heavy' test that uses the 'JDBC Sampler' - it executes about
>
> > 4000 JDBC requests in 600 seconds. However, it throws
>
> > NoAvailableConnectionException errors. Here is a sample log entry:
>
> >
>
> > -------------------
>
> >
>
> > <sampleResult timeStamp="1189567551455" dataType="" threadName="Surge
>
> > Test Thread Group 2-2041" label="Insert a pick ticket ..."
> time="10001"
>
> >
> responseMessage="org.apache.avalon.excalibur.datasource.NoAvailableConne
>
> > ctionException: Could not create enough Components to service your
>
> > request (Timed out)." responseCode="" success="false"><assertionResult
>
> > failureMessage="Response was null" error="false"
>
> > failure="true"/></sampleResult>
>
> >
>
> > -------------------
>
> >
>
> >
>
> >
>
> > The top of the test plan has a 'JDBC Connection Configuration' element
>
> > with these settings.
>
> >
>
> > Max. Number of connections = 10
>
> >
>
> > Pool timeout = 10000 (I assume this caused the error abobe)
>
> >
>
> > Idle Cleanup Interval (ms) = 60000
>
> >
>
> > These and all the other settings for this config element are the
> default
>
> > values
>
> >
>
> >
>
> >
>
> > Can anyone advise me how I can address this error?
>
> >
>
> > Each of my test thread 'sleeps' for about 6 minutes to allow
>
> > transactions to propagate from source to destination systems -would
>
> > impact Idle Cleanup Interval?
>
> >
>
> > Would I increase the max number of number of connections & timeout,
> and
>
> > decrease idle cleanup interval?
>
> >
>
> >
>
> >
>
> > Kind regards,
>
> >
>
> > Sonam Chauhan
>
> >
>
> > --
>
> >
>
> > Corporate Express Australia Ltd.
>
> >
>
> > Phone: +61-2-93350725, Email: [EMAIL PROTECTED]
>
> >
>
> >
>
> >
>
> >
>
>
>
> ---------------------------------------------------------------------
>
> To unsubscribe, e-mail: [EMAIL PROTECTED]
>
> For additional commands, e-mail: [EMAIL PROTECTED]
>
>
>
>

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

Reply via email to