Consultor Eletrônico



Kbase P3222: What happens during proshut -by and proshut -F?
Autor   Progress Software Corporation - Progress
Acesso   Público
Publicação   15/10/2008
Status: Verified

GOAL:

What happens during proshut -by and proshut -F?

GOAL:

What does proshut -by and proshut -F do during the shutdown process?

GOAL:

What happens during an emergency shutdown?

FACT(s) (Environment):

UNIX

FIX:

Before doing a Progress backup of a database you may want to issue an emergency batch shutdown of the database in order to ensure that all processes attached to
it are killed, and that shared-memory segments, semaphores and .lk files are
deleted.

An emergency shutdown can also be initiated in situations where the proshut command seems to be hanging.

This is what happens when you do an unconditional batch shutdown -by:

If there are any processes left after:
30 Secs. - wake up clients waiting for locks.
60 Secs. - wake up clients waiting for locks.
90 Secs. - wake up clients waiting on screen input.
5 Minutes - Resend the shutdown signal to remaining clients.
10 Minutes - Send a terminate (SIGTERM) signal to remaining clients.

If you do an Emergency Shutdown with -by -F, then proshut:

- sets the emergency shutdown flag in shared memory.
- kills the broker (kill -9).
- sends the shutdown signal to all connected processes and waits 10 seconds.
- kills all remaining clients (kill -9).
- removes shared memory, marks the database as crashed, and removes the dbname.lk file.

Progress performs normal crash recovery when you restart your database after the emergency shutdown and backs out any active transactions.

Note that the -F option in proshut is entirely different from the -F option in other modules. -F used with e.g truncate bi causes crash recovery to be skipped and this will cause damage to the database.