File: memp_stat.html

package info (click to toggle)
db4.4 4.4.20-8
  • links: PTS
  • area: main
  • in suites: etch, etch-m68k
  • size: 39,948 kB
  • ctags: 26,257
  • sloc: ansic: 124,258; tcl: 46,590; java: 28,006; perl: 13,009; sh: 11,611; cpp: 9,192; makefile: 1,972; awk: 1,339; cs: 457; xml: 112; php: 22; asm: 14
file content (169 lines) | stat: -rw-r--r-- 8,808 bytes parent folder | download
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
<!--$Id: memp_stat.so,v 10.64 2005/07/20 16:27:00 bostic Exp $-->
<!--Copyright 1997-2005 by Sleepycat Software, Inc.-->
<!--All rights reserved.-->
<!--See the file LICENSE for redistribution information.-->
<html>
<head>
<title>Berkeley DB: DB_ENV-&gt;memp_stat</title>
<meta name="description" content="Berkeley DB: An embedded database programmatic toolkit.">
<meta name="keywords" content="embedded,database,programmatic,toolkit,btree,hash,hashing,transaction,transactions,locking,logging,access method,access methods,Java,C,C++">
</head>
<body bgcolor=white>
<table width="100%"><tr valign=top>
<td>
<h3>DB_ENV-&gt;memp_stat</h3>
</td>
<td align=right>
<a href="../api_c/api_core.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.h&gt;
<p>
int
DB_ENV-&gt;memp_stat(DB_ENV *env, DB_MPOOL_STAT **gsp,
    DB_MPOOL_FSTAT *(*fsp)[], u_int32_t flags);
<p>
int
DB_ENV-&gt;memp_stat_print(DB_ENV *env, u_int32_t flags);
</pre></h3>
<hr size=1 noshade>
<h3>Description: DB_ENV-&gt;memp_stat</h3>
<p>The DB_ENV-&gt;memp_stat method returns the memory pool (that is, the buffer
cache) subsystem statistics.</p>
<p>The DB_ENV-&gt;memp_stat method creates statistical structures of type DB_MPOOL_STAT
and DB_MPOOL_FSTAT, and copy pointers to them into user-specified memory
locations.  The cache statistics are stored in the DB_MPOOL_STAT structure
and the per-file cache statistics are stored the DB_MPOOL_FSTAT structure.</p>
<p>Statistical structures are stored in allocated memory.  If application-specific allocation
routines have been declared (see <a href="../api_c/env_set_alloc.html">DB_ENV-&gt;set_alloc</a> for more
information), they are used to allocate the memory; otherwise, the
standard C library <b>malloc</b>(3) is used.  The caller is
responsible for deallocating the memory.  To deallocate the memory, free
the memory reference; references inside the returned memory need not be
individually freed.</p>
<p>If <b>gsp</b> is non-NULL, the global statistics for the cache
<b>mp</b> are copied into the memory location to which it refers.
The following DB_MPOOL_STAT fields will be filled in:</p>
<dl compact>
<dt>size_t st_gbytes;<dd>Gigabytes of cache (total cache size is st_gbytes + st_bytes).
<dt>size_t st_bytes;<dd>Bytes of cache (total cache size is st_gbytes + st_bytes).
<dt>u_int32_t st_ncache;<dd>Number of caches.
<dt>roff_t st_regsize;<dd>Individual cache size, in bytes.
<dt>u_int32_t st_map;<dd>Requested pages mapped into the process' address space (there is no
available information about whether or not this request caused disk I/O,
although examining the application page fault rate may be helpful).
<dt>u_int32_t st_cache_hit;<dd>Requested pages found in the cache.
<dt>u_int32_t st_cache_miss;<dd>Requested pages not found in the cache.
<dt>u_int32_t st_page_create;<dd>Pages created in the cache.
<dt>u_int32_t st_page_in;<dd>Pages read into the cache.
<dt>u_int32_t st_page_out;<dd>Pages written from the cache to the backing file.
<dt>u_int32_t st_ro_evict;<dd>Clean pages forced from the cache.
<dt>u_int32_t st_rw_evict;<dd>Dirty pages forced from the cache.
<dt>u_int32_t st_page_trickle;<dd>Dirty pages written using the <a href="../api_c/memp_trickle.html">DB_ENV-&gt;memp_trickle</a> method.
<dt>u_int32_t st_pages;<dd>Pages in the cache.
<dt>u_int32_t st_page_clean;<dd>Clean pages currently in the cache.
<dt>u_int32_t st_page_dirty;<dd>Dirty pages currently in the cache.
<dt>u_int32_t st_hash_buckets;<dd>Number of hash buckets in buffer hash table.
<dt>u_int32_t st_hash_searches;<dd>Total number of buffer hash table lookups.
<dt>u_int32_t st_hash_longest;<dd>The longest chain ever encountered in buffer hash table lookups.
<dt>u_int32_t st_hash_examined;<dd>Total number of hash elements traversed during hash table lookups.
<dt>u_int32_t st_hash_nowait;<dd>The number of times that a thread of control was able to obtain a hash
bucket lock without waiting.
<dt>u_int32_t st_hash_wait;<dd>The number of times that a thread of control was forced to wait before
obtaining a hash bucket lock.
<dt>u_int32_t st_hash_max_wait;<dd>The maximum number of times any hash bucket lock was waited for by a
thread of control.
<dt>u_int32_t st_region_wait;<dd>The number of times that a thread of control was forced to wait before
obtaining a cache region mutex.
<dt>u_int32_t st_region_nowait;<dd>The number of times that a thread of control was able to obtain a cache
region mutex without waiting.
<dt>u_int32_t st_alloc;<dd>Number of page allocations.
<dt>u_int32_t st_alloc_buckets;<dd>Number of hash buckets checked during allocation.
<dt>u_int32_t st_alloc_max_buckets;<dd>Maximum number of hash buckets checked during an allocation.
<dt>u_int32_t st_alloc_pages;<dd>Number of pages checked during allocation.
<dt>u_int32_t st_alloc_max_pages;<dd>Maximum number of pages checked during an allocation.
<dt>u_int32_t st_mmapsize;<dd>Maximum memory-mapped file size.
<dt>u_int32_t st_maxopenfd;<dd>Maximum open file descriptors.
<dt>u_int32_t st_maxwrite;<dd>Maximum sequential buffer writes.
<dt>u_int32_t st_maxwrite_sleep;<dd>Sleep after writing maximum sequential buffers.
</dl>
The <b>flags</b> parameter must be set to 0 or
the following value:
<dl compact>
<dt><a name="DB_STAT_CLEAR">DB_STAT_CLEAR</a><dd>Reset statistics after returning their values.
</dl>
<p>If <b>fsp</b> is non-NULL, a pointer to a NULL-terminated
variable length array of statistics for individual files, in the cache
<b>mp</b>, is copied into the memory location to which it refers.  If
no individual files currently exist in the cache, <b>fsp</b> will be
set to NULL.</p>
<p>The per-file statistics are stored in structures of type DB_MPOOL_FSTAT.
The following DB_MPOOL_FSTAT fields will be filled in for each file in
the cache; that is, each element of the array:</p>
<dl compact>
<dt>char * file_name;<dd>The name of the file.
<dt>size_t st_pagesize;<dd>Page size in bytes.
<dt>u_int32_t st_cache_hit;<dd>Requested pages found in the cache.
<dt>u_int32_t st_cache_miss;<dd>Requested pages not found in the cache.
<dt>u_int32_t st_map;<dd>Requested pages mapped into the process' address space.
<dt>u_int32_t st_page_create;<dd>Pages created in the cache.
<dt>u_int32_t st_page_in;<dd>Pages read into the cache.
<dt>u_int32_t st_page_out;<dd>Pages written from the cache to the backing file.
</dl>
<p>The DB_ENV-&gt;memp_stat method
returns a non-zero error value on failure
and 0 on success.
</p>
<h3>Parameters</h3>
<dl compact>
<dt><b>flags</b><dd>The <b>flags</b> parameter must be set to 0 or
the following value:
<dl compact>
<dt><a name="DB_STAT_CLEAR">DB_STAT_CLEAR</a><dd>Reset statistics after returning their values.
</dl>
<dt><b>fsp</b><dd>The <b>fsp</b> parameter references memory into which
a pointer to the allocated per-file statistics structures is copied. 
<dt><b>gsp</b><dd>The <b>gsp</b> parameter references memory into which
a pointer to the allocated global statistics structure is copied. 
</dl>
<h3>Errors</h3>
<p>The DB_ENV-&gt;memp_stat method
may fail and return one of the following non-zero errors:</p>
<dl compact>
<dt>EINVAL<dd>An
invalid flag value or parameter was specified.
</dl>
<hr size=1 noshade>
<h3>Description: DB_ENV-&gt;memp_stat_print</h3>
<p>The DB_ENV-&gt;memp_stat_print method prints diagnostic information to the output
channel described by the <a href="../api_c/env_set_msgfile.html">DB_ENV-&gt;set_msgfile</a> method.</p>
<p>The DB_ENV-&gt;memp_stat_print method may not be called before the <a href="../api_c/env_open.html">DB_ENV-&gt;open</a> method has
been called.</p>
<p>The DB_ENV-&gt;memp_stat_print method
returns a non-zero error value on failure
and 0 on success.
</p>
<h3>Parameters</h3>
<dl compact>
<dt><b>flags</b><dd>The <b>flags</b> parameter must be set by bitwise inclusively <b>OR</b>'ing together one or more
of the following values:
<dl compact>
<dt><a name="DB_STAT_ALL">DB_STAT_ALL</a><dd>Display all available information.
<dt><a name="DB_STAT_MEMP_HASH">DB_STAT_MEMP_HASH</a><dd>Display the buffers with hash chains.
</dl>
</dl>
<hr size=1 noshade>
<h3>Class</h3>
<a href="../api_c/env_class.html">DB_ENV</a>, <a href="../api_c/mempfile_class.html">DB_MPOOLFILE</a>
<h3>See Also</h3>
<a href="../api_c/memp_list.html">Memory Pools and Related Methods</a>
</tt>
<table width="100%"><tr><td><br></td><td align=right>
<a href="../api_c/api_core.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="../sleepycat/legal.html">Copyright (c) 1996-2005</a> <a href="http://www.sleepycat.com">Sleepycat Software, Inc.</a> - All rights reserved.</font>
</body>
</html>