1<!--"$Id: 2.7.4.html,v 1.4 2007/05/17 18:17:18 bostic Exp $ (Sleepycat) $Date: 2007/05/17 18:17:18 $"--> 2<html> 3<head> 4<title>The Berkeley DB Package: DB 2.7.4 Change Log</title> 5<meta name="description" content="Berkeley DB: A database programmatic toolkit."> 6<meta name="keywords" content="embedded,database,programmatic,toolkit,b+tree,btree,hash,hashing,transaction,transactions,locking,logging,access method,access methods"> 7</head> 8<body bgcolor=white> 9 10<h3 align=center>Berkeley DB 2.7.4 Change Log</h3> 11 12Berkeley DB version 2.7.4 is version 2.7.3 with a set of specific bug 13fixes applied. There were no interface changes or new features. 14 15<h3>Bug Fixes:</h3> 16<ol> 17 18<p><li> 19When looking for an already open log file, do not examine a filename 20structure if its reference count is 0. This problem cannot cause data 21corruption, but may cause program failure. 22 23<p><li> 24Berkeley DB recovery assumes that there are at least two checkpoints. It 25was possible for log archival to leave the recovery area with only a single 26checkpoint. 27 28<p><li> 29Version 2.7.3 could not recover version 2.4.14 log files. 30 31<p><li> 32Database file opens after recovery could sometimes fail. 33 34<p><li> 35If only a single checkpoint is found, perform recovery from the beginning 36of the log. 37 38<p><li> 39The Btree access method delete-by-key code path did not always detect that 40a key/data pair was also referenced by a cursor, which could cause a cursor 41to reference incorrect data. 42 43<p><li> 44Concurrent Data Store operations could sometimes fail because write 45cursors were not correctly identified. 46 47<p><li> 48The DB_SET_RANGE flag did not always correctly deal with on-page deleted 49records in the Btree access method. 50 51<p><li> 52If the buffer cache was completely dirty, transaction checkpoints could 53pin down too many buffers and cause other operations to fail. 54 55<p><li> 56In non-threaded applications, change cursors to share a locker ID in 57order to avoid self-deadlocks. 58 59<p><li> 60In the Btree access method, when creating a new record and specifying a 61<b>dbt.off</b> offset value, the DB_DBT_PARTIAL flag was not handled 62correctly. 63 64<p><li> 65It was possible for the last-known-LSN-on-disk to not be set correctly 66during recovery, which could cause the loss of recovery's checkpoint 67record. 68 69<p><li> 70Test suite change: generate fail message if environment open doesn't work. 71 72<p><li> 73Defend against the possibility that records from multiple log files are 74present in the log buffer cache. 75 76<p><li> 77Reclaim lockers when using lock_vec to release locks. 78 79<p><li> 80Re-order subsystem close when closing the environment so that the logging 81subsystem can potentially flush buffers through the shared memory buffer 82pool. 83 84<p><li> 85Never attempt to grow the shared regions when initially connecting to the 86Berkeley DB environment. 87 88<p><li> 89Invalidate the local transaction structure after commit, abort or prepare, 90as the XA transaction manager does not call xa_end on commit, abort or 91prepare. 92 93<p><li> 94Allow either join or resume operations on XA start. 95 96<p><li> 97Update the version numbers from Berkeley DB 2.7.3 to Berkeley DB 2.7.4. 98 99</ol> 100 101</body> 102</html> 103