1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 102 103 104 105 106 107 108 109 110 111 112 113 114 115 116 117 118 119 120 121 122 123 124 125 126 127 128 129 130 131 132 133 134 135 136 137 138 139 140 141 142 143 144 145 146 147 148 149 150 151 152 153 154 155 156 157 158 159 160 161 162 163 164 165 166 167 168 169 170 171 172 173 174 175 176 177 178 179 180 181 182 183 184 185 186 187 188 189 190 191 192 193 194 195 196 197 198 199 200 201 202 203 204 205 206 207 208 209 210 211 212 213 214 215 216 217 218 219 220 221 222 223 224 225 226 227 228 229 230 231 232 233 234 235 236 237 238 239 240 241 242 243 244 245 246 247 248 249 250 251 252 253 254 255 256 257 258 259 260 261 262 263 264 265 266 267 268 269 270 271 272 273 274 275 276 277 278 279 280 281 282 283 284 285 286 287 288 289 290 291 292 293 294 295 296 297 298 299 300 301 302 303 304 305 306 307 308 309 310 311 312 313 314 315 316 317 318 319 320 321 322 323 324 325 326 327 328 329 330 331 332 333 334 335 336 337 338 339 340 341 342 343 344 345 346 347 348 349 350 351 352 353 354 355 356 357 358 359 360 361 362 363 364 365 366 367 368 369 370 371 372 373 374 375 376 377 378 379 380 381 382 383 384 385 386 387 388 389 390 391 392 393 394 395 396 397 398 399 400 401 402 403 404 405 406 407 408 409 410 411 412 413 414 415 416 417 418 419 420 421 422 423 424 425 426 427 428 429 430 431 432 433 434 435 436 437 438 439 440 441 442 443 444 445 446 447 448 449 450 451 452 453 454 455 456 457 458 459 460 461 462 463 464 465 466 467 468 469 470 471 472 473 474 475 476 477 478 479 480 481 482 483 484 485 486 487 488 489 490 491 492 493 494 495 496 497 498 499 500 501 502 503 504 505 506 507 508 509 510 511 512 513 514 515 516 517 518 519 520 521 522 523 524 525 526 527 528 529 530 531 532 533 534 535 536 537 538 539 540 541 542 543 544 545 546 547 548 549 550 551 552 553 554 555 556 557 558 559 560 561 562 563 564 565 566 567 568 569 570 571 572 573 574 575 576 577 578 579 580 581 582 583 584 585 586 587 588 589 590 591 592 593 594 595 596 597 598 599 600 601 602 603 604 605 606 607 608 609 610 611 612 613 614 615 616 617 618 619 620 621 622 623 624 625 626 627 628 629 630 631 632 633 634 635 636 637 638 639 640 641 642 643 644 645 646 647 648 649 650 651 652 653 654 655 656 657 658 659 660 661 662 663 664 665 666 667 668 669 670 671 672 673 674 675 676 677 678 679 680 681 682 683 684 685 686 687 688 689 690 691 692 693 694 695 696 697 698 699 700 701 702 703
|
<?xml version="1.0" encoding="UTF-8" standalone="no"?>
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8" />
<title>Berkeley DB 4.6.21 Change Log</title>
<link rel="stylesheet" href="gettingStarted.css" type="text/css" />
<meta name="generator" content="DocBook XSL Stylesheets V1.73.2" />
<link rel="start" href="index.html" title="Berkeley DB Programmer's Reference Guide" />
<link rel="up" href="upgrade_4_6_toc.html" title="Chapter 43. Upgrading Berkeley DB 4.5 applications to Berkeley DB 4.6" />
<link rel="prev" href="upgrade_4_6_disk.html" title="Release 4.6: Upgrade Requirements" />
<link rel="next" href="upgrade_4_7_toc.html" title="Chapter 44. Upgrading Berkeley DB 4.6 applications to Berkeley DB 4.7" />
</head>
<body>
<div class="navheader">
<table width="100%" summary="Navigation header">
<tr>
<th colspan="3" align="center">Berkeley DB 4.6.21 Change Log</th>
</tr>
<tr>
<td width="20%" align="left"><a accesskey="p" href="upgrade_4_6_disk.html">Prev</a> </td>
<th width="60%" align="center">Chapter 43. Upgrading Berkeley DB 4.5 applications to Berkeley DB 4.6</th>
<td width="20%" align="right"> <a accesskey="n" href="upgrade_4_7_toc.html">Next</a></td>
</tr>
</table>
<hr />
</div>
<div class="sect1" lang="en" xml:lang="en">
<div class="titlepage">
<div>
<div>
<h2 class="title" style="clear: both"><a id="changelog_4_6"></a>Berkeley DB 4.6.21 Change Log</h2>
</div>
</div>
</div>
<div class="toc">
<dl>
<dt>
<span class="sect2">
<a href="changelog_4_6.html#id1653387">4.6.21 Patches:</a>
</span>
</dt>
<dt>
<span class="sect2">
<a href="changelog_4_6.html#id1653476">4.6.19 Patches</a>
</span>
</dt>
<dt>
<span class="sect2">
<a href="changelog_4_6.html#id1653546">Database or Log File On-Disk Format Changes:</a>
</span>
</dt>
<dt>
<span class="sect2">
<a href="changelog_4_6.html#id1653580">New Features:</a>
</span>
</dt>
<dt>
<span class="sect2">
<a href="changelog_4_6.html#id1653592">Database Environment Changes:</a>
</span>
</dt>
<dt>
<span class="sect2">
<a href="changelog_4_6.html#id1653737">Concurrent Data Store Changes:</a>
</span>
</dt>
<dt>
<span class="sect2">
<a href="changelog_4_6.html#id1653769">General Access Method Changes:</a>
</span>
</dt>
<dt>
<span class="sect2">
<a href="changelog_4_6.html#id1653609">Btree Access Method Changes:</a>
</span>
</dt>
<dt>
<span class="sect2">
<a href="changelog_4_6.html#id1653658">Hash Access Method Changes:</a>
</span>
</dt>
<dt>
<span class="sect2">
<a href="changelog_4_6.html#id1653000">Queue Access Method Changes:</a>
</span>
</dt>
<dt>
<span class="sect2">
<a href="changelog_4_6.html#id1652968">Recno Access Method Changes:</a>
</span>
</dt>
<dt>
<span class="sect2">
<a href="changelog_4_6.html#id1653802">C++-specific API Changes:</a>
</span>
</dt>
<dt>
<span class="sect2">
<a href="changelog_4_6.html#id1653809">Java-specific API Changes:</a>
</span>
</dt>
<dt>
<span class="sect2">
<a href="changelog_4_6.html#id1653577">Java collections and bind API Changes:</a>
</span>
</dt>
<dt>
<span class="sect2">
<a href="changelog_4_6.html#id1653968">Tcl-specific API Changes:</a>
</span>
</dt>
<dt>
<span class="sect2">
<a href="changelog_4_6.html#id1653596">RPC-specific Client/Server Changes:</a>
</span>
</dt>
<dt>
<span class="sect2">
<a href="changelog_4_6.html#id1653932">Replication Changes:</a>
</span>
</dt>
<dt>
<span class="sect2">
<a href="changelog_4_6.html#id1653963">XA Resource Manager Changes:</a>
</span>
</dt>
<dt>
<span class="sect2">
<a href="changelog_4_6.html#id1653009">Locking Subsystem Changes:</a>
</span>
</dt>
<dt>
<span class="sect2">
<a href="changelog_4_6.html#id1653751">Logging Subsystem Changes:</a>
</span>
</dt>
<dt>
<span class="sect2">
<a href="changelog_4_6.html#id1653827">Memory Pool Subsystem Changes:</a>
</span>
</dt>
<dt>
<span class="sect2">
<a href="changelog_4_6.html#id1654190">Transaction Subsystem Changes:</a>
</span>
</dt>
<dt>
<span class="sect2">
<a href="changelog_4_6.html#id1654216">Utility Changes:</a>
</span>
</dt>
<dt>
<span class="sect2">
<a href="changelog_4_6.html#id1654015">Configuration, Documentation, Portability and Build Changes:</a>
</span>
</dt>
</dl>
</div>
<div class="sect2" lang="en" xml:lang="en">
<div class="titlepage">
<div>
<div>
<h3 class="title"><a id="id1653387"></a>4.6.21 Patches:</h3>
</div>
</div>
</div>
<div class="orderedlist">
<ol type="1">
<li>Fix a bug where mutex contention in database environments configured
for hybrid mutex support could result in performance degradation.
[#15646]</li>
<li>Fix a bug where closing a database handle after aborting a
transaction which included a failed open of that database handle could
result in application failure. [#15650]</li>
<li>Fix multiple MVCC bugs including a race which <span class="emphasis"><em>could result in
incorrect data being returned</em></span> to the application. [#15653]</li>
<li>Fix a bug where a database store into a Hash database could
self-deadlock in a database environment configured for the Berkeley DB
Concurrent Data Store product and with a free-threaded DB_ENV or DB
handle. [#15718]</li>
<li>Fix an installation bug where Berkeley DB's PHP header file was not
installed in the correct place.</li>
</ol>
</div>
</div>
<div class="sect2" lang="en" xml:lang="en">
<div class="titlepage">
<div>
<div>
<h3 class="title"><a id="id1653476"></a>4.6.19 Patches</h3>
</div>
</div>
</div>
<div class="orderedlist">
<ol type="1">
<li>Fix a bug where a client in a two-site replication group could
become master, after failure of the existing master, even if the client
had priority 0. [#15388]</li>
<li>Fix a bug where 32-bit builds on 64-bit machines could immediately
core dump because of a misaligned access. [#15643]</li>
<li>Fix a bug where attempts to configure a database for MVCC in the
Java API were silently ignored. [#15644]</li>
<li>Fix a bug where database environments configured for replication and
verbose output could drop core. [#15651]</li>
</ol>
</div>
</div>
<div class="sect2" lang="en" xml:lang="en">
<div class="titlepage">
<div>
<div>
<h3 class="title"><a id="id1653546"></a>Database or Log File On-Disk Format Changes:</h3>
</div>
</div>
</div>
<div class="orderedlist">
<ol type="1">
<li>The on-disk log format has changed.</li>
<li>The format of Hash database pages was changed in the Berkeley DB 4.6
release, and items are now stored in sorted order.
<span class="emphasis"><em>The format changes are entirely backward-compatible, and no database
upgrades are needed.</em></span>
However, upgrading existing databases can offer significant performance
improvements. Note that databases created using the 4.6 release may not
be usable with earlier Berkeley DB releases.</li>
</ol>
</div>
</div>
<div class="sect2" lang="en" xml:lang="en">
<div class="titlepage">
<div>
<div>
<h3 class="title"><a id="id1653580"></a>New Features:</h3>
</div>
</div>
</div>
<div class="orderedlist">
<ol type="1">
<li>Add support for a cursor DB_PREV_DUP flag, which moves the cursor
to the previous key/data pair if it's a duplicate of the current
key/data pair. [#4801]</li>
<li>Add the ability to set cache page priority on a database or cursor
handle. [#11886]</li>
<li>Add verbose output tracing for filesystem operations. [#13760]</li>
<li>Port Berkeley DB to Qualcomm's Binary Runtime Environment for
Wireless (BREW). [#14562]</li>
<li>Port Berkeley DB to WinCE. [#15312]</li>
<li>Port Berkeley DB to S60. [#15371]</li>
<li>Add a key_exists method to the DB handle. [#15374]</li>
<li>Applications may now begin processing new transactions while previously
prepared, but unresolved, transactions are still pending. [#14754]</li>
<li>Significant performance improvements in the Hash access method. [#15017]</li>
</ol>
</div>
</div>
<div class="sect2" lang="en" xml:lang="en">
<div class="titlepage">
<div>
<div>
<h3 class="title"><a id="id1653592"></a>Database Environment Changes:</h3>
</div>
</div>
</div>
<div class="orderedlist">
<ol type="1">
<li>Add support to close open file handles in the case of catastrophic
database environment failure so applications that do not exit and
restart on failure won't leak file handles. [#6538]</li>
<li>Replace the Berkeley DB shared memory allocator with a new
implementation, intended to decrease the performance drop-off seen in
database environments having working sets that are larger than the
cache, especially database environments with multiple cache page sizes.
[#13122]</li>
<li>Fix a bug that would incorrectly cause a thread to appear to be
in the Berkeley DB API after a call to db_create. [#14562]</li>
<li>Allow database close prior to resolving all transactions updating
the database. [#14785]</li>
<li>Fix a bug where the db_stat utility -Z flag and the statistics
method's DB_STAT_CLEAR flag could clear mutex statistics too quickly,
leading to incorrect values being displayed. [#15032]</li>
<li>Fix a bug where removal of a file after and open/close pair spanning
the most recent checkpoint log-sequence-numbers made recovery fail.
[#15092]</li>
<li>Fix a bug that could leave an environment unrecoverable if FTRUNCATE
was not set and a roll-forward to a timestamp was interrupted between the
truncation of the log and the recording of aborted allocations. [#15108]</li>
<li> Fix a bug where recovery of a rename operation could fail if the
rename occurred in a directory that no longer existed. [#15119]</li>
<li>Fix a bug that could cause recovery to report a "File exists"
error if a committed create was partially recovered by a previously
failed recovery operation. [#15151]</li>
<li>Fix a bug where the DbEnv.get_thread_count method implementation was
missing from the Berkeley DB 4.5 release. [#15201]</li>
<li>Fix a bug where replication operations were not reported properly
when the DbEnv.failchk method was called. [#15094]</li>
<li> Fixed a bug that caused SEQ->remove not to use a transaction
if the sequence was opened on a transactional database handle but no
transaction was specified on the call. [#15235]</li>
<li>Fix a bug where accesses to the database environment reference count
could race, causing the DB_ENV->remove method to incorrectly remove
or not remove a database environment. [#15240]</li>
<li>Fix a bug that could cause a recovery failure if a partial record
was written near the end of a log file before a crash and then never
overwritten after recovery runs and before a log file switch occurs.
[#15302]</li>
<li>Fix a bug that could fire a diagnostic assertion if an error occurred
during a database environment open. [#15309]</li>
<li> Fix a bug where memp_trickle attempts to flush an infinite number
of buffers. [#15342]</li>
<li>Cause application updates of the DB_ENV->set_mp_max_write values
to affect already running cache flush operations. [#15342]</li>
<li>Fix a bug which could cause system hang if a checkpoint happened at
the same time as a database file create or rename. [#15346]</li>
<li>Fix a bug which could cause application failure if the open of a
subdatabase failed while other database opens were happening. [#15346]</li>
<li>Fix a bug that could cause recovery to not process a transaction
properly if the transaction was started before the transaction IDs were
reset but did not put its first record into the log until after the
txn_recycle record. [#15400]</li>
<li>Fix a bug that could cause a thread in cache allocation to loop
infinitely. [#15406]</li>
<li>Fix a bug that could cause recovery to report a Log Sequence Error
on systems without the ftruncate system call where a page allocation
occurred and the database metadata page was forced out of cache without
being marked dirty and then had to be recovered. [#15441]</li>
<li>Fix a bug on systems lacking the ftruncate system call, where a page
may be improperly linked into the free list if archive recovery was done
in multiple steps, that is, applying additional logs to the same
databases. [#15557]</li>
</ol>
</div>
</div>
<div class="sect2" lang="en" xml:lang="en"><div class="titlepage"><div><div><h3 class="title"><a id="id1653737"></a>Concurrent Data Store Changes:</h3></div></div></div>
None.
</div>
<div class="sect2" lang="en" xml:lang="en">
<div class="titlepage">
<div>
<div>
<h3 class="title"><a id="id1653769"></a>General Access Method Changes:</h3>
</div>
</div>
</div>
<div class="orderedlist">
<ol type="1">
<li>Add a feature where applications can specify a custom comparison
function for the Hash access method [#4109]</li>
<li>Open, create, close and removal of non-transactional databases is
are longer logged in transactional database environments unless debug
logging is enabled. [#8037]</li>
<li>Add the ability to set cache page priority on a database or cursor
handle. [#11886]</li>
<li>fix a bug where the DB_ENV->fileid_reset method failed when
called on on encrypted or check-summed databases. [#13990]</li>
<li>Fix a bug where the DB->fd method failed when called on
in-memory databases. [#14157]</li>
<li>Fix a bug where an attempt to open a Recno database with a backing
file that does not exist could report an error because it couldn't
remove a temporary file. [#14160]</li>
<li>Reverse a change found in previous releases which disallowed setting
"partial" flags on key DBTs for DB and DbCursor put method calls. [#14520]</li>
<li>Fix a bug where transactional file operations, such as remove or
rename, could leak file handles. [#15222]</li>
<li>Fix a bug that could cause the in-memory sorted freelist used by the
DB->compact method not to be freed if transaction or lock timeouts
were set in the environment. [#15292]</li>
<li>Add the DB->get_multiple method, which returns if the DB handle
references a "master" database in the physical file. [#15352]</li>
<li>Fix a bug that could cause an DB_INORDER, DB->get method
DB_CONSUME operation to loop if the Queue database was missing a record
due to a rollback by a writer or a non-queue insert in the queue.
[#15452]</li>
<li>Fix a bug preventing database removal after application or system
failure in a database environment configured for in-memory logging.
[#15459]</li>
</ol>
</div>
</div>
<div class="sect2" lang="en" xml:lang="en"><div class="titlepage"><div><div><h3 class="title"><a id="id1653609"></a>Btree Access Method Changes:</h3></div></div></div>
None.
</div>
<div class="sect2" lang="en" xml:lang="en">
<div class="titlepage">
<div>
<div>
<h3 class="title"><a id="id1653658"></a>Hash Access Method Changes:</h3>
</div>
</div>
</div>
<div class="orderedlist">
<ol type="1">
<li>Change the internal format of Hash database pages, storing items in
sorted order. There are no externally visible changes, and hash
databases using historic on-page formats do not require an explicit
upgrade. (However, upgrading existing databases can offer significant
performance improvements.) [#15017]</li>
<li>Fix a bug preventing LSNs from being reset on hash databases when
the databases were configured with a non-standard hash function.
[#15567]</li>
</ol>
</div>
</div>
<div class="sect2" lang="en" xml:lang="en">
<div class="titlepage">
<div>
<div>
<h3 class="title"><a id="id1653000"></a>Queue Access Method Changes:</h3>
</div>
</div>
</div>
<div class="orderedlist">
<ol type="1">
<li>Fix a bug which could cause a Queue extent file to be incorrectly
removed if an empty extent file was being closed by one thread and being
updated by another thread (which was using random access operations).
[#9101]</li>
</ol>
</div>
</div>
<div class="sect2" lang="en" xml:lang="en"><div class="titlepage"><div><div><h3 class="title"><a id="id1652968"></a>Recno Access Method Changes:</h3></div></div></div>
None.
</div>
<div class="sect2" lang="en" xml:lang="en"><div class="titlepage"><div><div><h3 class="title"><a id="id1653802"></a>C++-specific API Changes:</h3></div></div></div>
None.
</div>
<div class="sect2" lang="en" xml:lang="en">
<div class="titlepage">
<div>
<div>
<h3 class="title"><a id="id1653809"></a>Java-specific API Changes:</h3>
</div>
</div>
</div>
<div class="orderedlist">
<ol type="1">
<li>Add a feature where an exception is thrown by the Java API, the
Berkeley DB error message is now included in the exception object.
[#11870]</li>
<li>Fix a bug which can cause a JVM crash when doing a partial get
operation. [#15143]</li>
<li>Fix a bug which prevented the use of Berkeley DB sequences from
Java. [#15220]</li>
<li>Fix multiple bugs where DBTs were not being copied correctly in the
Java replication APIs. [#15223]</li>
<li>Add transaction.commitWriteNoSync to the Java API. [#15376]</li>
</ol>
</div>
</div>
<div class="sect2" lang="en" xml:lang="en">
<div class="titlepage">
<div>
<div>
<h3 class="title"><a id="id1653577"></a>Java collections and bind API Changes:</h3>
</div>
</div>
</div>
<div class="orderedlist">
<ol type="1">
<li>Change SerialBinding to use the current thread's context class
loader when loading application classes. This allows the JE jar file
to be deployed in application servers and other containers as a shared
library rather than as an application jar. [#15447]</li>
<li>Tuple bindings now support the java.math.BigInteger type. Like other
tuple binding values, BigInteger values are sorted in natural integer
order by default, without using a custom comparator. For details please
see the Javadoc for: com.sleepycat.bind.tuple.TupleInput.readBigInteger
com.sleepycat.bind.tuple.TupleOutput.writeBigInteger
com.sleepycat.bind.tuple.BigIntegerBinding [#15244]</li>
<li>Add tuple binding methods for reading and writing packed int and
long values. Packed integer values take less space, but take slightly
more processing time to read and write. See: TupleInput.readPackedInt
TupleInput.getPackedIntByteLength TupleInput.readPackedLong
TupleInput.getPackedLongByteLength TupleOutput.writePackedInt
TupleOutput.writePackedLong PackedInteger [#15422]</li>
<li>The Collections API has been enhanced so that auto-commit works for
the standard Java Iterator.remove(), set() and add() methods. Previously
it was necessary to explicitly begin and commit a transaction in order
to call these methods, when the underlying Database was transactional.
Note that starting a transaction is still necessary when calling these
methods if the StoredCollection.storedIterator method is used. [#15401]</li>
<li>Fix a bug that causes a memory leak for applications where both of
the following are true: many Environment objects are opened and closed,
and the CurrentTransaction or TransactionRunner class is used. [#15444]</li>
</ol>
</div>
</div>
<div class="sect2" lang="en" xml:lang="en"><div class="titlepage"><div><div><h3 class="title"><a id="id1653968"></a>Tcl-specific API Changes:</h3></div></div></div>
None.
</div>
<div class="sect2" lang="en" xml:lang="en"><div class="titlepage"><div><div><h3 class="title"><a id="id1653596"></a>RPC-specific Client/Server Changes:</h3></div></div></div>
None.
</div>
<div class="sect2" lang="en" xml:lang="en">
<div class="titlepage">
<div>
<div>
<h3 class="title"><a id="id1653932"></a>Replication Changes:</h3>
</div>
</div>
</div>
<div class="orderedlist">
<ol type="1">
<li>Fix a bug where transactions could be rolled-back if an existing
replication group master was partitioned and unable to participate in
an election. [#14752]</li>
<li>Add a new event when a replication manager framework master fails
to send and confirm receipt by clients of a "permanent" message.
[#14775]</li>
<li>Fix a race where multiple threads might attempt to process a
LOGREADY condition. [#14902]</li>
<li>Change the DB_VERB_REPLICATION flag to no longer require the
Berkeley DB library be built with the --enable-diagnostic configuration
option to output additional replication logging information. [#14991]</li>
<li>Fix a bug with elections occurring during internal init of a
replication client site. [#15057]</li>
<li>Fix lockout code to lockout message threads and API separately.
Send indication that log requests is for internal init. [#15067]</li>
<li>Replication manager changed to retry host-name look-up failures,
since they could be caused by transient name server outage.
[#15081]</li>
<li>Fix a bug which led to memory corruption when the sending of a bulk
buffer resulted in an error. [#15100]</li>
<li>A throttling limit of 10 megabytes is now set by default in a newly
created database environment (see the DbEnv.rep_set_limit method).
[#15115]</li>
<li>Fix a bug in ALL_REQ handling where master could get a DB_NOTFOUND.
[#15116]</li>
<li>Fix a bug which could lead to client sites repeatedly but unproductively
calling for an election, when a master site already exists. [#15128]</li>
<li>Modify gap processing algorithms so XXX_MORE messages ask for data
beyond what it just processed, not an earlier gap that might exist.
[#15136]</li>
<li>Fixed a bug in the ex_rep example application which could cause the
last few transactions to disappear when shutting down the sites of the
replication group gracefully. [#15162]</li>
<li>Fix a bug where if a client crashed during internal init, its
database environment would be left in a confused state, making it
impossible to synchronize again with the master. [#15177]</li>
<li>Fix a bug where election flags are not cleared atomically with the
setting of the new master ID. [#15186]</li>
<li>Fix a bug which would cause Berkeley DB to crash if an internal init
happened when there were no database files at the master. [#15227]</li>
<li>It is now guaranteed that the DB_EVENT_REP_STARTUPDONE event will
be presented to the application after the corresponding
DB_EVENT_REP_NEWMASTER event, even in the face of extreme scheduling
anomalies. [#15265]</li>
<li>Fix minor memory leaks in the replication manager. [#15239] [#15256]</li>
<li>Fix a bug which caused the replication manager to lose track of a
failed connection, resulting in the inability to accept a replacement
connection. [#15311]</li>
<li>Fix a bug where a client starting an election when the rest of the
replication group already had an established master could confuse
replication management at the other client sites, leading to failure to
properly acknowledge PERM transactions from the master. [#15428]</li>
<li>Add support for reporting Replication Manager statistics. [#15430]</li>
<li>Fix a bug where a send failure during processing of a request
message from a client could erroneously appear to the application as an
EPERM system error. [#15436]</li>
<li>Client now sets STARTUPDONE at the end of the synchronization phase
when it has caught up to the end of the master's transaction log, without
requiring ongoing transactions at the master. [#15542]</li>
<li>Fix a bug in sleep-time calculation which could cause a Replication
Manager failure. [#15552]</li>
</ol>
</div>
</div>
<div class="sect2" lang="en" xml:lang="en"><div class="titlepage"><div><div><h3 class="title"><a id="id1653963"></a>XA Resource Manager Changes:</h3></div></div></div>
None.
</div>
<div class="sect2" lang="en" xml:lang="en">
<div class="titlepage">
<div>
<div>
<h3 class="title"><a id="id1653009"></a>Locking Subsystem Changes:</h3>
</div>
</div>
</div>
<div class="orderedlist">
<ol type="1">
<li>Change the DB_ENV->lock_detect method to return the number of
transactions timed out in addition to those were rejected due to
deadlock. [#15281]</li>
</ol>
</div>
</div>
<div class="sect2" lang="en" xml:lang="en"><div class="titlepage"><div><div><h3 class="title"><a id="id1653751"></a>Logging Subsystem Changes:</h3></div></div></div>
None.
</div>
<div class="sect2" lang="en" xml:lang="en">
<div class="titlepage">
<div>
<div>
<h3 class="title"><a id="id1653827"></a>Memory Pool Subsystem Changes:</h3>
</div>
</div>
</div>
<div class="orderedlist">
<ol type="1">
<li>Fix a bug that could cause a checkpoint to hang if a database was
closed while the checkpoint was forcing that file to disk and all the
pages for that database were replaced in the cache. [#15135]</li>
<li>Fix a bug where a system error in closing a file could result in a
core dump. [#15137]</li>
<li>Fix MVCC statistics counts for private database environments. [#15218]</li>
</ol>
</div>
</div>
<div class="sect2" lang="en" xml:lang="en">
<div class="titlepage">
<div>
<div>
<h3 class="title"><a id="id1654190"></a>Transaction Subsystem Changes:</h3>
</div>
</div>
</div>
<div class="orderedlist">
<ol type="1">
<li>Fix a bug where creating a database with the DB_TXN_NOTDURABLE flag
set would still write a log record. [#15386]</li>
<li>Change transaction checkpoint to wait only for pages being updated
during the checkpoint. [#14710]</li>
</ol>
</div>
</div>
<div class="sect2" lang="en" xml:lang="en">
<div class="titlepage">
<div>
<div>
<h3 class="title"><a id="id1654216"></a>Utility Changes:</h3>
</div>
</div>
</div>
<div class="orderedlist">
<ol type="1">
<li>Fix a bug that prevented db_load from handling subdatabase names
that were of zero length. [#8204]</li>
<li>Fix a bug where the db_hotbackup utility did not clean out and record
the log file numbers in the backup directory when both the -u and -D flags
were specified. [#15395]</li>
</ol>
</div>
</div>
<div class="sect2" lang="en" xml:lang="en">
<div class="titlepage">
<div>
<div>
<h3 class="title"><a id="id1654015"></a>Configuration, Documentation, Portability and Build Changes:</h3>
</div>
</div>
</div>
<div class="orderedlist">
<ol type="1">
<li>Berkeley DB no longer supports process-shared database environments
on Windows 9X platforms; the DB_PRIVATE flag must always be specified
to the DB_ENV->open method. [#13766]</li>
<li>Port Berkeley DB to Qualcomm's Binary Runtime Environment for
Wireless (BREW). [#14562]</li>
<li>Compile SWIG-generated code with the -fno-strict-aliasing flag when
using the GNU gcc compiler. [#14953]</li>
<li>Changed include files so ENOENT is resolved on Windows. [#15078]</li>
<li>Port Berkeley DB to WinCE. [#15312]</li>
<li>Port Berkeley DB to S60. [#15371]</li>
<li>Add the db_hotbackup executable to the Windows MSI installer. [#15372]</li>
<li>Change the db_hotbackup utility to use the Berkeley DB library
portability layer. [#15415]</li>
<li>Re-write the GNU gcc mutex implementation on the x86 platform to
avoid compiler errors. [#15461]</li>
<li>Fix a bug with non-HFS filesystems under OS X which could affect
data durability. [#15501]</li>
</ol>
</div>
</div>
</div>
<div class="navfooter">
<hr />
<table width="100%" summary="Navigation footer">
<tr>
<td width="40%" align="left"><a accesskey="p" href="upgrade_4_6_disk.html">Prev</a> </td>
<td width="20%" align="center">
<a accesskey="u" href="upgrade_4_6_toc.html">Up</a>
</td>
<td width="40%" align="right"> <a accesskey="n" href="upgrade_4_7_toc.html">Next</a></td>
</tr>
<tr>
<td width="40%" align="left" valign="top">Release 4.6: Upgrade Requirements </td>
<td width="20%" align="center">
<a accesskey="h" href="index.html">Home</a>
</td>
<td width="40%" align="right" valign="top"> Chapter 44. Upgrading Berkeley DB 4.6 applications to Berkeley DB 4.7</td>
</tr>
</table>
</div>
</body>
</html>
|