OpenEdge Progress Database - Front End

Dan101

New Member
Hi,

I am using a Progress database in which when system problems occur a "Pro Shut" has to be performed. This task is completed by getting to a CMD prompt, connecting one of 4 databases in question and closing Disconnecting the session ID. 4 Databases, over 100 users... can be alot of work.

Is there some application or something written which is available which can either automate this or provide a GUI front end to simply perform the disconnect tasks quicker?

Hope I have made some sense.....

I have enclosed the steps I would do for an example....

cd dynbd
proshut dynbd
1 - Press one to disconnect session
** - Enter in session ID to kill processs
X - Exit

Same needs to be done over and over for each client, with the possible task of Cd'ing to 3 other DB's....

Cheers !!!!!!
 

TomBascom

Curmudgeon
If you just want to shutdown the whole db use:

proshut -by dynbd

Or use the "unconditional shutdown" option from the ordinary proshut menu.
 

Dan101

New Member
Also, I am looking for an easy way from time to time to "kill" off the odd session, so a whole database stop would be bad.

It maybe something I simply can't do but it's worth an ask... ;o)
 

TomBascom

Curmudgeon
-by shuts it down without waiting.

If you just want to occasionally kill a session you already have that method. proshut and the menus are easy enough for the occasional kill.

You could, of course, get fancy and script it. But why bother for one or two?
 

Dan101

New Member
The situation we have is the following:, we have say 10 Citrix servers which hold around 20-25 connections each. If "A" citrix server goes offline or BSOD's, then all the clients connected to the Openedge Database would need a PROSHUT, this being of course around 20-25. Doing all these proshuts can take some time as we have 4-5 databases to connect to for each process.

So that was why i was looking for some fancy script or way of say entering in the session number ID's I needed closing and then letting it do it automatically.

It might not be able to do however any help would be great.

Cheers
Dan
 

TomBascom

Curmudgeon
From a scripting perspective the problem is getting the list of userids to feed to:

proshut dbname -C disconnect <usernum>

If you know of a way to generate that list the rest is easy. I don't know squat about Citrix (and I'm happy to keep it that way) so I don't have any clever suggestions about that. Although, if I had to, I think I'd probably take a look at the _Connect VST to see if there is anything useful in there, like a common IP address for the "device" field that might readily identify users on a particular Citrix server.
 
If you have a client that is disconnect due to a network error such as a Citrix server going down, but is not disconnected by the database server, this is due to tcp keep-alive being set at a high value (7,200,000 milliseconds or 2 hours by default on Windows server). If you set the \HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Tcpip\Parameters\KeepAliveTime on the database server to a small number say 5 minutes the Progress broker will clean up the defunct clients automatically when that interval is exceeded.
 
Top