Kbase P100977: Why are _progres processes still left running after the database is shut down?
Autor |
  Progress Software Corporation - Progress |
Acesso |
  Público |
Publicação |
  03/11/2008 |
|
Status: Verified
GOAL:
Why are _progres processes still left running after the database is shut down?
GOAL:
Why are prowin32 processes still in Task Manager when the database has been shut down?
GOAL:
Why are _progres processes seen in ps -ef when the database has been proshut?
FACT(s) (Environment):
All Supported Operating Systems
Progress/OpenEdge Product Family
FIX:
In a case such as this:
When issuing a: "proshut dbname -by" (with or without the "-F")
A database.lg file will for example show: user sessions being logged out before the final "Multi-user session end. (334)"
So, why are the _progres / prowin32 processes still visible on the server machine afterwards?
The "proshut" executable disconnects a process from the database, it does not destroy/remove this process from memory if it is still active.
SO, for example: IF the user is using a TELNET session to connect to the application, the _progres is still left in memory if the TELNET session was still running when the proshut was issued. When the connected user next tries to access the database which is no longer running, they will get a client-message:
<program.r> Database <dbname> not connected. (1006)
Press space bar to continue.
When the database is then re-started, /if/ the application allows for RECONNECT, then these client sessions will reconnect again. Otherwise, users will find that they have to logoff or terminate thier session with Pressing "control-C" and log back into the application to connect to the new instance of the database (once started) before they can continue their work.
If these open sessions absolutely need to be destroyed from the server-side, issue a kill -9 on all _progres, or ENDTASK on all _prowin32 processes AFTER the proshut has completed and before the database is re-started.