Consultor Eletrônico



Kbase P164137: When running more than 5 asynchronous AppServer requests, some fail with errors
Autor   Progress Software Corporation - Progress
Acesso   Público
Publicação   2/25/2011
Status: Verified

SYMPTOM(s):

When running more than 5 asynchronous AppServer requests, some fail with errors

When running large number of asynchronous AppServer requests, some fail with errors

Number of asynchronous requests run at the same time is larger than maximum number of available AppServer agents

ERROR: No servers available. (8089)

No Servers Available (8420)

FACT(s) (Environment):

State-free AppServer
Client connects with -session-model session-free
OpenEdge 10.x
All Supported Operating Systems
15 Appservers are launched.

CAUSE:

When using the session-free model, a single logical AppServer connection represents a connection pool to be able to use multiple agents at the same time. Effectively, the maximum number of connections in pool is maximum number of agents a client will try to occupy simultaneously.

By default, the maximum number of connections in the connection pool is "unlimited", ie. limited by machine resources, not by the AppServer client.
If enough requests are made in a short enough time, the agents can't finish fast enough and the client will try to use more agents than there are available. At this point errors start occuring.
How frequently this happens will depend on how long it takes to complete the requests - longer requests, slower network connections etc. will mean this happens more frequently.

FIX:

Specify -maxConnections in the AppServer connect string with a non-zero value. This will limit the number of physical connections a client uses, and will avoid a single client overloading the AppServer.