1Revision history for Perl extension BerkeleyDB.
2
30.57  23 January 2018
4
5        * Updates for BDB 6.3
6
70.56  5 January 2016
8
9        * Updates for BDB 6.2
10
110.55  30 March 2014
12
13        * Error opening ErrFile with PerlIO_findFILE
14          [RT =#101883]
15
16        * Minor updates for BDB 6.1
17
180.54  9th November 2013
19
20        * memory leak in CDS locking routines
21          [RT #90134]
22
230.53  14th August 2013
24
25        * BerkeleyDB-0.52 fails to build on 5.18.1RC3
26          [RT #87771]
27
28        * typo fixes
29          [RT #86705]
30
310.52  7th May 2013
32
33        * Updates for BDB 6.0 - Added Blob support
34            - Added BerkeleyDB::DbStream class to interface to Blobs
35            - Added BlobThreshold & BlobDir option to BerkeleyDB::Env
36              constructor
37            - Added BlobThreshold & BlobDir option to Hash, Btree & Heap
38              constructors
39            - Added get_blob_threshold method to BerkeleyDB::Env
40            - Added get_blob_dir method to BerkeleyDB::Env
41            - Added get_blob_threshold method to the Hash, Btree & Heap
42            - Added get_blob_dir method to the Hash, Btree & Heap
43
44        * Added method $cursor->set_partial
45        * Added method $cursor->partial_clear
46
47        * $env->lock_detect dies due to incorrect version check
48          [RT #84179]
49
50        * (Memory leak in db_verify() method. (libdb < 4.2))
51          [RT #84409]
52
53        * Fix a few croaks
54
550.51  19th March 2012
56
57        * Rework FETCHSIZE
58          [RT #75691]
59
600.50  10th December 2011
61
62        * Updates for BDB 5.3
63
640.49  6th August 2011
65
66        * Documentation updated courtesy of Mike Caron
67
68        * croak if attempt to freeze berkeleydb object
69          [RT #69985]
70
710.48  18th June 2011
72
73        * Fixed test harness issue with Heap.t
74          RT #68818
75
760.47  1st June 2011
77
78        * Add support for new Heap database format.
79
80        * Changes to build with BDB 5.2
81
820.46  18th October 2010
83
84        * Fixed bug with db_pget when the DB_GET_BOTH flag is used.
85
860.45  17th October 2010
87
88        * Fixed bug with c_pget when the DB_GET_BOTH flag is used.
89
900.44  2nd August 2010
91
92        * Added support for db_exists and lock_detect.
93          Thanks to Alex Lovatt for the patch.
94
950.43  1st August 2010
96
97        * Changes to build with BDB 5.1
98          - Dropped support for Server option when creating an environment.
99
100        * Documantation updates.
101          RT# 59202
102
103        * Fixed compilation error with MS Visual Studio 2005
104          RT# 59924
105
1060.42  13th March 2010
107
108        * Added $db->Env method to retrieve the environment object from a
109          database object.
110
111        * Get the tied interface to use truncate in the CLEAR method if
112          using a new enough version of Berkeley DB.
113
1140.41  8th January 2010
115
116        * Silence "UNIVERSAL->import is deprecated" in perl 5.11
117          RT# 53518
118
1190.40  7th January 2010
120
121        * Added support for set_tx_max, log_set_config, set_lk_max_lockers,
122          set_lk_max_locks, set_lk_max_objects via the Env constructor.
123          Parameter names are TxMax, LogConfig, MaxLockers, MaxLocks &
124          MaxObjects respectively.
125          RT# 50456
126
127        * seq->seq->close doesn't compile on win32.
128          RT# 49474
129
1300.39  6th June 2009
131
132        * Added support for BDB 4.8
133          - associate_foreign
134          - set_bt_compress (no callbacks as yet).
135
136        * Also added interface to
137          - ENV->stat_print
138          - ENV->txn_stat_print
139
140        * Oldest Perl supported is now 5.005
141
142        * Fixed issue db_stat when it returned a null pointer.
143          (#46312 rt.cpan.org)
144
145        * set_msgfile API
146          (#46313)
147
148        * Fixed issue with DNM Filters & UTF8 support.
149          Patch supplied by Torsten Foertsch.
150
1510.38  21st February 2009
152
153        * Fixed typo in BerkleyDB.pod that broke t/pod.t
154
1550.37  18th February 2009
156
157        * Included CDS section to the pod.
158
159        * Various documentation patches from RT#42243
160
1610.36  30th September 2008
162
163        * Added support for $ENV->log_get_config and $ENV->log_set_config.
164          Patch supplied by Yuval Kogman (#39651 rt.cpan.org)
165
1660.35  22nd September 2008
167
168        * Added a combination of independent patches from Claes Jakobsson
169          and Yuval Kogman (#38896 rt.cpan.org) to allow multi-key return
170          from a secondard database.
171
172        * Added support for sequences. Initial patch from  Claes Jakobsson.
173
174        * Get associate to use a transaction if one is specified.
175          #5855 from rt.cpan.org
176
177        * Finish transition of test harness to use Test::More
178
1790.34  27th March 2008
180
181        * Updates to support building with Berkeley DB version 4.7
182
183        * Typo in #ifdef for ThreadCount support. Spotted by Mark Hindley
184
185        * Updated dbinfo
186
1870.33  17th January 2008
188
189        * Added failchk, set_isalive, lock_stat_print & mutex_stat_print.
190          Patch provided by Thomas Busch.
191
1920.32  10th July 2007
193
194        * Updates to support Berkeley DB 4.6
195
196        * Remove all global static data from BerkeleyDB.xs.
197
1980.31  15th Oct 2006
199
200        * Fixed DB_GET_BOTH. Tnanks to Thomas Drugeon for spotting the typo
201          in typemap and supplying a regression test for this fix.
202
2030.30  11th Sept 2006
204
205        * Fixed queue test harness for Berkeley DB 4.5 compliance
206
207        * Added $env->lsn_reset, $txn->set_timeout, $env->set_timeout &
208          $env->get_timeout, $txn->set_tx_max, $txn->get_tx_max
209
2100.29  2nd July 2006
211
212        * Fixes for cursor get from secondary where primary os recno.
213
214        * Added db_compact
215
2160.28  11th June 2006
217
218        * Fixes for secondary where primary is recno.
219
220        * GET_BOTH_RANGE wasn't working. It is now.
221
222        * Added FreeBSD hints to README - patch supplied by David Landgren
223          in #17675 from rt.cpan.org
224
2250.27  1st Novemver 2005
226
227        * Added support for Berkeley DB 4.4
228
229        * Fixed secondary key issue with recno databases
230
231        * Added libscan to Makefile.PL
232
233        * Fixed a problem in t/subdb.t that meant it hung on Win32.
234
235        * The logic for set_mutexlocks was inverted when using Berkeley DB 4.x
236          Bug spotted by Zefram <zefram@fysh.org>
237
238        * Transactional rename/remove added.
239          Patch supplied by Zefram <zefram@fysh.org>
240
241
2420.26  10th October 2004
243
244        * Changed to allow Building with Berkeley DB 4.3
245
246        * added cds_lock and associated methods as a convenience to allow
247          safe updaing of database records when using Berkeley DB CDS mode.
248
249        * added t/cds.t and t/pod.t
250
251        * Modified the test suite to use "-ErrFile => *STDOUT" where
252          possible. This will make it easier to diagnose build issues.
253
254	* -Errfile will now accept a filehandle as well as a filename
255          This means that -ErrFile => *STDOUT will get all extended error
256          messages displayed directly on screen.
257
258	* Added support for set_shm_key & get_shm_key.
259
260	* Patch from Mark Jason Dominus to add a better error message
261	  when an odd number of parameters are passed to ParseParameters.
262
263	* fixed off-by-one error in my_strdup
264
265	* Fixed a problem with push, pop, shift & unshift with Queue &
266	  Recno when used in CDS mode. These methods were not using
267	  a write cursor behind the scenes.
268	  Problem reported by Pavel Hlavnicka.
269
2700.25  1st November 2003
271
272	* Minor update to dbinfo
273
274	* Fixed a bug in the test harnesses that is only apparent in
275	  perl 5.8.2.  Original patch courtesy of Michael Schwern.
276
2770.24 27th September 2003
278
279        * Mentioned comp.databases.berkeley-db in README
280
281        * Builds with Berkeley DB 4.2
282
283        * The return type for db->db_fd was wrongly set at DualType -
284          should be int.
285
2860.23 15th June 2003
287
288        * Fixed problem where a secondary index would use the same
289          compare callback as the primary key, regardless of what was
290          defined for the secondary index.
291	  Problem spotted by Dave Tallman.
292
293        * Also fixed a problem with the associate callback. If the value
294          for the secondary key was not a string, the secondary key was
295          being set incorrectly. This is now fixed.
296
297        * When built with Berkeley DB 3.2 or better, all callbacks now use
298          the BackRef pointer instead of the global CurrentDB. This was
299          done partially to fix the secondary index problem, above.
300
301        * The test harness was failing under cygwin. Now fixed.
302
303        * Previous release broke TRACE. Fixed.
304
3050.22 17th May 2003
306
307        * win32 problem with open macro fixed.
308
3090.21 12th May 2003
310
311        * adding support for env->set_flags
312	* adding recursion detection
313	* win32 problem with rename fixed.
314	* problem with sub-database name in Recno & Queue fixed.
315	* fixed the mldbm.t test harness to work with perl 5.8.0
316	* added a note about not using a network drive when running the
317	  test harness.
318	* fixed c_pget
319	* added BerkeleyDB::Env::DB_ENV method
320	* added support for encryption
321	* the dbinfo script will now indicate if the database is encrypted
322	* The CLEAR method is now CDB safe.
323
3240.20 2nd September 2002
325
326        * More support for building with Berkeley DB 4.1.x
327        * db->get & db->pget used the wrong output macro for DBM filters
328          bug spotted by Aaron Ross.
329	* db_join didn't keep a reference to the cursors it was joining.
330          Spotted by Winton Davies.
331
3320.19 5th June 2002
333        * Removed the targets that used mkconsts from Makefile.PL. They relied
334          on a module that is not available in all versions of Perl.
335        * added support for env->set_verbose
336        * added support for db->truncate
337        * added support for db->rename via BerkeleyDB::db_rename
338        * added support for db->verify via BerkeleyDB::db_verify
339        * added support for db->associate, db->pget & cursor->c_pget
340        * Builds with Berkeley DB 4.1.x
341
342
3430.18 6th January 2002
344        * Dropped support for ErrFile as a file handle. It was proving too
345          difficult to get at the underlying FILE * in XS.
346          Reported by Jonas Smedegaard (Debian powerpc) & Kenneth Olwing (Win32)
347        * Fixed problem with abort macro in XSUB.h clashing with txn abort
348          method in Berkeley DB 4.x -- patch supplied by Kenneth Olwing.
349        * DB->set_alloc was getting called too late in BerkeleyDB.xs.
350          This was causing problems with ActivePerl -- problem reported
351          by Kenneth Olwing.
352        * When opening a queue, the Len proprty set the DB_PAD flag.
353          Should have been DB_FIXEDLEN. Fix provided by Kenneth Olwing.
354        * Test harness fixes from Kenneth Olwing.
355
3560.17 23 September 2001
357        * Fixed a bug in BerkeleyDB::Recno - reported by Niklas Paulsson.
358        * Added log_archive - patch supplied by Benjamin Holzman
359        * Added txn_discard
360        * Builds with Berkeley DB 4.0.x
361
3620.16 1 August 2001
363        * added support for Berkeley DB 3.3.x (but no support for any of the
364          new features just yet)
365
3660.15 26 April 2001
367        * Fixed a bug in the processing of the flags options in
368          db_key_range.
369        * added support for set_lg_max & set_lg_bsize
370        * allow DB_TMP_DIR and DB_TEMP_DIR
371        * the -Filename parameter to BerkeleyDB::Queue didn't work.
372        * added symbol DB_CONSUME_WAIT
373
3740.14 21st January 2001
375        * Silenced the warnings when build with a 64-bit Perl.
376        * Can now build with DB 3.2.3h (part of MySQL). The test harness
377          takes an age to do the queue test, but it does eventually pass.
378        * Mentioned the problems that occur when perl is built with sfio.
379
3800.13 15th January 2001
381        * Added support to allow this module to build with Berkeley DB 3.2
382        * Updated dbinfo to support Berkeley DB 3.1 & 3.2 file format
383          changes.
384        * Documented the Solaris 2.7 core dump problem in README.
385        * Tidied up the test harness to fix a problem on Solaris where the
386          "fred" directory wasn't being deleted when it should have been.
387        * two calls to "open" clashed with a win32 macro.
388        * size argument for hash_cb is different for Berkeley DB 3.x
389        * Documented the issue of building on Linux.
390        * Added -Server, -CacheSize & -LockDetect options
391          [original patch supplied by Graham Barr]
392        * Added support for set_mutexlocks, c_count, set_q_extentsize,
393          key_range, c_dup
394	* Dropped the "attempted to close a Cursor with an open transaction"
395	  error in c_close. The correct behaviour is that the cursor
396	  should be closed before committing/aborting the transaction.
397
3980.12  2nd August 2000
399	* Serious bug with get fixed. Spotted by Sleepycat.
400	* Added hints file for Solaris & Irix (courtesy of Albert Chin-A-Young)
401
4020.11  4th June 2000
403	* When built with Berkeley Db 3.x there can be a clash with the close
404	  macro.
405	* Typo in the definition of DB_WRITECURSOR
406	* The flags parameter wasn't getting sent to db_cursor
407	* Plugged small memory leak in db_cursor (DESTROY wasn't freeing
408	  memory)
409	* Can be built with Berkeley DB 3.1
410
4110.10  8th December 1999
412	* The DESTROY method was missing for BerkeleyDB::Env. This resulted in
413	  a memory leak. Fixed.
414	* If opening an environment or database failed, there was a small
415	  memory leak. This has been fixed.
416	* A thread-enabled Perl it could core when a database was closed.
417	  Problem traced to the strdup function.
418
4190.09  29th November 1999
420        * the queue.t & subdb.t test harnesses were outputting a few
421          spurious warnings. This has been fixed.
422
4230.08  28nd November 1999
424	* More documentation updates
425	* Changed reference to files in /tmp in examples.t
426	* Fixed a typo in softCrash that caused problems when building
427	  with a thread-enabled Perl.
428	* BerkeleyDB::Error wasn't initialised properly.
429	* ANSI-ified all the static C functions in BerkeleyDB.xs
430	* Added support for the following DB 3.x features:
431	    + The Queue database type
432	    + db_remove
433	    + subdatabases
434	    + db_stat for Hash & Queue
435
4360.07  21st September 1999
437	* Numerous small bug fixes.
438	* Added support for sorting duplicate values DB_DUPSORT.
439	* Added support for DB_GET_BOTH & DB_NEXT_DUP.
440	* Added get_dup (from DB_File).
441	* beefed up the documentation.
442	* Forgot to add the DB_INIT_CDB in BerkeleyDB.pm in previous release.
443	* Merged the DBM Filter code from DB_File into BerkeleyDB.
444	* Fixed a nasty bug where a closed transaction was still used with
445	  with dp_put, db_get etc.
446	* Added logic to gracefully close everything whenever a fatal error
447	  happens. Previously the plug was just pulled.
448	* It is now a fatal error to explicitly close an environment if there
449	  is still an open database; a database when there are open cursors or
450	  an open transaction; and a cursor if there is an open transaction.
451	  Using object destruction doesn't have this issue, as object
452	  references will ensure everything gets closed in the correct order.
453	* The BOOT code now checks that the version of db.h & libdb are the
454	  same - this seems to be a common problem on Linux.
455	* MLDBM support added.
456	* Support for the new join cursor added.
457	* Builds with Berkeley DB 3.x
458   	* Updated dbinfo for Berkeley DB 3.x file formats.
459	* Deprecated the TxnMgr class. As with Berkeley DB version 3,
460	  txn_begin etc are now accessed via the environment object.
461
4620.06  19 December 1998
463	* Minor modifications to get the module to build with DB 2.6.x
464	* Added support for DB 2.6.x's  Concurrent Access Method, DB_INIT_CDB.
465
4660.05  9 November 1998
467	* Added a note to README about how to build Berkeley DB 2.x
468	  when using HP-UX.
469	* Minor modifications to get the module to build with DB 2.5.x
470
4710.04  19 May 1998
472	* Define DEFSV & SAVE_DEFSV if not already defined. This allows
473	  the module to be built with Perl 5.004_04.
474
4750.03  5 May 1998
476	* fixed db_get with DB_SET_RECNO
477	* fixed c_get with DB_SET_RECNO and DB_GET_RECNO
478	* implemented BerkeleyDB::Unknown
479	* implemented BerkeleyDB::Recno, including push, pop etc
480	  modified the txn support.
481
4820.02  30 October 1997
483	* renamed module to BerkeleyDB
484	* fixed a few bugs & added more tests
485
4860.01  23 October 1997
487	* first alpha release as BerkDB.
488
489