Ci sono casi in cui per i motivi più diversi la ricerca AOD, basata sul motore Lucene, smetta di funzionare. Vediamo come risolvere.
E’ un problema che può nascere spontaneamente o da aggiornamenti. La ricerca AOD è basata sul motore Lucene e per poter funzionare necessità di creare degli indici sui quali si basano le ricerche. Senza questi indici non può funzionare.
La creazione degli indici avviene attraverso la creazione di records in database e di files.
Nel caso in cui la ricerca AOD smetta di funzionare, può essere necessario Reindicizzare tutti i dati contenuti nel CRM. Le indicazioni che illustreremo sono riprese dalla pagina https://pgorod.github.io/Reindex-AOD/
Prima di fare una qualsiasi delle azioni descritte di seguito, si consiglia di effettuare un backup completo dell’applicativo e del database.
La prima verifica da fare è quella che non ci siano dei blocchi rimasti in sospeso nella scrittura dei files di indice. A volte è sufficiente eseguire lo “sblocco” senza reindicizzare tutto.
Nella directory
modules/AOD_Index/Index/Index
verificate se ci sono files con estensione “.lock” particolarmente datati. Nel caso rimuoveteli e verificate se la ricerca torna a funzionare.
Se questo non bastasse sarà necessario pulire SuiteCRM dagli indici e ripartire da zero.
Rinominare e ricreare la directory modules/AOD_Index/Index/Index:
cd modules/AOD_Index/Index
mv Index Index_OLD
mkdir Index
e assegnare la directory all’utente apache
chown www-data.www-data
chmod 775 Index
Svuotare quindi le tabelle del database che servono alla gestione degli indici:
- aod_index
- aod_indexevent
potete farlo tramite l’operazione di TRUNCATE di mysql, che svuota la tabella, ma non la cancella.
Assicuratevi che le operazioni schedulate per la generazione e ottimizzazione degli indici siano attive.
La nuova indicizzazione di tutti i contenuti del CRM, può essere una operazione molto lunga e onerosa in termini di utilizzo del server, è quindi consigliabile impostare una lavorazione notturna ed avere un po’ di pazienza.