I changed my script from 1 Thread Group with 50 users, to 50 Thread Group each 
with 1 user.  Well, it does not do what I want which is concurrent downloading.

Thread Group 2 does not start until Thread Group 1 finishes, which in this case 
means a long wait for one 310 MB to complete download, before next Thread Group 
(= next downloading) can begin.

So either I have to increase heap memory even more, or use two or three 
machines to run JMeter so as to get 50 concurrent downloads.

If you have other good suggestions please let me know.

Thank you!

Charles

-----Original Message-----
From: Charles Lin (charlin) 
Sent: Saturday, November 07, 2015 9:39 PM
To: JMeter Users List
Subject: RE: not all 50 http samplers to download file are executed

Hi Deepak,

Thank you for your response.

After I submitted my question, I started analyzing the logs, and as you 
suspected, the problem was java out of heap memory

I increased my JVM_ARG to -Xms=4096- Xmx=8000, and was able to get more files 
download to complete.  But still, I only got 20 out of 50 total download that I 
had hoped for.

Is there some timer or timing arrangement with my sampler arrangement under the 
Thread Group that I can play with to overcome this heap memory issue?

How about instead of a single Thread Group with 5 HTTPS samplers under it (the 
first 4 leading up to the 5th which is the actual file downloading request), 
right now I run this Thread Group with User = 50, Ramp = 100 sec, cycle = 1 ... 
instead of that, what if I make them into 5 separate Thread Group, each thread 
group with User = 1, Ramp=1, cycle =1.    Will I be able to launch all 50 
Thread Groups sequentially but quickly, one after another?   For each Thread 
Group, like I said, 5 samplers are needed to cause the download to begin.    
All 5 executes quickly, but the 5th request will take time to finish (for 310 
MB to download).  But as soon as Group 1-5 is done (but downloading now in 
progress), will Group 2-1 ~ 2-5 start to execute?

Will doing the above help to release the heap memory?   In other words, as 
Thread 1-5 finish dumping data to local file, that memory will be freed for 
following succession of Thread 2-5, 3-5, 4-5, 5-5, 6-5, etc to use while they 
also finish up dumping data to file?

Thank you

Charles




2015/11/07 18:43:25 DEBUG - jmeter.threads.ThreadGroup: Ending thread Thread 
Group 1-1 
2015/11/07 18:43:30 ERROR - jmeter.threads.JMeterThread: Test failed! 
java.lang.OutOfMemoryError: Java heap space

2015/11/07 18:43:31 ERROR - jmeter.threads.JMeterThread: Test failed! 
java.lang.OutOfMemoryError: Java heap space

2015/11/07 18:43:31 INFO  - jmeter.threads.JMeterThread: Thread finished: 
Thread Group 1-40 
2015/11/07 18:43:30 ERROR - jmeter.threads.JMeterThread: Test failed! 
java.lang.OutOfMemoryError: Java heap space
        at java.io.ByteArrayOutputStream.<init>(Unknown Source)
        at 
org.apache.jmeter.protocol.http.sampler.HTTPSamplerBase.readResponse(HTTPSamplerBase.java:1741)
        at 
org.apache.jmeter.protocol.http.sampler.HTTPAbstractImpl.readResponse(HTTPAbstractImpl.java:412)
        at 
org.apache.jmeter.protocol.http.sampler.HTTPHC4Impl.sample(HTTPHC4Impl.java:352)
        at 
org.apache.jmeter.protocol.http.sampler.HTTPSamplerProxy.sample(HTTPSamplerProxy.java:74)
        at 
org.apache.jmeter.protocol.http.sampler.HTTPSamplerBase.sample(HTTPSamplerBase.java:1146)
        at 
org.apache.jmeter.protocol.http.sampler.HTTPSamplerBase.sample(HTTPSamplerBase.java:1135)
        at 
org.apache.jmeter.threads.JMeterThread.process_sampler(JMeterThread.java:434)
        at org.apache.jmeter.threads.JMeterThread.run(JMeterThread.java:261)
        at java.lang.Thread.run(Unknown Source)


-----Original Message-----
From: Deepak Shetty [mailto:[email protected]] 
Sent: Saturday, November 07, 2015 8:11 PM
To: JMeter Users List
Subject: Re: not all 50 http samplers to download file are executed

Did you check jmeter.log for errors like out of memory ?
On Nov 7, 2015 1:11 PM, "Charles Lin (charlin)" <[email protected]> wrote:


Reply via email to