Consultor Eletrônico



Kbase P120613: _Lock record is not found when database server has -L higher than 74704
Autor   Progress Software Corporation - Progress
Acesso   Público
Publicação   05/11/2009
Status: Verified

SYMPTOM(s):

Database server is started using -L higher than 74704

_Lock record is not found using a FOR EACH statement

_UserLock record is not found using a FOR EACH statement

Query returns all fields assigned the unknown value '?'

The record is found when the database server is started with -L lower than 74704

Problem does not occur when using earlier OpenEdge versions

Record Locking table in promon is updated appropriately.

FACT(s) (Environment):

OpenEdge 10.1A02
OpenEdge 10.1A
OpenEdge 10.1B
All Supported Operating Systems

CAUSE:

Bug# OE00146462

CAUSE:

The _Lock table is not populated when the database has a -L > 74704. This issue that was introduced in OpenEdge 10.1A02 on the database side as a result of another change to the dynamic startup parameter -lkhash which was increased to 42,007,723 in support of large buffer pool values. This unfortunately affects large -L values (above 74704).

FIX:

Upgrade to OpenEdge 10.1B01 or later release where this issue has been addressed

The following workarounds are available:
- Start the database up with a version of OpenEdge prior to 10.1A02
- Start the database up with a value for the parameter -L lower than 74704
- Use promon instead of the _Lock table to monitor lock activity