getOutputStream() already called for this response
search cancel

getOutputStream() already called for this response

book

Article ID: 219881

calendar_today

Updated On:

Products

CA Service Operations Insight (SOI)

Issue/Introduction

 
 

After upgrading SOI to SO15850 / CU1, there are a lot of the following entries in the soi-mgr_wrapper.log:
getOutputStream() has already been called for this response
 
A similar error is written to the soimgr.log:
INFO  [http-bio-0.0.0.0-7493-exec-38] ?.?(?)  - org.apache.catalina.connector.ClientAbortException: javax.net.ssl.SSLException: Connection has been shutdown: javax.net.ssl.SSLException: java.net.SocketException: Software caused connection abort: socket write error
ERROR [http-bio-0.0.0.0-7493-exec-38] logging.DirectJDKLog.log(175)  - Servlet.service() for servlet [jsp] threw exception
java.lang.IllegalStateException: getOutputStream() has already been called for this response
 
 

Environment

Release : 4.2

Component : SOI ALERT MANAGEMENT

Cause

 
 

This was determined to be an issue with cache data in Tomcat instances

These cache files in \work\Catalina\localhost folder get created every time on Manager or UI server startup.

These files are generated by Tomcat(Third party API) while deploying any web application and it will not be possible to analyze them.

As the Tomcat startup progresses, Tomcat converts all jsp files into Java classes in \work\Catalina\localhost folder.

Sometimes Tomcat does not recognize the jsp file change and keeps the same old file in the cache.


Usually there is no need to delete content from \work\Catalina\localhost folder but better to delete it after patch upgrade or any jsp file change.

Having this step as part of SOI startup process does not cause any harm because Tomcat will create these files again on startup as a mandatory step.

Resolution

 
 

This is the procedure provided to clear the cache.

1) Stop all SOI Services. Including all connectors 
2) Stop all UI Servers in distributed environment(attached to this Manager)
3) Delete following all logs from Manager machine:
     CA\SOI\jsw\logs
     CA\SOI\tomcat\logs
     CA\SOI\tomcat\temp
4) Take backup of the following folders outside the current folder and delete complete folders from UI Server and Manager
     CA\SOI\tomcat\work\Catalina\localhost
     CA\SOI\SamUI\work\Catalina\localhost
5) Start only "CA SOI MQ Server" and "CA SOI Application Server" services first
6) Open Manager debug page and wait till Triage test shows status PASSED and Completed
7) Start All other services one by one on Manager machine first
8) Start UI Server service and connectors one by one

 

Note: Step 3 mentions clearing the logs if the problem persists so only required to have a new set of logs to send to support.