Troubleshooting
Problem
The HTTP/TCP Proxy from the IBM Rational Integration Tester Platform Pack goes unresponsive when receiving a request that points to itself
Symptom
- The Proxy process consumes a lot of CPU resource and memory.
- The Proxy no longer routes messages correctly.
- The Proxy console contains many lines similar to the following:
[pool-1-thread-6480] DEBUG com.predic8.membrane.core.transport.http.HttpClient
- try # 0 to http://<proxy hostname or IP address>:3128/
[pool-1-thread-6531] ERROR com.predic8.membrane.core.transport.http.HttpServerThread - problem closing HTTP Client
com.predic8.membrane.core.util.EndOfStreamException: read byte -1:
[pool-1-thread-6453] ERROR com.predic8.membrane.core.transport.http.HttpServerThread - problem closing HTTP Client
java.net.SocketException: Socket is closed
Cause
A client connection has attempted to request a URL that resolves to the Proxy. This causes the Proxy to get into an infinite loop passing the message back to itself.
For example, the Proxy is running on host myHost with port 3128.
An HTTP client is using myHost:3128 as the destination when it should be configured with proxy settings of myHost and 3128.
Diagnosing The Problem
- Run the Proxy on the command line to view its error output.
a) Stop the Windows service IBM RIT HTTP Proxy or the non-Windows process.
b) Open a command window in the Proxy installation folder.
On Windows system typically: C:\Program Files\IBM\RIT-Platform\httptcp
On non-Windows systems typically: /opt/ibm/RIT-Platfrom/httptcp
c) Run: startup
d) Redirect output to a file for later examination.
Run: startup > myFile.log 2>&1
Resolving The Problem
Re-start the Proxy and reconfigure the client application to not send requests with the Proxy host and port number as the destination.
The log file produced by the Proxy does not contain the source of the incorrect request.
Was this topic helpful?
Document Information
Modified date:
29 September 2018
UID
swg21659528