The NS error log is filled with errors connecting to the database during event processing and client configuration request processing. The exception type is Altiris.NS.Exceptions.DatabaseNotReadyException and the error message includes the following detail:
Timeout expired. The timeout period elapsed prior to obtaining a connection from the pool. This may
have occurred because all pooled connections were in use and max pool size was reached
A sample of the error data generated during a client configuration request is below:
Unable to get the client policies for specified resource (Resource: {00000000-0000-0000-0000-000000000000}, Exception: Altiris.NS.Exceptions.DatabaseNotReadyException: Failed to construct DatabaseContext object. Connection to database failed. ---> Altiris.NS.Exceptions.AeXException: Failed to open database connection. Current user is DOMAIN\USER. Error: Timeout expired. The timeout period elapsed prior to obtaining a connection from the pool. This may have occurred because all pooled connections were in use and max pool size was reached. ---> System.InvalidOperationException: Timeout expired. The timeout period elapsed prior to obtaining a connection from the pool. This may have occurred because all pooled connections were in use and max pool size was reached.
If the Altiris NS Configurator is not installed
Open directory C:\Program Files\Altiris\Notification Server\Config (default install).
Additional Info
The CoreSettings.config value for MaxConcurrentConfigRequests should only be increased if careful monitoring of the NS and Altiris Agents shows that doing so increases performance. Increases should be done in small increments and the goal is find a balance between the maximum number of clients that can ask for a configuration request without negatively impacting all other processing.
NS 6.0 SP2 shipped with a default MaxConcurrentConfigRequests value of 50 and that proved to be too high for most large enterprise environments1. Testing internally within Altiris and in conjunction with several customers showed that NS performs much better when MaxConcurrentConfigRequests was set to a value lower than 30. NS 6.0 SP3 took this a step further by shipped with a default value of 10 and adding a new CoreSettings.config setting name MaxConcurrentPackageInfoRequests, also with a default of 10. Prior to SP3, MaxConcurrentConfigRequests was the ceiling for both configuration requests (GetClientPolicy) and package info requests (GetPackageInfo) taken as a whole.
Applies To
NS 6.0