Consultor Eletrônico



Kbase P98843: What is an ICB?
Autor   Progress Software Corporation - Progress
Acesso   Público
Publicação   12/11/2008
Status: Unverified

GOAL:

What is an ICB?

GOAL:

What is an Index Cursor Buffer?

FACT(s) (Environment):

All Supported Operating Systems
Progress/OpenEdge Product Family

FIX:

"icb" is an abbreviation for "in-core buffer" ie a record buffer in the 4GL/ABL client.
It is used for locking records. The locking occurs at the ICB level.
In a situation where you do.
FIND FIRST CUSTOMER EXCLUSIVE-LOCK.
The ICB upgraded the record to exclusive-lock.
When the transaction ended, the ICB downgrades the record to share-lock.
When the record scope ends, the ICB breaks the connection with the customer record-buffer, but since the ICB for the record is still active, it leaves the record SHARE locked.
The database contains one instance of a record and locks are applied to that. In the 4GL runtime, there is a copy of the record in the Internal Cursor Buffer.
The ICB is filled when a record is fetched from the database or when one is created in the application.
The 4GL program's buffers point to an ICB, but more than one buffer can point to the same ICB when they refer to the same record.
See also the -brl Startup Parameter on how to modify this behavior.
See also Solution P98844 , "What is an IC?"