1<!--$Id: 3.1.17.html,v 1.4 2007/05/17 18:17:18 bostic Exp $-->
2<html>
3<head>
4<title>The Berkeley DB Package: DB 3.1.17 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 3.1.17 Change Log</h3>
11
12<h3>Database On-Disk Format Changes:</h3>
13
14<blockquote>None.</blockquote>
15
16<h3>Major New Features:</h3>
17
18<blockquote>None.</blockquote>
19
20<h3>Interface Additions and Changes:</h3>
21<ol>
22
23<li>The documentation for DB-&gt;set_feedback stated that the third
24argument to the callback function is "the percent of the operation
25remaining to be completed, specified as an integer value between 0 and
26100", implying that it's a countdown from 100 to 0.  The actual
27implementation was to count upward from 0 to 100.  The documentation
28has been changed to match the code. [#2310]
29
30</ol>
31<h3>General Environment Changes:</h3>
32<ol>
33
34<li>Fix a bug where attempts to remove a region never returned. [#2379]
35<li>Fix a typo in the freeing of the shared log region. [#2379]
36<li>Remove the requirement that all threads of control using System V
37shared memory for regions specify the base segment ID [#2379]
38<li>Fix a bug where applications using different sets of regions in an
39environment would fail when using System V shared memory for the regions.
40[#2379]
41<li>Fix a bug where the DB_USE_ENVIRON_ROOT flag was incorrectly tested,
42using the environment for processes without sufficient privilege. [#2400]
43<li>Fix a bug where the error prefix was ignored by the Db handle method
44error calls. [#2484]
45<li>Fix a bug where the db_archive utility could create an environment
46that would cause applications or other Berkeley DB utilities to fail.  [#2524]
47
48</ol>
49<h3>General Access Method Changes:</h3>
50<ol>
51
52<li>Fix a memory leak in the DB-&gt;verify method. [#2347]
53<li>Fix memory leaks in DB-&gt;rename and DB-&gt;remove method
54recovery [#2363]
55<li>Fix a bug in the DB-&gt;verify method where 64K pages with large
56offsets were incorrectly verified. [#2408]
57<li>Fix a bug where data strings containing % characters could be
58corrupted by the DB-&gt;verify method. [#2427]
59<li>Fix a bug where the DB_TRUNCATE flag could trigger a program error
60if the database type was not specified. [#2423]
61<li>Fix a bug in the Concurrent Data Store product where operations
62could result in application hang or segmentation fault. [#2493]
63
64</ol>
65<h3>Btree Access Method Changes:</h3>
66<ol>
67
68<li>Fix a bug where uninitialized parts of a database page could be read
69and an incorrect record count returned.  [#2250]
70<li>Fix a bug where reverse splits could corrupt a page under rare
71conditions. [#2362]
72<li>Fix a bug where cursors in the parent of a nested transaction could
73be incorrectly adjusted after a child transaction was aborted. [#2373]
74<li>Fix a bug where threads could race when updating a tree. [#2402]
75<li>Fix a bug where a lock was leaked by the DB-&gt;stat method. [#2418]
76<li>Fix a bug where DB-&gt;put could fail when the data matched a
77duplicate data item previously deleted using a still-open cursor. [#2451]
78<li>Fix a bug where one abort path after a page allocation could leak
79the page. [#2455]
80<li>Fix a bug where recovering the operation of moving on-page duplicates
81into their own tree could cause corruption. [#2459]
82<li>Fix a bug where moving on-page duplicates into their own tree could
83cause cursors on the same page to reference an invalid key/data pair.  [#2462]
84<li>Fix a bug where an error could be ignored when reverse splitting
85the tree. [#2472]
86<li>Fix a bug where creating Btrees deeper than 5 levels could cause
87core dumps or out-of-memory errors.  [#2514]
88<li>Fix a bug where the DB-&gt;verify method did not correctly diagnose
89Btree/Recno internal page references to invalid pages. [#2525]
90
91</ol>
92<h3>Hash Access Method Changes:</h3>
93
94<blockquote>None.</blockquote>
95
96<h3>Queue Access Method Changes:</h3>
97<ol>
98
99<li>Fix a bug where undo could happen incorrectly for record insert and
100delete. [#2298]
101<li>Fix a bug where a page could be leaked during Queue recovery. [#2431]
102
103</ol>
104<h3>Recno Access Method Changes:</h3>
105<ol>
106
107<li>Fix a bug where the delete flag was set incorrectly in renumbering
108Recno trees. [#2490]
109
110</ol>
111<h3>C++ API Changes:</h3>
112
113<blockquote>None.</blockquote>
114
115<h3>Java API Changes:</h3>
116<ol>
117
118<li>Fix a bug where the wrong classname was used to find the fieldId in
119storing back the DbEnv.private_dbobj field. [#1628]
120<li>Fix a Java documentation bug, the com.sleepycat.examples.AccessExample
121program removes the database so information from previous runs is not
122available. [#2385]
123<li>Fix a Java documentation bug, Db.del should show it returning int.
124[#2480]
125<li>Fix a bug where the Java Db.del API would fail to return
126Db.DB_NOTFOUND [#2480]
127<li>Fix a bug where the Db.DB_THREAD flag wasn't always set by Java. [#2492]
128
129</ol>
130<h3>Tcl API Changes:</h3>
131<ol>
132
133<li>Fix a bug where DB_USE_ENVIRON_ROOT was specified for the Tcl
134command -use_environ. [#2400]
135
136</ol>
137<h3>RPC Client/Server Changes:</h3>
138
139<blockquote>None.</blockquote>
140
141<h3>XA Resource Manager Changes:</h3>
142
143<blockquote>None.</blockquote>
144
145<h3>Locking Subsystem Changes:</h3>
146
147<blockquote>None.</blockquote>
148
149<h3>Logging Subsystem Changes:</h3>
150<ol>
151
152<li>Fix a bug where the underlying operating system sync interface could
153be unnecessarily (and repeatedly) called when performing transaction
154checkpoints. [#2287]
155<li>Fix a bug where a recovery diagnostic message displayed the wrong
156information. [#2449]
157
158</ol>
159<h3>Buffer Pool Subsystem Changes:</h3>
160<ol>
161
162<li>Fix a bug where calling memp_sync (including by transaction checkpoint)
163could cause shared region corruption and core dumps. [#2348, #2392]
164
165</ol>
166<h3>Transaction Subsystem Changes:</h3>
167<ol>
168
169<li>Fix a bug where recovery would succeed but drop core if no close
170record was ever written after the commit of a remove. [#2316]
171<li>Fix a bug where file ID mapping could be incorrect [#2324]
172<li>Fix a memory leak in abort of a nested transaction. [#2440]
173<li>Fix a freed memory reference when committing active child transactions
174during parent transaction commit. [#2457]
175
176</ol>
177<h3>Utility Changes:</h3>
178
179<blockquote>None.</blockquote>
180
181<h3>Configuration, Documentation, Portability and Build Changes:</h3>
182<ol>
183
184<li>Portability fixes to compile on SunOS 4.1.4. [#2309]
185<li>Fix a bug where VxWorks hash databases could be corrupted on dosFS
186filesystems because Berkeley DB did not correct for dirty filesystem
187reads. [#2317]
188<li>Add a workaround for a MoveFileEx bug in Windows/98 which caused
189the DB-&gt;rename method to fail. [#2341]
190<li>Fix a bug where the VxWorks support did not accept both slash and
191backslash as path separators. [#2393]
192<li>Fix a bug where VxWorks device names were not ignored when evaluating
193paths. [#2393]
194<li>Fix txn_begin documentation to correctly specify operations available
195to parent transactions with active child transactions. [#2457]
196<li>Fix txn_commit documentation to correctly specify effect of parent
197transaction commit on active child transactions. [#2457]
198<li>Fix a bug in the Reference Guide where txn_begin and txn_commit
199examples had the wrong arguments. [#2485]
200<li>Fix the documentation on extending Berkeley DB recovery to reference
201the correct filenames. [#2501]
202<li>Fix a bug where the DB_CLIENT flag was not listed in the C++/Java API
203DbEnv class constructor documentation. [#2510]
204<li>Fix a bug where the DbEnv-&gt;set_server interface was not documented
205for the C++/Java APIs. [#2510]
206<li>Fix the DBENV-&gt;remove method's argument documentation. [#2518]
207<li>Fix a bug where the Java DbEnv.strerror and version number methods
208weren't documented. [#2523]
209
210</ol>
211
212</body>
213</html>
214