mirror of
https://github.com/berkeleydb/libdb.git
synced 2024-11-16 17:16:25 +00:00
706 lines
32 KiB
HTML
706 lines
32 KiB
HTML
<?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 Upgrade Guide" />
|
||
<link rel="up" href="upgrade_4_6_toc.html" title="Chapter 4. Upgrading Berkeley DB 4.5 applications to Berkeley DB 4.6" />
|
||
<link rel="prev" href="upgrade_4_6_disk.html" title="Upgrade Requirements" />
|
||
<link rel="next" href="upgrade_4_5_toc.html" title="Chapter 5. Upgrading Berkeley DB 4.4 applications to Berkeley DB 4.5" />
|
||
</head>
|
||
<body>
|
||
<div xmlns="" class="navheader">
|
||
<div class="libver">
|
||
<p>Library Version 11.2.5.3</p>
|
||
</div>
|
||
<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 4. Upgrading Berkeley DB 4.5 applications to Berkeley DB 4.6</th>
|
||
<td width="20%" align="right"> <a accesskey="n" href="upgrade_4_5_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#idp450680">4.6.21 Patches:</a>
|
||
</span>
|
||
</dt>
|
||
<dt>
|
||
<span class="sect2">
|
||
<a href="changelog_4_6.html#idm908576">4.6.19 Patches</a>
|
||
</span>
|
||
</dt>
|
||
<dt>
|
||
<span class="sect2">
|
||
<a href="changelog_4_6.html#idm7928">Database or Log File On-Disk Format Changes:</a>
|
||
</span>
|
||
</dt>
|
||
<dt>
|
||
<span class="sect2">
|
||
<a href="changelog_4_6.html#idp454824">New Features:</a>
|
||
</span>
|
||
</dt>
|
||
<dt>
|
||
<span class="sect2">
|
||
<a href="changelog_4_6.html#idp457632">Database Environment Changes:</a>
|
||
</span>
|
||
</dt>
|
||
<dt>
|
||
<span class="sect2">
|
||
<a href="changelog_4_6.html#idp459192">Concurrent Data Store Changes:</a>
|
||
</span>
|
||
</dt>
|
||
<dt>
|
||
<span class="sect2">
|
||
<a href="changelog_4_6.html#idp457944">General Access Method Changes:</a>
|
||
</span>
|
||
</dt>
|
||
<dt>
|
||
<span class="sect2">
|
||
<a href="changelog_4_6.html#idp474728">Btree Access Method Changes:</a>
|
||
</span>
|
||
</dt>
|
||
<dt>
|
||
<span class="sect2">
|
||
<a href="changelog_4_6.html#idp459816">Hash Access Method Changes:</a>
|
||
</span>
|
||
</dt>
|
||
<dt>
|
||
<span class="sect2">
|
||
<a href="changelog_4_6.html#idp444904">Queue Access Method Changes:</a>
|
||
</span>
|
||
</dt>
|
||
<dt>
|
||
<span class="sect2">
|
||
<a href="changelog_4_6.html#idp462616">Recno Access Method Changes:</a>
|
||
</span>
|
||
</dt>
|
||
<dt>
|
||
<span class="sect2">
|
||
<a href="changelog_4_6.html#idp462872">C++-specific API Changes:</a>
|
||
</span>
|
||
</dt>
|
||
<dt>
|
||
<span class="sect2">
|
||
<a href="changelog_4_6.html#idp480856">Java-specific API Changes:</a>
|
||
</span>
|
||
</dt>
|
||
<dt>
|
||
<span class="sect2">
|
||
<a href="changelog_4_6.html#idp463456">Java collections and bind API Changes:</a>
|
||
</span>
|
||
</dt>
|
||
<dt>
|
||
<span class="sect2">
|
||
<a href="changelog_4_6.html#idp463944">Tcl-specific API Changes:</a>
|
||
</span>
|
||
</dt>
|
||
<dt>
|
||
<span class="sect2">
|
||
<a href="changelog_4_6.html#idp464200">RPC-specific Client/Server Changes:</a>
|
||
</span>
|
||
</dt>
|
||
<dt>
|
||
<span class="sect2">
|
||
<a href="changelog_4_6.html#idp485640">Replication Changes:</a>
|
||
</span>
|
||
</dt>
|
||
<dt>
|
||
<span class="sect2">
|
||
<a href="changelog_4_6.html#idp464456">XA Resource Manager Changes:</a>
|
||
</span>
|
||
</dt>
|
||
<dt>
|
||
<span class="sect2">
|
||
<a href="changelog_4_6.html#idp464976">Locking Subsystem Changes:</a>
|
||
</span>
|
||
</dt>
|
||
<dt>
|
||
<span class="sect2">
|
||
<a href="changelog_4_6.html#idp452616">Logging Subsystem Changes:</a>
|
||
</span>
|
||
</dt>
|
||
<dt>
|
||
<span class="sect2">
|
||
<a href="changelog_4_6.html#idp453480">Memory Pool Subsystem Changes:</a>
|
||
</span>
|
||
</dt>
|
||
<dt>
|
||
<span class="sect2">
|
||
<a href="changelog_4_6.html#idp467120">Transaction Subsystem Changes:</a>
|
||
</span>
|
||
</dt>
|
||
<dt>
|
||
<span class="sect2">
|
||
<a href="changelog_4_6.html#idp474792">Utility Changes:</a>
|
||
</span>
|
||
</dt>
|
||
<dt>
|
||
<span class="sect2">
|
||
<a href="changelog_4_6.html#idp478856">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="idp450680"></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="idm908576"></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="idm7928"></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="idp454824"></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="idp457632"></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="idp459192"></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="idp457944"></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="idp474728"></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="idp459816"></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="idp444904"></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="idp462616"></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="idp462872"></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="idp480856"></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="idp463456"></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="idp463944"></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="idp464200"></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="idp485640"></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="idp464456"></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="idp464976"></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="idp452616"></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="idp453480"></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="idp467120"></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="idp474792"></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="idp478856"></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_5_toc.html">Next</a></td>
|
||
</tr>
|
||
<tr>
|
||
<td width="40%" align="left" valign="top">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 5. Upgrading Berkeley DB 4.4 applications to Berkeley DB 4.5</td>
|
||
</tr>
|
||
</table>
|
||
</div>
|
||
</body>
|
||
</html>
|