Consultor Eletrônico



Kbase 20525: Database Connection Failure, Errors 1132 and 551 in the .lg File
Autor   Progress Software Corporation - Progress
Acesso   Público
Publicação   10/15/2008
Status: Verified

SYMPTOM(s):

Database connection failure.

Invalid semaphore id (1132)

SYSTEM ERROR: unable to acc/cr semaphore set db:ch, errno <22>. (551)

Warning: only (num) wait semaphores are available. (1093)

** Server rejected login. (700)

The server or the system has no more resources. Try a larger -n. (748)

The client just dies away without an error message when a GUI client attempts to connect to a remote database at startup (prowin32.exe) OR:

A CONNECT attempt to a database from a remote GUI client, fails with no error messages.

In both cases errors 1132 and 551 will show up in the database log file:

CAUSE:

These scenarios are a symptom that the database server was started without enough semaphores available to accommodate the maximum number of users (-n). When not enough semaphores are available, the following message appears as the server starts:

BROKER : Warning: only <n> wait semaphores are available. (1093)

This is just a warning and the database server is started.

NOTE: Error 1093 is not logged in the database log file. Currently, the only way to double-check whether the server was started short of the number of necessary semaphores is to actually shut down the database, restart it, and look for a
recurrence of the Error 1093.

Under these circumstances, from within the GUI client:

- If the connection is attempted at startup (prowin32.exe), the client just dies away with no error messages.

- If the connection is attempted via the CONNECT statement (without) the NO-ERROR clause, a STOP condition is raised and no error message is reported.

- If the connection is attempted via the CONNECT statement (with) the NO-ERROR clause, a STOP condition is raised and messages 748 and 700 appear:

The server or the system has no more resources. Try a larger -n. (748)
** Server rejected login. (700)

When the database connection attempt is done from a UNIX client or from the Windows Character Client, messages 748 and 700 appear.

NOTE: CONNECT raises the STOP condition and this is inconsistent with other with other connection failures from the 4GL (an ERROR condition should be raised instead).

FIX:

Tune the semaphore-related parameters in the UNIX kernel according to P4741, "Calculating SEMMSL, SEMMNS and SEMMNU".