Usually around the same time every afternoon, 1 or 2 of our users get disconnected from Progress/Symix without any error messages or warning. Progress/Symix just locks up and they have to reboot. Not always, but sometimes I have to stop then start Procontrol for them to be able to get back into Symix.
This seems to only happen to Windows ME clients.
Perhaps it is not your issue but check out if your db startup parameters:
match. They are meaningful for a remote client (visible in PROMON as REMC and using TCP layer), not for SELF-SERVICE type. The following rule must be fulfilled:
-n > -Mn * -Ma
-Ma means the max number of the connections served by a single _mprosrv process. -Mn limits the max number of _mprosrv processes which can be started by a dabatase broker. -n limits the max number of the concurrent connections with a database, including all processes, not only remote clients.
By the way: Progress Explorer Tool seems to be more comfortable and up-to-date, than Procontrol. Have you tried it?
So it may cause your problem. Your current parameters do not fit each with other, because -n < -Mn * -Ma, so it is possible source of the problem (however the problem can be different).
You are using ODBC driver which connents your application with Progress SQL-92 compliant db engine. If your exact Progress version is earlier than 9.1D06 (or 91.D05? - I don't remember accurate enough) rhe only possible set of db startup parameters is the following:
as SQL-92 engine in this version does not support multi-threated server processes. Starting from version 9.1D06 (the latest service pack for Progress 9.1D is 9.1D09) you can configure your database server in the following way:
if your db server machine has a fast processor and enough memory. In this way you can limit the max number of remote connestions to 2 * 8 = 16. When the less number of the server processes (in this case maximum 2) services remote clients they can connect to a database faster (there is no need to start then new process for each connection as in the first example). Less database processes, less competition for server resources.
If your machine is weaker you can apply another set of parameters:
Sorry, I haven't put parameter values for Progress version earlier than 9.1D06. Here they are:
-Ma 1 # SQL-92 server process is single-threated
They should be placed in your *.pf file which is the parameter for proserve command (this command starts up a database).
Just to make sure I have this correct. Let's say I have 15 users, and each of those users also connect to 2 odbc databases. Would the -n equal 45 (( 2 database instances and one progress instance each) * 15 users)?
Then would -Mn equal 45 since -Ma equals 1?
The parameters we discussed refer to a single Progress database. I think you should apply the same set of these parameters to each of your databases.
You start your databases in the following way:
The file symix2.pf has the same content except -db parameter which points on the second database (let's say <pathToDB2> for example). That's the first solution. Another possibility is to have a single symix.pf file (for both of your databases) with the following contents (without -db parameter):
I am only using one database, and the users can connect to this same database via odbc to run reports in Microsoft Access.
If that makes sense.
That's why I thought maybe -n would equal 45.
Thanks a lot for your time on this.