1<!--$Id: asr.so,v 1.3 2006/08/24 16:32:32 bostic Exp $--> 2<!--Copyright (c) 1997,2008 Oracle. All rights reserved.--> 3<!--See the file LICENSE for redistribution information.--> 4<html> 5<head> 6<title>Berkeley DB Reference Guide: Release 4.0: application-specific recovery</title> 7<meta name="description" content="Berkeley DB: An embedded database programmatic toolkit."> 8<meta name="keywords" content="embedded,database,programmatic,toolkit,btree,hash,hashing,transaction,transactions,locking,logging,access method,access methods,Java,C,C++"> 9</head> 10<body bgcolor=white> 11<table width="100%"><tr valign=top> 12<td><b><dl><dt>Berkeley DB Reference Guide:<dd>Upgrading Berkeley DB Applications</dl></b></td> 13<td align=right><a href="/upgrade.4.0/cxx.html"><img src="/images/prev.gif" alt="Prev"></a><a href="/toc.html"><img src="/images/ref.gif" alt="Ref"></a><a href="/upgrade.4.0/disk.html"><img src="/images/next.gif" alt="Next"></a> 14</td></tr></table> 15<p align=center><b>Release 4.0: application-specific recovery</b></p> 16<p>If you have created your own logging and recovery routines, you may need 17to upgrade them to the Berkeley DB 4.0 release.</p> 18<p>First, you should regenerate your logging, print, read and the other 19automatically generated routines, using the dist/gen_rec.awk tool 20included in the Berkeley DB distribution.</p> 21<p>Next, compare the template file code generated by the gen_rec.awk tool 22against the code generated by the last release in which you built a 23template file. Any changes in the templates should be incorporated into 24the recovery routines you have written.</p> 25<p>Third, if your recovery functions refer to <a href="/api_c/env_set_app_dispatch.html#DB_TXN_FORWARD_ROLL">DB_TXN_FORWARD_ROLL</a> 26(that is, your code checks for that particular operation code), you 27should replace it with DB_REDO(op) which compares the operation code to 28both <a href="/api_c/env_set_app_dispatch.html#DB_TXN_FORWARD_ROLL">DB_TXN_FORWARD_ROLL</a> and <a href="/api_c/env_set_app_dispatch.html#DB_TXN_APPLY">DB_TXN_APPLY</a>. 29(<a href="/api_c/env_set_app_dispatch.html#DB_TXN_APPLY">DB_TXN_APPLY</a> is a potential value for the operation code as of 30the 4.0 release.)</p> 31<p>Finally, if you have created your own logging and recovery routines, we 32recommend you contact us and ask us to review those routines for you.</p> 33<table width="100%"><tr><td><br></td><td align=right><a href="/upgrade.4.0/cxx.html"><img src="/images/prev.gif" alt="Prev"></a><a href="/toc.html"><img src="/images/ref.gif" alt="Ref"></a><a href="/upgrade.4.0/disk.html"><img src="/images/next.gif" alt="Next"></a> 34</td></tr></table> 35<p><font size=1>Copyright (c) 1996,2008 Oracle. All rights reserved.</font> 36</body> 37</html> 38