Consultor Eletrônico



Kbase 21046: Why Are Two File Handles Open For Variable Data Extents
Autor   Progress Software Corporation - Progress
Acesso   Público
Publicação   30/03/2010
Status: Unverified

GOAL:

Why Are Two File Handles Open For Variable Data Extents

GOAL:

Why Are Two File Handles Open For Variable Data Extents On HP in R/W Mode?

GOAL:

Why the BI variable extents and the fixed data and ai extents have only one open file handle in r/w mode?

FACT(s) (Environment):

UNIX
Linux
Progress 9.x
OpenEdge 10.x

FIX:

If the -directio option is not used, Progress opens the database for normal buffered I/O.
However, when expanding files to allocate more space, Progress needs to use synchronous I/O. This requires opening all the variable extents twice, once for normal I/O and once for O_SYNC.
An alternative would have been to use one file descriptor and flipping the mode back and forth as needed. This, however, is not efficient. All the files are opened at once in order to avoid running out of file handles later on when updating a record.