<?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>DB_ENV->log_put()</title> <link rel="stylesheet" href="apiReference.css" type="text/css" /> <meta name="generator" content="DocBook XSL Stylesheets V1.73.2" /> <link rel="start" href="index.html" title="Berkeley DB C API Reference" /> <link rel="up" href="lsn.html" title="Chapter 7. The DB_LSN Handle" /> <link rel="prev" href="logprintf.html" title="DB_ENV->log_printf()" /> <link rel="next" href="envlog_set_config.html" title="DB_ENV->log_set_config()" /> </head> <body> <div class="navheader"> <table width="100%" summary="Navigation header"> <tr> <th colspan="3" align="center">DB_ENV->log_put()</th> </tr> <tr> <td width="20%" align="left"><a accesskey="p" href="logprintf.html">Prev</a> </td> <th width="60%" align="center">Chapter 7. The DB_LSN Handle </th> <td width="20%" align="right"> <a accesskey="n" href="envlog_set_config.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="logput"></a>DB_ENV->log_put()</h2> </div> </div> </div> <pre class="programlisting">#include <db.h> int DB_ENV->log_put(DB_ENV *env, DB_LSN *lsn, const DBT *data, u_int32_t flags); </pre> <p> The <code class="methodname">DB_ENV->log_put()</code> method appends records to the log. The <a class="link" href="lsn.html" title="Chapter 7. The DB_LSN Handle">DB_LSN</a> of the put record is returned in the <span class="bold"><strong>lsn</strong></span> parameter. </p> <p> The <code class="methodname">DB_ENV->log_put()</code> <span> <span> method returns a non-zero error value on failure and 0 on success. </span> </span> </p> <div class="sect2" lang="en" xml:lang="en"> <div class="titlepage"> <div> <div> <h3 class="title"><a id="id1681545"></a>Parameters</h3> </div> </div> </div> <div class="sect3" lang="en" xml:lang="en"> <div class="titlepage"> <div> <div> <h4 class="title"><a id="id1681911"></a>data</h4> </div> </div> </div> <p> The <span class="bold"><strong>data</strong></span> parameter is the record to write to the log. </p> <p> The caller is responsible for providing any necessary structure to <span class="bold"><strong>data</strong></span>. (For example, in a write-ahead logging protocol, the application must understand what part of <span class="bold"><strong>data</strong></span> is an operation code, what part is redo information, and what part is undo information. In addition, most transaction managers will store in <span class="bold"><strong>data</strong></span> the <a class="link" href="lsn.html" title="Chapter 7. The DB_LSN Handle">DB_LSN</a> of the previous log record for the same transaction, to support chaining back through the transaction's log records during undo.) </p> </div> <div class="sect3" lang="en" xml:lang="en"> <div class="titlepage"> <div> <div> <h4 class="title"><a id="id1681976"></a>flags</h4> </div> </div> </div> <p> The <span class="bold"><strong>flags</strong></span> parameter must be set to 0 or the following value: </p> <div class="itemizedlist"> <ul type="disc"> <li> <p><a id="put_DB_FLUSH"></a> <code class="literal">DB_FLUSH</code> </p> <p> The log is forced to disk after this record is written, guaranteeing that all records with <a class="link" href="lsn.html" title="Chapter 7. The DB_LSN Handle">DB_LSN</a> values less than or equal to the one being "put" are on disk before <code class="methodname">DB_ENV->log_put()</code> returns. </p> </li> </ul> </div> </div> <div class="sect3" lang="en" xml:lang="en"> <div class="titlepage"> <div> <div> <h4 class="title"><a id="id1682117"></a>lsn</h4> </div> </div> </div> <p> The <span class="bold"><strong>lsn</strong></span> parameter references memory into which the <a class="link" href="lsn.html" title="Chapter 7. The DB_LSN Handle">DB_LSN</a> of the put record is copied. </p> </div> </div> <div class="sect2" lang="en" xml:lang="en"> <div class="titlepage"> <div> <div> <h3 class="title"><a id="id1682257"></a>Errors</h3> </div> </div> </div> <p> The <code class="methodname">DB_ENV->log_put()</code> <span> <span> method may fail and return one of the following non-zero errors: </span> </span> </p> <div class="sect3" lang="en" xml:lang="en"> <div class="titlepage"> <div> <div> <h4 class="title"><a id="id1681990"></a>EINVAL</h4> </div> </div> </div> <p> If the record to be logged is larger than the maximum log record; or if an invalid flag value or parameter was specified. </p> </div> </div> <div class="sect2" lang="en" xml:lang="en"> <div class="titlepage"> <div> <div> <h3 class="title"><a id="id1681936"></a>Class</h3> </div> </div> </div> <p> <a class="link" href="env.html" title="Chapter 5. The DB_ENV Handle">DB_ENV</a>, <a class="link" href="logc.html" title="The DB_LOGC Handle">DB_LOGC</a>, <a class="link" href="lsn.html" title="Chapter 7. The DB_LSN Handle">DB_LSN</a> </p> </div> <div class="sect2" lang="en" xml:lang="en"> <div class="titlepage"> <div> <div> <h3 class="title"><a id="id1682077"></a>See Also</h3> </div> </div> </div> <p> <a class="xref" href="lsn.html#loglist" title="Logging Subsystem and Related Methods">Logging Subsystem and Related Methods</a> </p> </div> </div> <div class="navfooter"> <hr /> <table width="100%" summary="Navigation footer"> <tr> <td width="40%" align="left"><a accesskey="p" href="logprintf.html">Prev</a> </td> <td width="20%" align="center"> <a accesskey="u" href="lsn.html">Up</a> </td> <td width="40%" align="right"> <a accesskey="n" href="envlog_set_config.html">Next</a></td> </tr> <tr> <td width="40%" align="left" valign="top">DB_ENV->log_printf() </td> <td width="20%" align="center"> <a accesskey="h" href="index.html">Home</a> </td> <td width="40%" align="right" valign="top"> DB_ENV->log_set_config()</td> </tr> </table> </div> </body> </html>