From 9b20c05a7ed00e704f6899300d8f56af9e4b168b Mon Sep 17 00:00:00 2001 From: Mark Craig <mark.craig@forgerock.com> Date: Fri, 12 Aug 2011 20:47:37 +0000 Subject: [PATCH] Mention debugsearchindex as a way to check how searches match OpenDJ indexing --- opendj3/src/main/docbkx/admin-guide/chap-indexing.xml | 29 +++++++++++++++++++++++++++++ 1 files changed, 29 insertions(+), 0 deletions(-) diff --git a/opendj3/src/main/docbkx/admin-guide/chap-indexing.xml b/opendj3/src/main/docbkx/admin-guide/chap-indexing.xml index 556e3fa..98a5040 100644 --- a/opendj3/src/main/docbkx/admin-guide/chap-indexing.xml +++ b/opendj3/src/main/docbkx/admin-guide/chap-indexing.xml @@ -328,6 +328,35 @@ </section> <section> + <title>Checking Indexes For a Search</title> + + <para>When searching, you can improve performance by making sure your search + is indexed as you expect. One way of checking is to request the + <literal>debugsearchindex</literal> attribute in your results.</para> + + <screen>$ ldapsearch -p 1389 -b dc=example,dc=com "(uid=bjensen)" debugsearchindex +dn: cn=debugsearch +debugsearchindex: filter=(uid=bjensen)[INDEX:uid.equality][COUNT:1] + final=[COUNT:1]</screen> + + <para>When you request the <literal>debugsearchindex</literal> attribute, + instead of performing the search, OpenDJ returns debug information indicating + how it would process the search operation. In the example above you notice + OpenDJ hits the equality index for <literal>uid</literal> right away.</para> + + <para>A less exact search requires more work from OpenDJ. In the following + example OpenDJ would have to return 160 entries.</para> + + <screen>$ ldapsearch -p 1389 -b dc=example,dc=com "(uid=*)" debugsearchindex +dn: cn=debugsearch +debugsearchindex: filter=(uid=*)[NOT-INDEXED] scope=wholeSubtree[COUNT:160] + final=[COUNT:160]</screen> + + <para>By default OpenDJ rejects unindexed searches when the number of + candidate entries goes beyond the search or look-though limit.</para> + </section> + + <section> <title>Default Indexes</title> <para>When you first install OpenDJ directory server and import your -- Gitblit v1.10.0