summaryrefslogtreecommitdiff
path: root/bdb/docs/api_cxx/env_set_region_init.html
blob: f052adaf69edbe88725e33fd8fce596019213aff (plain)
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
<!--$Id: env_set_region_init.so,v 10.10 2000/05/31 15:10:00 bostic Exp $-->
<!--Copyright 1997, 1998, 1999, 2000 by Sleepycat Software, Inc.-->
<!--All rights reserved.-->
<html>
<head>
<title>Berkeley DB: DbEnv::set_region_init</title>
<meta name="description" content="Berkeley DB: An embedded database programmatic toolkit.">
<meta name="keywords" content="embedded,database,programmatic,toolkit,b+tree,btree,hash,hashing,transaction,transactions,locking,logging,access method,access methods,java,C,C++">
</head>
<body bgcolor=white>
        <a name="2"><!--meow--></a>    
<table><tr valign=top>
<td>
<h1>DbEnv::set_region_init</h1>
</td>
<td width="1%">
<a href="../api_cxx/cxx_index.html"><img src="../images/api.gif" alt="API"></a><a href="../ref/toc.html"><img src="../images/ref.gif" alt="Ref"></a>
</td></tr></table>
<hr size=1 noshade>
<tt>
<h3><pre>
#include &lt;db_cxx.h&gt;
<p>
static int
DbEnv::set_region_init(int region_init);
</pre></h3>
<h1>Description</h1>
<p>Page-fault shared regions into memory when initially creating or joining
a Berkeley DB environment.  In some applications, the expense of page-faulting
the shared memory regions can affect performance, e.g., when the
page-fault occurs while holding a lock, other lock requests can convoy
and overall throughput may decrease.  Setting <b>region_init</b> to a
non-zero value specifies that shared regions be read or written, as
appropriate, when the region is joined by the application.  This forces
the underlying virtual memory and file systems to instantiate both the
necessary memory and the necessary disk space.  This can also avoid
out-of-disk space failures later on.
<p>The DbEnv::set_region_init interface affects the entire application, not a single
database or database environment.
<p>While the DbEnv::set_region_init interface may be used to configure Berkeley DB at any time
during the life of the application, it should normally be called before
making any calls to the <a href="../api_c/env_create.html">db_env_create</a> or <a href="../api_c/db_create.html">db_create</a> methods.
<p>The DbEnv::set_region_init method either returns a non-zero error value or throws an exception that
encapsulates a non-zero error value on failure, and returns 0 on success.
<p>The database environment's initial behavior with respect to shared memory regions may also be set using the environment's
<b>DB_CONFIG</b> file.  The syntax of the entry in that file is a
single line with the string "set_region_init", one or more whitespace characters,
and the string "1".  Because the <b>DB_CONFIG</b> file is read when the database
environment is opened, it will silently overrule configuration done
before that time.
<h1>Errors</h1>
<p><dl compact>
<p><dt>EINVAL<dd>An invalid flag value or parameter was specified.
</dl>
<h3>Class</h3>
<a href="../api_cxx/dbenv_class.html">DbEnv</a>
<h1>See Also</h1>
<a href="../api_cxx/env_close.html">DbEnv::close</a>,
<a href="../api_cxx/env_open.html">DbEnv::open</a>,
<a href="../api_cxx/env_remove.html">DbEnv::remove</a>,
<a href="../api_cxx/db_err.html">DbEnv::err</a>,
<a href="../api_cxx/env_strerror.html">DbEnv::strerror</a>,
<a href="../api_cxx/env_version.html">DbEnv::version</a>,
<a href="../api_cxx/env_set_cachesize.html">DbEnv::set_cachesize</a>,
<a href="../api_cxx/env_set_errcall.html">DbEnv::set_errcall</a>,
<a href="../api_cxx/env_set_errfile.html">DbEnv::set_errfile</a>,
<a href="../api_cxx/env_set_error_stream.html">DbEnv::set_error_stream</a>,
<a href="../api_cxx/env_set_errpfx.html">DbEnv::set_errpfx</a>,
<a href="../api_cxx/env_set_flags.html">DbEnv::set_flags</a>,
<a href="../api_cxx/env_set_mutexlocks.html">DbEnv::set_mutexlocks</a>,
<a href="../api_cxx/env_set_paniccall.html">DbEnv::set_paniccall</a>,
and
<a href="../api_cxx/env_set_verbose.html">DbEnv::set_verbose</a>.
</tt>
<table><tr><td><br></td><td width="1%">
<a href="../api_cxx/cxx_index.html"><img src="../images/api.gif" alt="API"></a><a href="../ref/toc.html"><img src="../images/ref.gif" alt="Ref"></a>
</td></tr></table>
<p><font size=1><a href="http://www.sleepycat.com">Copyright Sleepycat Software</a></font>
</body>
</html>