Fórumok

Rendere sincrono il reindex con Lucene - RISOLTO

thumbnail
Marco Rosetti, módosítva 10 év-val korábban

Rendere sincrono il reindex con Lucene - RISOLTO

Junior Member Bejegyzések: 68 Csatlakozás dátuma: 2013.03.06. Legújabb bejegyzések
Ciao a tutti,
esiste un modo per rendere sincrono il reindex di un documento di Lucene?

Al momento è eseguito su un thread separato e questo mi crea alcuni problemi di visualizzazione. Avrei bisogno di attendere che questo sia completato prima di fare il refresh di una pagina

Grazie,
Marco
thumbnail
Daniele Baggio, módosítva 10 év-val korábban

R: Rendere sincrono il reindex con Lucene

Expert Bejegyzések: 336 Csatlakozás dátuma: 2008.12.05. Legújabb bejegyzések
Che io sappia non c'è modo. In ogni modo mi pare che il tuo sviluppo abbia un problema se hai bisogno di rendere lucene sincrono.


Sent from my Android device with null
thumbnail
Marco Rosetti, módosítva 9 év-val korábban

RE: Rendere sincrono il reindex con Lucene - RISOLTO

Junior Member Bejegyzések: 68 Csatlakozás dátuma: 2013.03.06. Legújabb bejegyzések
Credo di aver trovato una soluzione al problema.
Per farla breve, aggiungendo questa linea di codice
ProxyModeThreadLocal.setForceSync(true); 

viene forzata l'indicizzazione (lanciata da un messaggio sul message bus) ad essere eseguita in modo sincrono all'interno dello stesso thread che l'ha generata

Qualcuno ci vede qualche controindicazione?

-MR
thumbnail
Daniele Baggio, módosítva 9 év-val korábban

RE: Rendere sincrono il reindex con Lucene - RISOLTO

Expert Bejegyzések: 336 Csatlakozás dátuma: 2008.12.05. Legújabb bejegyzések
Non credo che
ProxyModeThreadLocal.setForceSync(true); 
risolva il tuo caso.
Questo metodo agisce a livello di messagebus per regolare la distribuzione dei messagi nel cluster. Bob riguarda direttamente l'indicizzazione di Lucene che resta asincrona.
thumbnail
Marco Rosetti, módosítva 9 év-val korábban

RE: Rendere sincrono il reindex con Lucene - RISOLTO

Junior Member Bejegyzések: 68 Csatlakozás dátuma: 2013.03.06. Legújabb bejegyzések
Daniele Baggio:
Non credo che
ProxyModeThreadLocal.setForceSync(true); 
risolva il tuo caso.
Questo metodo agisce a livello di messagebus per regolare la distribuzione dei messagi nel cluster. Bob riguarda direttamente l'indicizzazione di Lucene che resta asincrona.


Quello che ho notato è che l'indicizzazione asincrona viene lanciata da un messaggio sul message bus. Con quel comando viene forzata l'elaborazione sincrona del messaggio e di fatto viene resa sincrona anche l'indicizzazione
thumbnail
Aristide Cittadino, módosítva 9 év-val korábban

RE: Rendere sincrono il reindex con Lucene - RISOLTO

New Member Bejegyzések: 5 Csatlakozás dátuma: 2013.10.16. Legújabb bejegyzések
CIao ,
non so se hai risolto, ma nel porta-ext .properties prova ad inserire questa riga:

index.with.thread=false
thumbnail
Marco Rosetti, módosítva 9 év-val korábban

RE: Rendere sincrono il reindex con Lucene - RISOLTO

Junior Member Bejegyzések: 68 Csatlakozás dátuma: 2013.03.06. Legújabb bejegyzések
Aristide Cittadino:
CIao ,
non so se hai risolto, ma nel porta-ext .properties prova ad inserire questa riga:

index.with.thread=false


Grazie Aristide ma dai commenti del portal.properties sembra che la property index.with.thread sia usata solo al reindex iniziale (se abilitato)

#
# Set the following to true if you want the indexing on startup to be
# executed on a separate thread to speed up execution.
#
index.with.thread=false

ora non ho modo di verificare se effettivamente sia così, appena riesco provo e ti dico

-MR
thumbnail
Aristide Cittadino, módosítva 9 év-val korábban

RE: Rendere sincrono il reindex con Lucene - RISOLTO

New Member Bejegyzések: 5 Csatlakozás dátuma: 2013.10.16. Legújabb bejegyzések
Marco Rosetti:
Aristide Cittadino:
CIao ,
non so se hai risolto, ma nel porta-ext .properties prova ad inserire questa riga:

index.with.thread=false


Grazie Aristide ma dai commenti del portal.properties sembra che la property index.with.thread sia usata solo al reindex iniziale (se abilitato)

#
# Set the following to true if you want the indexing on startup to be
# executed on a separate thread to speed up execution.
#
index.with.thread=false

ora non ho modo di verificare se effettivamente sia così, appena riesco provo e ti dico

-MR


Ciao Daniele,
grazie per la risposta, in realtà sarebbe interessante capire:
In una single page application che presenta sia la lista (gestita da lucene) di un'entità che la relativa form di inserimento (sottomessa via ajax), come posso eviatare che il reindex in un thread separato mostri nella lista i dati vecchi (dovuti al fatto che il reindex non è terminato)?