6 Troubleshooting Oracle WebLogic Server Proxy Plug-In Implementations
You might encounter some problems when using the Oracle WebLogic Server Proxy Plug-in. Descriptions of how to solve these problems are provided.
This chapter includes the following topics:
- Oracle WebLogic Server Session Issues
The Oracle WebLogic Server Proxy Plug-in routes the requests to backend Oracle WebLogic Server or cluster. Oracle WebLogic Server maintains sessions so that subsequent requests from the same client are routed to the same server. - CONNECTION_REFUSED Errors
Occasionally, under stress conditions, a few requests might fail with the error logged in the error log file. - NO_RESOURCES Errors
Occasionally, under stress conditions, a few requests might fail with the error logged in the error log file. - POST Data Files Issues
The/tmp/_wl_proxy
is a fixed directory and is owned by the HTTP Server user. When there are multiple HTTP Servers installed by different users, some HTTP Servers might not be able to write to this directory. This condition results in an error.
Oracle WebLogic Server Session Issues
- If the request is routed to a single Oracle WebLogic Server instance, the Oracle
WebLogic Server Proxy Plug-in continues trying to connect to that same Oracle
WebLogic Server instance for the maximum number of retries as specified by the ratio
of
ConnectTimeoutSecs
andConnectRetrySecs
. If all attempts fail, an HTTP 503 error message is returned back to the client. - If the request is routed to the WebLogic cluster, the current Oracle WebLogic Server is marked as bad, and the request is routed to the next available Oracle Weblogic Server. If all attempts fail, an HTTP 503 error message is returned back to the client.
In addition to sending a HTTP 503 error message, the following is displayed as a response in the HTTP client:
Failure of Web Server bridge: No backend server available for connection: timed out after xx seconds or idempotent set to OFF or method not idempotent.
CONNECTION_REFUSED Errors
Occasionally, under stress conditions, a few requests might fail with the error logged in the error log file.
The following error is logged in the log file:
weblogic: Trying GET /uri at backend host 'xx.xx.xx.xx/port; got exception 'CONNECTION_REFUSED [os error=xxx, line xxxx of URL.cpp]: apr_socket_connect call failed with error=xxx, host=xx.xx.xx.xx, port=xxxx'
As mentioned in Tips for Reducing CONNECTION_REFUSED Errors, Oracle WebLogic Server might have reached the maximum allowed backlog connections.
To resolve, follow the steps mentioned in Tips for Reducing CONNECTION_REFUSED Errors.
NO_RESOURCES Errors
Occasionally, under stress conditions, a few requests might fail with the error logged in the error log file.
The following error is logged in the log file:
weblogic: *******Exception type [NO_RESOURCES] (apr_socket_connect call failed with error=70007, host=xx.xx.xx.xx, port=xxxx) raised at line xxxx of URL.cpp
This usually occurs if Oracle WebLogic Server is too busy to respond to the connect
request from the Oracle WebLogic Server Proxy Plug-in. This can be resolved by setting
WLSocketTimeoutSecs
to a higher value. This allows the Oracle
WebLogic Server Proxy Plug-in to wait longer for the connect request to be responded to
by the Oracle WebLogic Server.
POST Data Files Issues
/tmp/_wl_proxy
for UNIX. For Windows it is located as follows (if WLTempDir
is not
specified):
- Environment variable
TMP
- Environment variable
TEMP
C:\Temp
/tmp/_wl_proxy
is a fixed directory and is
owned by the HTTP Server user. When there are multiple HTTP Servers installed by
different users, some HTTP Servers might not be able to write to this directory. This
condition results in an error.
To correct this condition, use the WLTempDir
parameter
to specify a different location for the _wl_proxy
directory for
POST data files.