IEEE Std 1003.1-2001 Interpretation #42

Copyright © 2006 IEEE. All rights reserved.

	Interpretation Number:	042
                    	Topic:			dbm_open implementation of database files
                      	Relevant Sections:	XSH  dbm_open 

------------------------------------------------------------------------

7 Defect Report concerning (number and title of International Standard or DIS final text, if applicable):

The System Interfaces Volume of IEEE Std 1003.1-2001

------------------------------------------------------------------------

8 Qualifier (e.g. error, omission, clarification required):

1. Error

------------------------------------------------------------------------

9 References in document (e.g. page, clause, figure, and/or table numbers):

Page: 0 Line: 0 Section: dbm_open

XSHbug2.txt Enhancement Request Number 62

------------------------------------------------------------------------

10 Nature of defect (complete, concise explanation of the perceived problem):

Refererence: http://www.opengroup.org/onlinepubs/007908799/xsh/dbm_clearerr.html

The standard continues to state:

"The database is stored in two files. One file is a directory containing a bit map of keys and has .dir as its suffix. The second file contains all data and has .pag as its suffix."

Implementations of the Berkeley DB interface have evolved while remaining db(3) compatible. Different implementations use different on-disk formats and naming conventions which should not be a part of the standard, the API defines the standard and always has.

------------------------------------------------------------------------

11 Solution proposed by the submitter (optional):

Reference: http://www.opengroup.org/onlinepubs/007908799/xsh/dbm_clearerr.html

The following wording should be removed from the standard.

"The database is stored in two files. One file is a directory containing a bit map of keys and has .dir as its suffix. The second file contains all data and has .pag as its suffix."

"The function opens two files named file.dir and file.pag."

------------------------------------------------------------------------

Interpretation response ------------------------ The standards states the requirements for the dbm_* functions and their database implementation, and conforming implementations must conform to this. However, concerns have been raised about this which are being referred to the sponsor. Rationale: ----------- The current standard describes a specific implementation for storage of a database excluding common existing practise which has evolved yet remained compatible at the application programming interface.

Back to IEEE Standards Interpretations for IEEE Std 1003.1-2001