Copy link to clipboard
Copied
I have tried contacting Adobe support 3 times on this issue. Each time they tell me to send a screenshot and my logs. I have sent them and they never receive them. I have tried to FTP them this time but they said it will take 48 hours for a response. Our server that becomes unresponsive is a production server so waiting 48 hours is not possible. So, I am trying this Forum to see if anyone can help me. We are using RoboHelp 8. A few times a day, our help becomes unresponsive and we have to restart the TomCat service to get it responding again. Here are the errors that are in our log files when the server stops responding. Any help would be appreciated.
checking license
Copy link to clipboard
Copied
Hi, jw1726354 and welcome to the forums.
Here are several ideas:
Step #1
I don't know if you have already covered this, but you definitely need to increase your Java heap space to eliminate a common problem. Here's how:
If you bring up Tomcat6w.exe (located here on the server: "C:\Program Files\Apache Software Foundation\Tomcat 6.0\bin\tomcat6w.exe) you will see this dialog if you click on the Java tab.

First, Stop the Server. If you don’t see the circled text, then you can add it by clicking in the white space below the last –Djava line and type in –XX:MaxPermSize=512m . Then, type in 512 in the Maximum memory pool field. After making the changes, Restart the Tomcat Server.
Step #2 - Questions and offer to forward your log files directly
Thanks!
John Daigle
Adobe Certified RoboHelp and Captivate Instructor
www.showmethedemo.com
Copy link to clipboard
Copied
Hi jw1726354,
Besides the useful tips John has mentioned, you must try one more thing. Open your robohelp_server.properties file. It's located in "<RHS 8 InstallFolder>\WEB-INF" and change value of "reindex" property from "true" to "false". Then restart your Tomcat. I think that should resolve your issue.
Regards,
Tulika.
RoboHelp Server Team.
Copy link to clipboard
Copied
John/Tulika,
Thank you so much for your response.
I have had the "reindex" property set to false in the robohelp_server.properties file for quite a while now and that did not fix the problem
I have had the Initial Memory Pool and Max Memory Pool set to 256. That did not fix the problem.
I just changed it to only have the Max Memory pool set to 512. We'll see if that makes a difference.
When I tried to add the value -XX:MaxPermSize=512m, I was not able to restart Tomcat. The error in the Event Viewer said
The Apache Tomcat 6 service terminated with service-specific error 0 (0x0). That error does not tell me much : (
We have not tried switching to a SQL Server database but I think it might be our next step.
Are there any stats available regarding how much of a load the default Access database can handle?
Here are some of the answers to John's questions.
1. We have installed RoboHelp 8 on Windows Server 2003 SP1 (32 bit). We had SP2 installed but when we contacted Adobe support, they told me SP2 was not supported so we uninstalled it. Uninstalling SP2 did not fix our problem.
2. We are using Tomcat with IIS
3. We do have the option to install SQL Server Express. Any links to detailed instructions on how to do this would be helpful. I haven't seen any while reading the documention. I know it can be done, I just don't know how to do it properly.
4,5. I will send screenshots, logs, and our support Case # to John's private email.
Thanks again! We really appreciate the help.
Copy link to clipboard
Copied
Hi,
I checked the logs you sent to John. Actually your logs date back to 16th June and the only problem in your logs seem to be related to reindexing of external pdf files which are published with your project. So as per your logs, when you faced this issue on 16th June, you had "reindex" set to true.
Have you faced this issue after setting "reindex" to false and restarting server? If yes, then please share the logs from that day.
Thanks
Tulika.
Copy link to clipboard
Copied
Tulika,
Thanks for taking a loog at my logs. The logs are dated 6/16 because that is when I first contacted RoboHelp support after trying all suggestions I saw on this Forum including setting the reindex to false. I am not sure the exact date we set the "reindex" to false but it has been set that way for quite a while and it did not solve our problem. Our server is unresponsive at least twice a day requiring a restart of the Tomcat servce. Is there a way to send you the most recent logs?
Copy link to clipboard
Copied
Our server just stopped responding and I had to restart it. Before I restarted it, I looked at the logs and the stdout_20100630.log file had this error over and over again in the log file.
java.lang.NullPointerException
at adobe.robohelp.server.BrowserPool.getBrowser(BrowserPool.java:799)
at adobe.robohelp.server.ServerData.getBrowser(ServerData.java:311)
at adobe.robohelp.server.RoboHelpServer.doGet(RoboHelpServer.java:117)
at javax.servlet.http.HttpServlet.service(HttpServlet.java:617)
at javax.servlet.http.HttpServlet.service(HttpServlet.java:717)
at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:290)
at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206)
at org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:233)
at org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:191)
at org.apache.catalina.authenticator.AuthenticatorBase.invoke(AuthenticatorBase.java:465)
at org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:127)
at org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:102)
at org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:109)
at org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:298)
at org.apache.coyote.http11.Http11Processor.process(Http11Processor.java:852)
at org.apache.coyote.http11.Http11Protocol$Http11ConnectionHandler.process(Http11Protocol.java:588)
at org.apache.tomcat.util.net.JIoEndpoint$Worker.run(JIoEndpoint.java:489)
at java.lang.Thread.run(Unknown Source)
The localhost.2010-06-30.log file had this error over and over again.
Jun 30, 2010 10:27:02 AM org.apache.catalina.core.StandardWrapperValve invoke
SEVERE: Servlet.service() for servlet default threw exception
java.lang.NullPointerException
at adobe.robohelp.server.ErrorFilter.doFilter(ErrorFilter.java:37)
at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:235)
at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206)
at org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:233)
at org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:191)
at org.apache.catalina.authenticator.AuthenticatorBase.invoke(AuthenticatorBase.java:465)
at org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:127)
at org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:102)
at org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:109)
at org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:298)
at org.apache.coyote.http11.Http11Processor.process(Http11Processor.java:852)
at org.apache.coyote.http11.Http11Protocol$Http11ConnectionHandler.process(Http11Protocol.java:588)
at org.apache.tomcat.util.net.JIoEndpoint$Worker.run(JIoEndpoint.java:489)
at java.lang.Thread.run(Unknown Source)
Copy link to clipboard
Copied
Hi Jen,
Thanks for sharing the latest logs. I received a mail from John with your latest logs and setup details. As per those details, your server becomes unresponsive when CSH is called from your .NET C# application.
Now I can clearly see from your logs why that should be happening. Actually RHS looks for a header named "User-Agent" in the request it receives. This header is supposed to contain information about the platform(browser/environment) from which the request has been sent.
In case of your CSH calls from your application, this header is empty and hence server is not able to parse this information. I would suggest you set this header in the HTTP requests you send from your .NET C# application (you can even keep this empty but it should be there).
Do let me know if you face any issues.
Tulika.
Copy link to clipboard
Copied
Tulika,
I will try this but I am fairly confident it will not fix the problem because getting to Context Sensitive Help works fine. This has never been an issue. Just a couple of times a day, the server stops responding regardless of if we are trying to get to Context Sensitive Help or to different projects or even trying to login to the RoboHelp Admin page. How would we ever be able to set a User Agent to login to the admin page?
Copy link to clipboard
Copied
Hi Jen,
I can understand your concern here but that's the only error logged in the
logs. It could be when there are too many CSH requests without User-Agent
header, there are too many exceptions at server and that makes it
unresponsive even for requests through browser.
I hope heavy load is not an issue here because if that's the case we can
easily fix that using memory settings and increasing httpconnector in
Tomcat. By default Tomcat is configured to allow 250 http connections. This
is configurable in server.xml which is located in Tomcat's conf folder. You
can backup this file and then look for “Connector” tags in server.xml where
value of “protocol” attribute is "HTTP/1.1". If these tags don’t have
attribute maxThreads, add this attribute and set its value as 400. If the
attribute is already there, then increase it’s value.
Finally the tag should look like :
Connector protocol="HTTP/1.1" ….. maxThreads="400"..
This maxThreads attribute determines maximum number of concurrent http
sessions Tomcat can support so user should set it’s value as per expected
user load. But please note that this value cannot be set arbitrarily high
because it will also depend on number of threads your CPU can support.
Tulika.
Message was edited by: tuls.garg
Copy link to clipboard
Copied
OK that explanation makes more sense to me. I changed the max threads to 400. We have already deployed so I don't have a way of changing the user agent for those trying to get help from our application. Is there anything I can do on the server to fix this?
Copy link to clipboard
Copied
I thought I would update this in case anyone has similar problems. We have had our maxThreads property set to 500 for over a week now and our RoboHelp server still becomes unresponsive a few times a day. I created a test program that sets the useragent and this still causes the unresponsiveness. I have been working with Adobe support and they mentioned a memory leak in Tomcat but still don't have a solution for us. It has been about a month now without a resolution.
Get ready! An upgraded Adobe Community experience is coming in January.
Learn more