1Revision history for Perl extension BerkeleyDB. 2 30.64 17 September 2020 4 5 * Refresh ppport.h 6 2a4ebf00b93977cfbffc65ecbcc0aac4f7cbad1d 7 8 * Silence clang warning in call to "initial_value" 9 https://github.com/pmqs/BerkeleyDB/issues/4 10 aa9c569b797bee78141ef319685d756bcef92a18 11 120.63 21 July 2019 13 14 * added 000prereq.t 15 Dump version info in "make test" 16 9e17580d74662b6a3186990dd3b1469df2829503 17 180.62 20 July 2019 19 20 * default to /usr/local/BerkeleyDB 21 fcc0ad8adf310f7c8cc65788806439f2f8c39f90 22 23 * __heap_exist prototype needed for db 5.2 or better 24 7fe4ad8d74190d7f41a816c79e5ccf044c02c7c9 25 26 * t/joint.: Silence Valgrinf 27 https://rt.cpan.org/Ticket/Display.html?id=125605 28 40d03924570f8516efe4a05982f402e8ce569637 29 30 * db_remove missing txn code 31 https://rt.cpan.org/Ticket/Display.html?id=124979 32 b91875a9f3f55bb779ad7a448c9fff0645d8a527 33 34 * Fix test failure when TRACE is enabled 35 bb80b7d0fb83643ccddd8243d4c6b6ab637428df 36 37 * Added BERKELEYDB_DEFINE_TRACE variable to allow TRACE to be enabled 38 from .travis file. 39 bd9ebf5aa149172afab55d6ba6f27d77cf08d91a 40 41 * Add test with BERKELEYDB_DEFINE_TRACE set to .travis 42 000b1d8dffe542d6476fe78f218cc95534f1c1c3 43 44 * my_db_strerror: Add missing dTHX declaration 45 Merge pull request https://github.com/pmqs/BerkeleyDB/pull/2 46 4273345d8eff5f521788b3c5e71fb291bf46a646 47 80ca9b77968ab84aaf8b546f2933d135202e16e0 48 49 * create .appveyor.yml 50 4e7b034ddbe76a7c2dcd189e1e0c935c1559aa2c 51 52 * sync dbinfo from DB_File 53 27b499fa9dbfca78adcc7a12ada43f0b05b6ece6 54 550.61 30 March 2019 56 57 * Fix a couple of typos 58 One's a copyright date out by 20 years. 59 The other one breaks builds with 5.2 ≤ BDB < 6.2. 60 Merge pull request https://github.com/pmqs/BerkeleyDB/pull/1 61 620.60 30 March 2019 63 * Moved source to github https://github.com/pmqs/BerkeleyDB 64 65 * Add META_MERGE to Makefile.PL 66 67 * Added meta-json.t & meta-yaml.t 68 690.58 23 January 2018 70 71 * please expose set_lg_filemode 72 [RT #124979] 73 740.57 23 January 2018 75 76 * Updates for BDB 6.3 77 780.56 5 January 2016 79 80 * Updates for BDB 6.2 81 820.55 30 March 2014 83 84 * Error opening ErrFile with PerlIO_findFILE 85 [RT #101883] 86 87 * Minor updates for BDB 6.1 88 890.54 9th November 2013 90 91 * memory leak in CDS locking routines 92 [RT #90134] 93 940.53 14th August 2013 95 96 * BerkeleyDB-0.52 fails to build on 5.18.1RC3 97 [RT #87771] 98 99 * typo fixes 100 [RT #86705] 101 1020.52 7th May 2013 103 104 * Updates for BDB 6.0 - Added Blob support 105 - Added BerkeleyDB::DbStream class to interface to Blobs 106 - Added BlobThreshold & BlobDir option to BerkeleyDB::Env 107 constructor 108 - Added BlobThreshold & BlobDir option to Hash, Btree & Heap 109 constructors 110 - Added get_blob_threshold method to BerkeleyDB::Env 111 - Added get_blob_dir method to BerkeleyDB::Env 112 - Added get_blob_threshold method to the Hash, Btree & Heap 113 - Added get_blob_dir method to the Hash, Btree & Heap 114 115 * Added method $cursor->set_partial 116 * Added method $cursor->partial_clear 117 118 * $env->lock_detect dies due to incorrect version check 119 [RT #84179] 120 121 * (Memory leak in db_verify() method. (libdb < 4.2)) 122 [RT #84409] 123 124 * Fix a few croaks 125 1260.51 19th March 2012 127 128 * Rework FETCHSIZE 129 [RT #75691] 130 1310.50 10th December 2011 132 133 * Updates for BDB 5.3 134 1350.49 6th August 2011 136 137 * Documentation updated courtesy of Mike Caron 138 139 * croak if attempt to freeze berkeleydb object 140 [RT #69985] 141 1420.48 18th June 2011 143 144 * Fixed test harness issue with Heap.t 145 RT #68818 146 1470.47 1st June 2011 148 149 * Add support for new Heap database format. 150 151 * Changes to build with BDB 5.2 152 1530.46 18th October 2010 154 155 * Fixed bug with db_pget when the DB_GET_BOTH flag is used. 156 1570.45 17th October 2010 158 159 * Fixed bug with c_pget when the DB_GET_BOTH flag is used. 160 1610.44 2nd August 2010 162 163 * Added support for db_exists and lock_detect. 164 Thanks to Alex Lovatt for the patch. 165 1660.43 1st August 2010 167 168 * Changes to build with BDB 5.1 169 - Dropped support for Server option when creating an environment. 170 171 * Documantation updates. 172 RT# 59202 173 174 * Fixed compilation error with MS Visual Studio 2005 175 RT# 59924 176 1770.42 13th March 2010 178 179 * Added $db->Env method to retrieve the environment object from a 180 database object. 181 182 * Get the tied interface to use truncate in the CLEAR method if 183 using a new enough version of Berkeley DB. 184 1850.41 8th January 2010 186 187 * Silence "UNIVERSAL->import is deprecated" in perl 5.11 188 RT# 53518 189 1900.40 7th January 2010 191 192 * Added support for set_tx_max, log_set_config, set_lk_max_lockers, 193 set_lk_max_locks, set_lk_max_objects via the Env constructor. 194 Parameter names are TxMax, LogConfig, MaxLockers, MaxLocks & 195 MaxObjects respectively. 196 RT# 50456 197 198 * seq->seq->close doesn't compile on win32. 199 RT# 49474 200 2010.39 6th June 2009 202 203 * Added support for BDB 4.8 204 - associate_foreign 205 - set_bt_compress (no callbacks as yet). 206 207 * Also added interface to 208 - ENV->stat_print 209 - ENV->txn_stat_print 210 211 * Oldest Perl supported is now 5.005 212 213 * Fixed issue db_stat when it returned a null pointer. 214 (#46312 rt.cpan.org) 215 216 * set_msgfile API 217 (#46313) 218 219 * Fixed issue with DNM Filters & UTF8 support. 220 Patch supplied by Torsten Foertsch. 221 2220.38 21st February 2009 223 224 * Fixed typo in BerkleyDB.pod that broke t/pod.t 225 2260.37 18th February 2009 227 228 * Included CDS section to the pod. 229 230 * Various documentation patches from RT#42243 231 2320.36 30th September 2008 233 234 * Added support for $ENV->log_get_config and $ENV->log_set_config. 235 Patch supplied by Yuval Kogman (#39651 rt.cpan.org) 236 2370.35 22nd September 2008 238 239 * Added a combination of independent patches from Claes Jakobsson 240 and Yuval Kogman (#38896 rt.cpan.org) to allow multi-key return 241 from a secondard database. 242 243 * Added support for sequences. Initial patch from Claes Jakobsson. 244 245 * Get associate to use a transaction if one is specified. 246 #5855 from rt.cpan.org 247 248 * Finish transition of test harness to use Test::More 249 2500.34 27th March 2008 251 252 * Updates to support building with Berkeley DB version 4.7 253 254 * Typo in #ifdef for ThreadCount support. Spotted by Mark Hindley 255 256 * Updated dbinfo 257 2580.33 17th January 2008 259 260 * Added failchk, set_isalive, lock_stat_print & mutex_stat_print. 261 Patch provided by Thomas Busch. 262 2630.32 10th July 2007 264 265 * Updates to support Berkeley DB 4.6 266 267 * Remove all global static data from BerkeleyDB.xs. 268 2690.31 15th Oct 2006 270 271 * Fixed DB_GET_BOTH. Tnanks to Thomas Drugeon for spotting the typo 272 in typemap and supplying a regression test for this fix. 273 2740.30 11th Sept 2006 275 276 * Fixed queue test harness for Berkeley DB 4.5 compliance 277 278 * Added $env->lsn_reset, $txn->set_timeout, $env->set_timeout & 279 $env->get_timeout, $txn->set_tx_max, $txn->get_tx_max 280 2810.29 2nd July 2006 282 283 * Fixes for cursor get from secondary where primary os recno. 284 285 * Added db_compact 286 2870.28 11th June 2006 288 289 * Fixes for secondary where primary is recno. 290 291 * GET_BOTH_RANGE wasn't working. It is now. 292 293 * Added FreeBSD hints to README - patch supplied by David Landgren 294 in #17675 from rt.cpan.org 295 2960.27 1st Novemver 2005 297 298 * Added support for Berkeley DB 4.4 299 300 * Fixed secondary key issue with recno databases 301 302 * Added libscan to Makefile.PL 303 304 * Fixed a problem in t/subdb.t that meant it hung on Win32. 305 306 * The logic for set_mutexlocks was inverted when using Berkeley DB 4.x 307 Bug spotted by Zefram <zefram@fysh.org> 308 309 * Transactional rename/remove added. 310 Patch supplied by Zefram <zefram@fysh.org> 311 312 3130.26 10th October 2004 314 315 * Changed to allow Building with Berkeley DB 4.3 316 317 * added cds_lock and associated methods as a convenience to allow 318 safe updaing of database records when using Berkeley DB CDS mode. 319 320 * added t/cds.t and t/pod.t 321 322 * Modified the test suite to use "-ErrFile => *STDOUT" where 323 possible. This will make it easier to diagnose build issues. 324 325 * -Errfile will now accept a filehandle as well as a filename 326 This means that -ErrFile => *STDOUT will get all extended error 327 messages displayed directly on screen. 328 329 * Added support for set_shm_key & get_shm_key. 330 331 * Patch from Mark Jason Dominus to add a better error message 332 when an odd number of parameters are passed to ParseParameters. 333 334 * fixed off-by-one error in my_strdup 335 336 * Fixed a problem with push, pop, shift & unshift with Queue & 337 Recno when used in CDS mode. These methods were not using 338 a write cursor behind the scenes. 339 Problem reported by Pavel Hlavnicka. 340 3410.25 1st November 2003 342 343 * Minor update to dbinfo 344 345 * Fixed a bug in the test harnesses that is only apparent in 346 perl 5.8.2. Original patch courtesy of Michael Schwern. 347 3480.24 27th September 2003 349 350 * Mentioned comp.databases.berkeley-db in README 351 352 * Builds with Berkeley DB 4.2 353 354 * The return type for db->db_fd was wrongly set at DualType - 355 should be int. 356 3570.23 15th June 2003 358 359 * Fixed problem where a secondary index would use the same 360 compare callback as the primary key, regardless of what was 361 defined for the secondary index. 362 Problem spotted by Dave Tallman. 363 364 * Also fixed a problem with the associate callback. If the value 365 for the secondary key was not a string, the secondary key was 366 being set incorrectly. This is now fixed. 367 368 * When built with Berkeley DB 3.2 or better, all callbacks now use 369 the BackRef pointer instead of the global CurrentDB. This was 370 done partially to fix the secondary index problem, above. 371 372 * The test harness was failing under cygwin. Now fixed. 373 374 * Previous release broke TRACE. Fixed. 375 3760.22 17th May 2003 377 378 * win32 problem with open macro fixed. 379 3800.21 12th May 2003 381 382 * adding support for env->set_flags 383 * adding recursion detection 384 * win32 problem with rename fixed. 385 * problem with sub-database name in Recno & Queue fixed. 386 * fixed the mldbm.t test harness to work with perl 5.8.0 387 * added a note about not using a network drive when running the 388 test harness. 389 * fixed c_pget 390 * added BerkeleyDB::Env::DB_ENV method 391 * added support for encryption 392 * the dbinfo script will now indicate if the database is encrypted 393 * The CLEAR method is now CDB safe. 394 3950.20 2nd September 2002 396 397 * More support for building with Berkeley DB 4.1.x 398 * db->get & db->pget used the wrong output macro for DBM filters 399 bug spotted by Aaron Ross. 400 * db_join didn't keep a reference to the cursors it was joining. 401 Spotted by Winton Davies. 402 4030.19 5th June 2002 404 * Removed the targets that used mkconsts from Makefile.PL. They relied 405 on a module that is not available in all versions of Perl. 406 * added support for env->set_verbose 407 * added support for db->truncate 408 * added support for db->rename via BerkeleyDB::db_rename 409 * added support for db->verify via BerkeleyDB::db_verify 410 * added support for db->associate, db->pget & cursor->c_pget 411 * Builds with Berkeley DB 4.1.x 412 413 4140.18 6th January 2002 415 * Dropped support for ErrFile as a file handle. It was proving too 416 difficult to get at the underlying FILE * in XS. 417 Reported by Jonas Smedegaard (Debian powerpc) & Kenneth Olwing (Win32) 418 * Fixed problem with abort macro in XSUB.h clashing with txn abort 419 method in Berkeley DB 4.x -- patch supplied by Kenneth Olwing. 420 * DB->set_alloc was getting called too late in BerkeleyDB.xs. 421 This was causing problems with ActivePerl -- problem reported 422 by Kenneth Olwing. 423 * When opening a queue, the Len proprty set the DB_PAD flag. 424 Should have been DB_FIXEDLEN. Fix provided by Kenneth Olwing. 425 * Test harness fixes from Kenneth Olwing. 426 4270.17 23 September 2001 428 * Fixed a bug in BerkeleyDB::Recno - reported by Niklas Paulsson. 429 * Added log_archive - patch supplied by Benjamin Holzman 430 * Added txn_discard 431 * Builds with Berkeley DB 4.0.x 432 4330.16 1 August 2001 434 * added support for Berkeley DB 3.3.x (but no support for any of the 435 new features just yet) 436 4370.15 26 April 2001 438 * Fixed a bug in the processing of the flags options in 439 db_key_range. 440 * added support for set_lg_max & set_lg_bsize 441 * allow DB_TMP_DIR and DB_TEMP_DIR 442 * the -Filename parameter to BerkeleyDB::Queue didn't work. 443 * added symbol DB_CONSUME_WAIT 444 4450.14 21st January 2001 446 * Silenced the warnings when build with a 64-bit Perl. 447 * Can now build with DB 3.2.3h (part of MySQL). The test harness 448 takes an age to do the queue test, but it does eventually pass. 449 * Mentioned the problems that occur when perl is built with sfio. 450 4510.13 15th January 2001 452 * Added support to allow this module to build with Berkeley DB 3.2 453 * Updated dbinfo to support Berkeley DB 3.1 & 3.2 file format 454 changes. 455 * Documented the Solaris 2.7 core dump problem in README. 456 * Tidied up the test harness to fix a problem on Solaris where the 457 "fred" directory wasn't being deleted when it should have been. 458 * two calls to "open" clashed with a win32 macro. 459 * size argument for hash_cb is different for Berkeley DB 3.x 460 * Documented the issue of building on Linux. 461 * Added -Server, -CacheSize & -LockDetect options 462 [original patch supplied by Graham Barr] 463 * Added support for set_mutexlocks, c_count, set_q_extentsize, 464 key_range, c_dup 465 * Dropped the "attempted to close a Cursor with an open transaction" 466 error in c_close. The correct behaviour is that the cursor 467 should be closed before committing/aborting the transaction. 468 4690.12 2nd August 2000 470 * Serious bug with get fixed. Spotted by Sleepycat. 471 * Added hints file for Solaris & Irix (courtesy of Albert Chin-A-Young) 472 4730.11 4th June 2000 474 * When built with Berkeley Db 3.x there can be a clash with the close 475 macro. 476 * Typo in the definition of DB_WRITECURSOR 477 * The flags parameter wasn't getting sent to db_cursor 478 * Plugged small memory leak in db_cursor (DESTROY wasn't freeing 479 memory) 480 * Can be built with Berkeley DB 3.1 481 4820.10 8th December 1999 483 * The DESTROY method was missing for BerkeleyDB::Env. This resulted in 484 a memory leak. Fixed. 485 * If opening an environment or database failed, there was a small 486 memory leak. This has been fixed. 487 * A thread-enabled Perl it could core when a database was closed. 488 Problem traced to the strdup function. 489 4900.09 29th November 1999 491 * the queue.t & subdb.t test harnesses were outputting a few 492 spurious warnings. This has been fixed. 493 4940.08 28nd November 1999 495 * More documentation updates 496 * Changed reference to files in /tmp in examples.t 497 * Fixed a typo in softCrash that caused problems when building 498 with a thread-enabled Perl. 499 * BerkeleyDB::Error wasn't initialised properly. 500 * ANSI-ified all the static C functions in BerkeleyDB.xs 501 * Added support for the following DB 3.x features: 502 + The Queue database type 503 + db_remove 504 + subdatabases 505 + db_stat for Hash & Queue 506 5070.07 21st September 1999 508 * Numerous small bug fixes. 509 * Added support for sorting duplicate values DB_DUPSORT. 510 * Added support for DB_GET_BOTH & DB_NEXT_DUP. 511 * Added get_dup (from DB_File). 512 * beefed up the documentation. 513 * Forgot to add the DB_INIT_CDB in BerkeleyDB.pm in previous release. 514 * Merged the DBM Filter code from DB_File into BerkeleyDB. 515 * Fixed a nasty bug where a closed transaction was still used with 516 with dp_put, db_get etc. 517 * Added logic to gracefully close everything whenever a fatal error 518 happens. Previously the plug was just pulled. 519 * It is now a fatal error to explicitly close an environment if there 520 is still an open database; a database when there are open cursors or 521 an open transaction; and a cursor if there is an open transaction. 522 Using object destruction doesn't have this issue, as object 523 references will ensure everything gets closed in the correct order. 524 * The BOOT code now checks that the version of db.h & libdb are the 525 same - this seems to be a common problem on Linux. 526 * MLDBM support added. 527 * Support for the new join cursor added. 528 * Builds with Berkeley DB 3.x 529 * Updated dbinfo for Berkeley DB 3.x file formats. 530 * Deprecated the TxnMgr class. As with Berkeley DB version 3, 531 txn_begin etc are now accessed via the environment object. 532 5330.06 19 December 1998 534 * Minor modifications to get the module to build with DB 2.6.x 535 * Added support for DB 2.6.x's Concurrent Access Method, DB_INIT_CDB. 536 5370.05 9 November 1998 538 * Added a note to README about how to build Berkeley DB 2.x 539 when using HP-UX. 540 * Minor modifications to get the module to build with DB 2.5.x 541 5420.04 19 May 1998 543 * Define DEFSV & SAVE_DEFSV if not already defined. This allows 544 the module to be built with Perl 5.004_04. 545 5460.03 5 May 1998 547 * fixed db_get with DB_SET_RECNO 548 * fixed c_get with DB_SET_RECNO and DB_GET_RECNO 549 * implemented BerkeleyDB::Unknown 550 * implemented BerkeleyDB::Recno, including push, pop etc 551 modified the txn support. 552 5530.02 30 October 1997 554 * renamed module to BerkeleyDB 555 * fixed a few bugs & added more tests 556 5570.01 23 October 1997 558 * first alpha release as BerkDB. 559