18 January 2026:
Sahi Pro is an enterprise grade test automation platform which can automate web, mobile, API, windows and java based applications and SAP.
This forum is now archived and is in read-only mode. Please continue discussions on our improved new Sahi Pro Community forum.
Sahi Pro is an enterprise grade test automation platform which can automate web, mobile, API, windows and java based applications and SAP.
Sahi Automation Has Stopped Working due to java.lang.OutOfMemoryError
Mandatory Info:
OS Name: Windows XP professional versaion 2002 sp3
Browser Name/version: Firefox 3.6.17
Sahi Build: 3.5 (I'm not sure where to get this, please suggest)
I had successfully automated a GWT based application using Sahi. It was working fine when I last ran it (about 2 months back).
Now, I was trying it today and here is what I did:
1. I launched Sahi dashboard
2. I opened firefox browser using Sahi dash board.
3. I tried opening my application by giving its URL.
4. My application is not opening and I get a message which says "Application is taking too long to load". I also observe below exception inside Sahi command line interface.
When I trying opening my application without SAHI, it opens well.
So, the real problem is that my application is not opening with SAHI.
Let me know why this is happening and how should I start to debug this problem?
EXCEPTION:
Sahi properties file = C:\sahi\config\sahi.properties
Sahi user properties file = C:\sahi\userdata\config\userdata.properties
>>>> Sahi started. Listening on port: 9999
>>>> Configure your browser to use this server and port as its proxy
>>>> Browse any page and CTRL-ALT-DblClick on the page to bring up the Sahi Cont
roller
Reading browser types from: C:\sahi\userdata\config\browser_types.xml
Firefox 4 was not found at C:\Program Files\Mozilla Firefox 4.0 Beta 7\firefox.e
xe
Safari was not found at C:\Program Files\Safari\Safari.exe
Chrome was not found at $LOCALAPPDATA\Google\Chrome\Application\chrome.exe
Opera was not found at C:\Program Files\Opera\opera.exe
Jun 15, 2011 11:42:13 AM net.sf.sahi.ssl.SSLHelper getKeyManagerFactoryForRemote
Fetch
INFO: No SSL Client Cert specified
Jun 15, 2011 11:42:14 AM net.sf.sahi.test.ProcessHelper execute
INFO: "C:\Program Files\Mozilla Firefox\firefox.exe" -profile C:\sahi\userdata\b
rowser\ff\profiles\sahi0 -no-remote "http://sahi.example.com/_s_/dyn/Driver_star
t?sahisid=sahi_512a774c0b2100485608e7f0548fe3eccb73__SahiAmpersandSahi__startUrl
=http%3A%2F%2Fsahi.example.com%2F_s_%2Fdyn%2FDriver_initialized%3FstartUrl%3Dhtt
p%253A%252F%252Fsahi.example.com%252F_s_%252Fdyn%252FDriver_initialized"
Jun 15, 2011 11:42:14 AM net.sf.sahi.test.ProcessHelper$PIDGatherer run
INFO: PIDs: [5616]; 750 ms
Jun 15, 2011 11:42:15 AM net.sf.sahi.test.ProcessHelper kill
INFO: Kill: [5616]
Jun 15, 2011 11:42:16 AM net.sf.sahi.test.ProcessHelper kill
INFO: Kill: [5616]
Jun 15, 2011 11:42:21 AM net.sf.sahi.test.ProcessHelper execute
INFO: "C:\Program Files\Mozilla Firefox\firefox.exe" -profile C:\sahi\userdata\b
rowser\ff\profiles\sahi0 -no-remote "http://sahi.example.com/_s_/dyn/Driver_star
t?sahisid=sahi_9419ab40021fc042630926e0deb397542ad8__SahiAmpersandSahi__startUrl
=http%3A%2F%2Fsahi.example.com%2F_s_%2Fdyn%2FDriver_initialized%3FstartUrl%3Dhtt
p%253A%252F%252Fsahi.example.com%252F_s_%252Fdyn%252FDriver_initialized"
Jun 15, 2011 11:42:22 AM net.sf.sahi.test.ProcessHelper$PIDGatherer run
INFO: PIDs: [3356]; 1187 ms
Exception in thread "Thread-204" java.lang.OutOfMemoryError: Java heap space
at java.util.Arrays.copyOfRange(Unknown Source)
at java.lang.String.<init>(Unknown Source)
at java.lang.StringBuilder.toString(Unknown Source)
at net.sf.sahi.stream.filter.HTMLModifierFilter.inject(HTMLModifierFilte
r.java:117)
at net.sf.sahi.stream.filter.HTMLModifierFilter.injectSahiFiles(HTMLModi
fierFilter.java:92)
at net.sf.sahi.stream.filter.HTMLModifierFilter.modify(HTMLModifierFilte
r.java:67)
at net.sf.sahi.response.HttpModifiedResponse2.<init>(HttpModifiedRespons
e2.java:63)
at net.sf.sahi.RemoteRequestProcessor.addFilters(RemoteRequestProcessor.
java:259)
at net.sf.sahi.RemoteRequestProcessor.processHttp(RemoteRequestProcessor
.java:214)
at net.sf.sahi.RemoteRequestProcessor.processHttp(RemoteRequestProcessor
.java:83)
at net.sf.sahi.ProxyProcessor.processAsProxy(ProxyProcessor.java:147)
at net.sf.sahi.ProxyProcessor.run(ProxyProcessor.java:93)
at java.lang.Thread.run(Unknown Source)
Exception in thread "Thread-203" java.lang.OutOfMemoryError: Java heap space
at java.util.Arrays.copyOfRange(Unknown Source)
at java.lang.String.<init>(Unknown Source)
at java.lang.StringBuilder.toString(Unknown Source)
at net.sf.sahi.stream.filter.HTMLModifierFilter.inject(HTMLModifierFilte
r.java:117)
at net.sf.sahi.stream.filter.HTMLModifierFilter.injectSahiFiles(HTMLModi
fierFilter.java:92)
at net.sf.sahi.stream.filter.HTMLModifierFilter.modify(HTMLModifierFilte
r.java:67)
at net.sf.sahi.response.HttpModifiedResponse2.<init>(HttpModifiedRespons
e2.java:63)
at net.sf.sahi.RemoteRequestProcessor.addFilters(RemoteRequestProcessor.
java:259)
at net.sf.sahi.RemoteRequestProcessor.processHttp(RemoteRequestProcessor
.java:214)
at net.sf.sahi.RemoteRequestProcessor.processHttp(RemoteRequestProcessor
.java:83)
at net.sf.sahi.ProxyProcessor.processAsProxy(ProxyProcessor.java:147)
at net.sf.sahi.ProxyProcessor.run(ProxyProcessor.java:93)
at java.lang.Thread.run(Unknown Source)
Exception in thread "pool-1-thread-4" java.lang.OutOfMemoryError: Java heap spac
e
at java.util.Arrays.copyOfRange(Unknown Source)
at java.lang.String.<init>(Unknown Source)
at java.lang.StringBuilder.toString(Unknown Source)
at net.sf.sahi.stream.filter.HTMLModifierFilter.inject(HTMLModifierFilte
r.java:117)
at net.sf.sahi.stream.filter.HTMLModifierFilter.injectSahiFiles(HTMLModi
fierFilter.java:92)
at net.sf.sahi.stream.filter.HTMLModifierFilter.modify(HTMLModifierFilte
r.java:67)
at net.sf.sahi.response.HttpModifiedResponse2.<init>(HttpModifiedRespons
e2.java:63)
at net.sf.sahi.RemoteRequestProcessor.addFilters(RemoteRequestProcessor.
java:259)
at net.sf.sahi.RemoteRequestProcessor.processHttp(RemoteRequestProcessor
.java:214)
at net.sf.sahi.RemoteRequestProcessor.processHttp(RemoteRequestProcessor
.java:83)
at net.sf.sahi.ProxyProcessor.processAsProxy(ProxyProcessor.java:147)
at net.sf.sahi.ProxyProcessor.run(ProxyProcessor.java:93)
at java.util.concurrent.ThreadPoolExecutor$Worker.runTask(Unknown Source
)
at java.util.concurrent.ThreadPoolExecutor$Worker.run(Unknown Source)
at java.lang.Thread.run(Unknown Source)
Jun 15, 2011 11:42:54 AM net.sf.sahi.test.ProcessHelper kill
INFO: Kill: [3356]
Jun 15, 2011 11:42:55 AM net.sf.sahi.test.ProcessHelper kill
INFO: Kill: [3356]
C:\Program Files\Mozilla Firefox\firefox.exe -profile "C:\sahi\userdata/browser/
ff/profiles/sahi0" -no-remote http://sahi.example.com/_s_/dyn/Driver_initialized
OS Name: Windows XP professional versaion 2002 sp3
Browser Name/version: Firefox 3.6.17
Sahi Build: 3.5 (I'm not sure where to get this, please suggest)
I had successfully automated a GWT based application using Sahi. It was working fine when I last ran it (about 2 months back).
Now, I was trying it today and here is what I did:
1. I launched Sahi dashboard
2. I opened firefox browser using Sahi dash board.
3. I tried opening my application by giving its URL.
4. My application is not opening and I get a message which says "Application is taking too long to load". I also observe below exception inside Sahi command line interface.
When I trying opening my application without SAHI, it opens well.
So, the real problem is that my application is not opening with SAHI.
Let me know why this is happening and how should I start to debug this problem?
EXCEPTION:
Sahi properties file = C:\sahi\config\sahi.properties
Sahi user properties file = C:\sahi\userdata\config\userdata.properties
>>>> Sahi started. Listening on port: 9999
>>>> Configure your browser to use this server and port as its proxy
>>>> Browse any page and CTRL-ALT-DblClick on the page to bring up the Sahi Cont
roller
Reading browser types from: C:\sahi\userdata\config\browser_types.xml
Firefox 4 was not found at C:\Program Files\Mozilla Firefox 4.0 Beta 7\firefox.e
xe
Safari was not found at C:\Program Files\Safari\Safari.exe
Chrome was not found at $LOCALAPPDATA\Google\Chrome\Application\chrome.exe
Opera was not found at C:\Program Files\Opera\opera.exe
Jun 15, 2011 11:42:13 AM net.sf.sahi.ssl.SSLHelper getKeyManagerFactoryForRemote
Fetch
INFO: No SSL Client Cert specified
Jun 15, 2011 11:42:14 AM net.sf.sahi.test.ProcessHelper execute
INFO: "C:\Program Files\Mozilla Firefox\firefox.exe" -profile C:\sahi\userdata\b
rowser\ff\profiles\sahi0 -no-remote "http://sahi.example.com/_s_/dyn/Driver_star
t?sahisid=sahi_512a774c0b2100485608e7f0548fe3eccb73__SahiAmpersandSahi__startUrl
=http%3A%2F%2Fsahi.example.com%2F_s_%2Fdyn%2FDriver_initialized%3FstartUrl%3Dhtt
p%253A%252F%252Fsahi.example.com%252F_s_%252Fdyn%252FDriver_initialized"
Jun 15, 2011 11:42:14 AM net.sf.sahi.test.ProcessHelper$PIDGatherer run
INFO: PIDs: [5616]; 750 ms
Jun 15, 2011 11:42:15 AM net.sf.sahi.test.ProcessHelper kill
INFO: Kill: [5616]
Jun 15, 2011 11:42:16 AM net.sf.sahi.test.ProcessHelper kill
INFO: Kill: [5616]
Jun 15, 2011 11:42:21 AM net.sf.sahi.test.ProcessHelper execute
INFO: "C:\Program Files\Mozilla Firefox\firefox.exe" -profile C:\sahi\userdata\b
rowser\ff\profiles\sahi0 -no-remote "http://sahi.example.com/_s_/dyn/Driver_star
t?sahisid=sahi_9419ab40021fc042630926e0deb397542ad8__SahiAmpersandSahi__startUrl
=http%3A%2F%2Fsahi.example.com%2F_s_%2Fdyn%2FDriver_initialized%3FstartUrl%3Dhtt
p%253A%252F%252Fsahi.example.com%252F_s_%252Fdyn%252FDriver_initialized"
Jun 15, 2011 11:42:22 AM net.sf.sahi.test.ProcessHelper$PIDGatherer run
INFO: PIDs: [3356]; 1187 ms
Exception in thread "Thread-204" java.lang.OutOfMemoryError: Java heap space
at java.util.Arrays.copyOfRange(Unknown Source)
at java.lang.String.<init>(Unknown Source)
at java.lang.StringBuilder.toString(Unknown Source)
at net.sf.sahi.stream.filter.HTMLModifierFilter.inject(HTMLModifierFilte
r.java:117)
at net.sf.sahi.stream.filter.HTMLModifierFilter.injectSahiFiles(HTMLModi
fierFilter.java:92)
at net.sf.sahi.stream.filter.HTMLModifierFilter.modify(HTMLModifierFilte
r.java:67)
at net.sf.sahi.response.HttpModifiedResponse2.<init>(HttpModifiedRespons
e2.java:63)
at net.sf.sahi.RemoteRequestProcessor.addFilters(RemoteRequestProcessor.
java:259)
at net.sf.sahi.RemoteRequestProcessor.processHttp(RemoteRequestProcessor
.java:214)
at net.sf.sahi.RemoteRequestProcessor.processHttp(RemoteRequestProcessor
.java:83)
at net.sf.sahi.ProxyProcessor.processAsProxy(ProxyProcessor.java:147)
at net.sf.sahi.ProxyProcessor.run(ProxyProcessor.java:93)
at java.lang.Thread.run(Unknown Source)
Exception in thread "Thread-203" java.lang.OutOfMemoryError: Java heap space
at java.util.Arrays.copyOfRange(Unknown Source)
at java.lang.String.<init>(Unknown Source)
at java.lang.StringBuilder.toString(Unknown Source)
at net.sf.sahi.stream.filter.HTMLModifierFilter.inject(HTMLModifierFilte
r.java:117)
at net.sf.sahi.stream.filter.HTMLModifierFilter.injectSahiFiles(HTMLModi
fierFilter.java:92)
at net.sf.sahi.stream.filter.HTMLModifierFilter.modify(HTMLModifierFilte
r.java:67)
at net.sf.sahi.response.HttpModifiedResponse2.<init>(HttpModifiedRespons
e2.java:63)
at net.sf.sahi.RemoteRequestProcessor.addFilters(RemoteRequestProcessor.
java:259)
at net.sf.sahi.RemoteRequestProcessor.processHttp(RemoteRequestProcessor
.java:214)
at net.sf.sahi.RemoteRequestProcessor.processHttp(RemoteRequestProcessor
.java:83)
at net.sf.sahi.ProxyProcessor.processAsProxy(ProxyProcessor.java:147)
at net.sf.sahi.ProxyProcessor.run(ProxyProcessor.java:93)
at java.lang.Thread.run(Unknown Source)
Exception in thread "pool-1-thread-4" java.lang.OutOfMemoryError: Java heap spac
e
at java.util.Arrays.copyOfRange(Unknown Source)
at java.lang.String.<init>(Unknown Source)
at java.lang.StringBuilder.toString(Unknown Source)
at net.sf.sahi.stream.filter.HTMLModifierFilter.inject(HTMLModifierFilte
r.java:117)
at net.sf.sahi.stream.filter.HTMLModifierFilter.injectSahiFiles(HTMLModi
fierFilter.java:92)
at net.sf.sahi.stream.filter.HTMLModifierFilter.modify(HTMLModifierFilte
r.java:67)
at net.sf.sahi.response.HttpModifiedResponse2.<init>(HttpModifiedRespons
e2.java:63)
at net.sf.sahi.RemoteRequestProcessor.addFilters(RemoteRequestProcessor.
java:259)
at net.sf.sahi.RemoteRequestProcessor.processHttp(RemoteRequestProcessor
.java:214)
at net.sf.sahi.RemoteRequestProcessor.processHttp(RemoteRequestProcessor
.java:83)
at net.sf.sahi.ProxyProcessor.processAsProxy(ProxyProcessor.java:147)
at net.sf.sahi.ProxyProcessor.run(ProxyProcessor.java:93)
at java.util.concurrent.ThreadPoolExecutor$Worker.runTask(Unknown Source
)
at java.util.concurrent.ThreadPoolExecutor$Worker.run(Unknown Source)
at java.lang.Thread.run(Unknown Source)
Jun 15, 2011 11:42:54 AM net.sf.sahi.test.ProcessHelper kill
INFO: Kill: [3356]
Jun 15, 2011 11:42:55 AM net.sf.sahi.test.ProcessHelper kill
INFO: Kill: [3356]
C:\Program Files\Mozilla Firefox\firefox.exe -profile "C:\sahi\userdata/browser/
ff/profiles/sahi0" -no-remote http://sahi.example.com/_s_/dyn/Driver_initialized
This discussion has been closed.
Comments
Check this if it helps you to resolve the issue:
http://sahi.co.in/forums/viewtopic.php?id=1397
Regards
Sumitra
My problem still exist. There were 2 solutions given to this problem in your reference problem.
Mentioned by Narayan
The OutOfMemoryError occurs when the browser points to Sahi's proxy and Sahi's proxy again points to itself. This circular reference can occur in 2 cases:
1) sahi/config/sahi.properties (or userdata/config/userdata.properties) has been modified to use an external proxy which points to localhost 9999.
2) The proxy settings are configured globally such that java itself is using the global proxy settings, in which case the java code in Sahi will connect to Sahi itself and cause a loop.
I have not changed anything or configured any proxy settings inside sahi.properties (or userdata/config/userdata.properties).
How do I verify Step 2? Kindly provide any insights.
Thanks,
Nitesh
Since I have not changed any property file for sahi, I really do not know why this exception is happening.
Kindly provide how should I check Solution 2 (specified inside forum thread mentioned by you) for me.
Thanks,
Nitesh
It looks like there is some huge file being fetched in your application.
Open sahi/bin/dashboard.bat
Search for
java -classpath
replace it with
java -Xmx128m -classpath
Restart Sahi and check.
With Xmx setting we have increased the heap size for Sahi's Java process. Increase it to
-Xmx256m if this does not work and check.
Regards,
Narayan
Thanks for help.
-Nitesh