Sun / Oracle DSEE - Indexation d'attributs

Petit rappel pour l'ajout d'index sur Sun DSEE

Symptômes

Machine très lente. Dans le log errors :

[23/Mar/2018:09:52:00 +0100] - WARNING<20805> - Backend Database - conn=1636653 op=1286 msgId=1287 -  search is not indexed base='dc=exampel,dc=com' filter='(|(&(objectclass=ocCustomPerson)(state=0)(!(contracttype=F1))(computersite=sid=RES441*)(contractlastdate<=20180322)(!(contractlastdate=00000000)))(&(objectclass=ocExtendedPerson)(!(state=2)(contracttype=F1)(computersite=sid=RES441*)(hrcontractlastdate<=20180322)(!(hrcontractlastdate=00000000))))' scope='sub'

Création d'un index

La gestion des index se fait avec l'utilitaire dsconf :

bin/dsconf create-index -h host -p port baseDN index

Exemple

bin/dsconf create-index -h localhost -p 389 dc=example,dco=com state

Ceci va uniquement créer la définition de l'index. Si les données exsstent déjà, il faut passer par une phase de génération (calcul) de l'index.

Note : si on a plusieurs instances actives avec les mêmes données (par exemple dans le cas d'une réplication), il faut lancer les commandes sur chaque instance.

Génération de l'index

On utilise l'option reindex

bin/dsconf reindex  -h host -p port-t index baseDN

Exemple

bin/dsconf reindex  -h localhost -p 389 -t state dc=example,dc=com

Voir la liste des indexes

Pour vérifier la liste des indexes créés, on utilise l'option list-indexes :

bin/dsconf list-indexes  -h localhost -p 389

Voir le détail d'un index

On peut avoir le détail d'un index (type, limites) avec l'option get-index-prop en précisant le BaseDN et le nom de l'attribut :

bin/dsconf get-index-prop -h localhost -p 389 dc=example,dc=com state

Enter "cn=Directory Manager" password:
eq-enabled              :  on  
pres-enabled            :  on  
sub-enabled             :  off  
approx-enabled          :  off  
matching-rule           :  -  
system                  :  no  
all-ids-threshold-eq    :  4000  
all-ids-threshold-pres  :  4000  
all-ids-threshold-sub   :  N/A  
all-ids-threshold       :  inherited (4000)  
desc                    :  -

 

Catégorie