UPDATES.TXT This file contains a description of modifications made to CDB since its inception. Version 1.10 (released 08/19/90) ============ - Initial release. Version 1.11 (released 11/26/90) ============ - Fixed record sorting problem in DDLP.EXE. This could be a problem in any DDL definition. The symptoms are an E_NORECNAME code being returned after a DbRecordAdd call even though the record name exists in the DDL. Modified DDLP.C, DDLP.MAK, and DDLP.H. Version 1.12 (released 02/02/91) ============ - Problem with DbGetSetOwner call. The function was not being called properly. Modified DBMGR.C, DBGET.C, and DBXTRN.H. Version 1.13 (released 03/18/91) ============ - Sets can now be stored by a key field. The key can be any field in the member record. To implement this feature, no code changes are required, modification of the .DDL file is the only sufficient change needed. See the documentation for exact use. This feature will not work with existing data and key files. Version 1.14 (released 03/27/91) ============ - DDLP.EXE was searching for and end-of-file character (0x1A) in the .DDL file to trigger the file parsing termination. If an editor was used to create the .DDL file that did not store an end-of-file character, DDLP would get confused. DDLP would spit out "expecting 'struct' keyword" error messages. Modified MAIN.C. - If a .DDL file contained no connections (no use of 'connect' keyword), CDB would attempt to allocate space for 0 owners and 0 members when the database (.DBD) file was opened. This caused problems with the DbOpen call. Modified DBMGR.C and DBFUNCS.C. Version 1.15 (released 04/05/91) ============ - Internal key pages were modified to be non write-through. Before this modification, all CDB database calls would flush modified pages to disk before returning to the calling function. This change will greatly enhance the speed at which database records can be added, modified and deleted. To ensure that data is written to disk, call the DbFlush function. This function has been modified to write all 'dirty' pages to disk. - The 'cdb' function, a common entry point for all cdb calls, has been modified to be ANSI C compatible. This function takes a variable number of arguments. The argument list is now being retrieved via the 'va_start', 'va_arg' ANSI C function calls. Version 1.20 (released 05/20/91) ============ - CDB re-introduced as a commercial product. - Complete rework of CDB documentation. - Removed cdb macro functionality and added dbtalk.c C-API. Macros still exist in dbmgr.h but are #ifdef'd out. The new module provides a more standard API front-end. - Modified the DbOpen function parameters. The database directory is passed as a parameter. The programmer does not have to set the external "dbpath" string. - Modified the DbRecordGetCurrent function parameters. The field name of the record does not need to be passed. - Modified internal definition of dbflush function to db_flush. This does not affect applications level DbFlush calls.