mirror of https://github.com/OpenIdentityPlatform/OpenDJ.git

Mark Craig
31.21.2014 83022d82aea5dfd8a0ebd9c963b770ff3b1577a7
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
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
'\" t
.\"     Title: dbtest
.\"    Author: 
.\" Generator: DocBook XSL-NS Stylesheets v1.76.1 <http://docbook.sf.net/>
.\"      Date: 01/31/2014
.\"    Manual: Tools Reference
.\"    Source: OpenDJ 2.7.0-SNAPSHOT
.\"  Language: English
.\"
.TH "DBTEST" "1" "01/31/2014" "OpenDJ 2\&.7\&.0\-SNAPSHOT" "Tools Reference"
.\" -----------------------------------------------------------------
.\" * Define some portability stuff
.\" -----------------------------------------------------------------
.\" ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
.\" http://bugs.debian.org/507673
.\" http://lists.gnu.org/archive/html/groff/2009-02/msg00013.html
.\" ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
.ie \n(.g .ds Aq \(aq
.el       .ds Aq '
.\" -----------------------------------------------------------------
.\" * set default formatting
.\" -----------------------------------------------------------------
.\" disable hyphenation
.nh
.\" disable justification (adjust text to left margin only)
.ad l
.\" -----------------------------------------------------------------
.\" * MAIN CONTENT STARTS HERE *
.\" -----------------------------------------------------------------
.SH "NAME"
dbtest \- gather OpenDJ JE database debugging information
.SH "SYNOPSIS"
.HP \w'\fBdbtest\fR \fBsubcommand\fR\ 'u
\fBdbtest\fR \fBsubcommand\fR [options]
.SH "DESCRIPTION"
.PP
This utility can be used to debug the JE database\&.
.SH "SUBCOMMANDS"
.PP
The following subcommands are supported\&.
.PP
\fBdbtest dump\-database\-container\fR
.RS 4
Dump records from a database container
.sp
Depending on database size, this subcommand can generate lots of output\&.
.RE
.PP
\fBdbtest list\-database\-containers\fR
.RS 4
List the database containers for an entry container
.RE
.PP
\fBdbtest list\-entry\-containers\fR
.RS 4
List the entry containers for a root container
.RE
.PP
\fBdbtest list\-index\-status\fR
.RS 4
List the status of indexes in an entry container
.sp
When you list index status, the result is a table, followed by a "Total", which is the total number of indexes, followed by a list of indexes with "Undefined keys" to show the values for which the number of entries exceeded the index entry limit\&. The table has the following columns\&.
.PP
Index Name
.RS 4
Name of the index, which takes the form
\fIattr\&.type\fR
for attribute indexes, and vlv\&.\fIname\fR
for VLV indexes\&. Some indexes are for OpenDJ directory server\*(Aqs internal use\&.
.sp
Example:
givenName\&.substring
.RE
.PP
Index Type
.RS 4
Type of the index, which is
Index
for attribute indexes, and
VLVIndex
for VLV indexes\&.
.RE
.PP
JE Database Name
.RS 4
Name of the Berkeley Java Edition database, which reflects how OpenDJ directory server organizes the data in the database\&.
.sp
Example:
dc_example_dc_com_givenName\&.substring
.RE
.PP
Index Valid
.RS 4
This is
true
for valid indexes\&. If this is
false, the index might be degraded.
Verify the index, and rebuild the index if necessary\&.
.RE
.PP
Record Count
.RS 4
Number of indexed keys\&. Use the
\fBdbtest dump\-database\-container\fR
command to see how many entry IDs correspond to each key\&.
.RE
.PP
Undefined
.RS 4
Number of keys for which there are too many values to maintain an index, based on the index entry limit\&. This is recorded as
\-
for VLV indexes\&.
.sp
In other words, with the default index entry limit of 4000, if every user in your large directory has a mail address ending in
@example\&.com, and a substring index is maintained for
mail, then OpenDJ directory server does not maintain indexes for keys corresponding to substrings in
@example\&.com\&.
.sp
As a result, an LDAP search with the filter
"(mail=*@example\&.com)"
becomes an unindexed search even though a substring index exists for the mail attribute\&. By default OpenDJ directory server does not allow unindexed searches except by privileged users\&. This is usually exactly the behavior you want in order to prevent client applications for example from sending searches that return every user in the directory\&. Clients should refine their search filters instead\&.
.RE
.PP
95%, 90%, 85%
.RS 4
Number of keys for which the number of values is approaching the index entry limit, having reached the specified percentage\&. This is a measure of how full the entry ID lists are\&.
.RE
.RE
.PP
\fBdbtest list\-root\-containers\fR
.RS 4
List the root containers used by all JE backends
.RE
.SH "OPTIONS"
.PP
The following global options are supported\&.
.PP
For other options, see
\fBdbtest \fR\fB\fIsubcommand\fR\fR\fB \-\-help\fR\&.
.PP
\fB\-\-version\fR
.RS 4
Display version information
.RE
.PP
\fB\-?, \-H, \-\-help\fR
.RS 4
Display usage information
.RE
.SH "EXIT CODES"
.PP
0
.RS 4
The command completed successfully\&.
.RE
.PP
> 0
.RS 4
An error occurred\&.
.RE
.SH "EXAMPLES"
.PP
The following example displays debugging information about the equality index for
sudoUser\&.
.sp
.if n \{\
.RS 4
.\}
.nf
$ dbtest dump\-database\-container \-n userRoot \-b dc=example,dc=com
 \-d sudoUser\&.equality
Indexed Value (6 bytes): %admin
Entry ID List (8 bytes): 165 
 
Indexed Value (5 bytes): %sudo
Entry ID List (8 bytes): 164 
 
Indexed Value (4 bytes): root
Entry ID List (8 bytes): 163 
 
 
Total Records: 3
Total / Average Key Size: 13 bytes / 4 bytes
Total / Average Data Size: 24 bytes / 8 bytes
.fi
.if n \{\
.RE
.\}
.SH "COPYRIGHT"
.br
Copyright \(co 2011-2014 ForgeRock AS
.br