English

FAQ: What can cause a request to create an empty context to time out?

Question

What can cause a request to create an empty context to time out?

Answer

This question is related to an advanced programming technique with ArcGIS Server. When programing ArcGIS Server an empty context can be created which is not associated with a service. ArcObjects can then be run in the server.

A context creation request can time out. Below are four situations in which this might occur:

(1) When creating several server contexts in a short period of time, it is possible that the request for an empty server context is being queued and not handled in time. The time limit is defined by the WaitTimeout set for that service.

(2) Empty contexts can number in the thousands. The maximum is not normally reached, but if the custom code does not release the context when finished and many requests were sent in a short period of time, then the empty contexts would accumulate. ArcGIS Server cleans up empty contexts that are not released after 600 seconds. This time limit can be modified via EngineContextTimeout setting in <install location>\server\system\Server.dat

(3) It is possible that all resources are exhausted (disk space or RAM) and that the Server Object Container (SOC) is waiting for available resources. Another example is on Linux or Solaris where the set limit of file handles is exceeded. To determine if a system resource such as memory, disk space, handles is being exceeded; please consult a system administrator.

(4) Once the maximum capacity of service instances on the Host Machines is reached, any request for empty server context creation is queued and can therefore time out if not handled with the WaitTimeout period.