23.2.9. Compatibiité de format d'index
Hibernate Search n'offre pas actuellement d'API de compatibilité rétroactive ou un outil pour faciliter le portage des applications pour les versions plus récentes. L'API utilise l'index d'écriture et de recherche Apache Lucene. Parfois, une mise à jour au format de l'index doit être effectuée. Dans ce cas, il y a une possibilité que les données doivent être ré-indexées si Lucene est incapable de lire l'ancien format.
Avertissement
Sauvegarder les indexes avant de tenter de mettre à jour le format de l'index.
Hibernate Search expose la propriété de configuration
hibernate.search.lucene_version
. Cette propriété indique aux Analyzers et aux autres classes de Lucene de se conformer à leur comportement, tel qu'il est défini dans une version antérieure de Lucene. Voir aussi la classe org.apache.lucene.util.Version
contenue dans le lucene-Core
. Si l'option n'est pas spécifiée, Hibernate Search demande à Lucene d'utiliser la valeur par défaut de la version. Il est recommandé que la version utilisée soit définie explicitement dans la configuration pour empêcher les changements automatiques lorsqu'une mise à niveau se produit. Après une mise à niveau, les valeurs de configuration peuvent être mises à jour explicitement si nécessaire.
Exemple 23.10. Forcer les Analyzers à être compatibles avec un index Lucene 3.0 créé
hibernate.search.lucene_version = LUCENE_30
La configuration
SearchFactory
est globale et affecte toutes les APIs de Lucene contenant le paramètre pertinent. Si Lucene est utilisé et Hibernate Search est contourné, appliquer-lui la même valeur pour obtenir des résultats uniformes.