Consultor Eletrônico



Kbase P96635: Appserver stuck in a Locked state when using AIA
Autor   Progress Software Corporation - Progress
Acesso   Público
Publicação   12/21/2004
Status: Unverified

FACT(s) (Environment):

Progress 9.1B
Progress 9.1C
Progress 9.1D
OpenEdge 10.x

SYMPTOM(s):

The AppServer is stuck in Locked state

AppServers in Locked state are not released until the AIA timeout is exceeded

Using WebClient application with the AppServer Internet Adapter

Problem occurs when clients leave application idle or experience a network hiccup

CAUSE:

The Appserver Internet Adapter will not disconnect an idle or abruptly terminated Client until it has been inactive the amount of time specified by the IdleConnectionTimeout parameter in the ubroker.properties file.

The AppServer Internet Adapter is the AppServer's client and not the Client application. AIA will check if it received any requests after the idle time has expired, and closes the connection if none was received. The client is connecting to the AIA through the web server, and after the request is fulfilled AIA does not know where the client came from. There is no direct connection between the client and the AIA the communicate is thorough the Web Server.


FIX:

Decrease AIA's idleConnectionTimeOut parameter in the ubroker.properties file.

AIA will close the connection to the Appserver after the idle time has expired, and no request was received from the client. The Timeout vale in seconds between an AppServer client and an AIA instance. If a connection is idle for more than the specified timeout value, then the AIA instance will terminate the connection by automatically disconnecting the connection from the AppServer.


Syntax> idleConnectionTimeout=3600
Because the HTTP protocol is connectionless, you cannot use the termination of the connection with the AppServer client as an indication that the AppServer client's connection to the AppServer should be terminated. Due to failures at the client site, as well as the network between the client site and the Web server, it is possible that an AppServer client could connect to an AppServer and never gracefully disconnect. To guard against the possibility of an AIA instance maintaining orphaned connections, you can use the idleConnectionTimeout property in the ubroker.properties file to configure an AIA instance to automatically terminate the connection if a connection is idle for more than the specified time.