. I expect to be disponible soon?

On Tue, Nov 25, 2008 at 12:56 PM, Jokin Cuadrado <[EMAIL PROTECTED]> wrote:

>
> The indexreader take a snapshot of the current index in the directory.
> If you modify it, you mus't tell the reader to reopen it. Right now
> nhibernate search do it when when you write something to the index, so
> you must implement a way to tell the index to reopen. You can throw
> the workspace and create a new one for example.
>
> I just created an jira issue tu upgrade to lucene.net 2.3.2   It have
> several performance benefits on indexing, also adds a reopen method to
> the index reader so it can read the changes without having to drop an
> read again all the cache. I expect to be disponible soon, as all the
> work is done and need a bit of test and pass all the apache release
> process. (But i'm currently using it without any problem and with a
> big performance benefits in indexing speeds as you can read in the
> another thread).
>
>
>
> On Tue, Nov 25, 2008 at 11:46 AM, Vito Vessia <[EMAIL PROTECTED]>
> wrote:
> >
> > Thank you very much for your answer. I've only a last question: can I
> > leave the nh.search on the SAN so all the back-end servers can always
> > read an updated index instead of a local copy of this index constantly
> > updated? In this way I have not to provide an indexreaders refresh
> > because the index is always consistent. The scheduled indexer takes
> > care about the mass update of the indexes and all the backed just read
> > the index with no lock or update on it. Is that a correct way?
> >
> > --Vito
> >
> >
> >
> > On 25 Nov, 11:16, "Jokin Cuadrado" <[EMAIL PROTECTED]> wrote:
> >> On Tue, Nov 25, 2008 at 10:36 AM, Vito <[EMAIL PROTECTED]> wrote:
> >> > All the backend servers are equivalent so there is no special master
> >> > and all the business services running on these backend servers may
> >> > update NH.Search/Lucene indexes. The indexes update is contextual.
> >> > If I configure my back end servers in master/slaves mode, is there an
> >> > automatic way/setting to queue all updates on a master server from all
> >> > the slave ones or I have to write the code from scratch? You say that
> >> > I should create an offline scheduled indexer that update indexes
> >> > instead of the current contextual way? Is it the best way?
> >>
> >> As Ayende said, If the index file system is shared among all the
> >> backend servers, you can find problems whith the locking mechanism in
> >> network shares. And in the case it works, a bad performance because
> >> all the machines would need to compete for the write lock. As far as i
> >> know, neither Nhibernate nor Nhibernate.search provide a way to queue
> >> the updates to a master machine.
> >>
> >> The scheduled indexer is what we use, because having a central point
> >> for index writing is a big gain in performance and control in lucene.
> >> You could easily manage when to optimize the index, (a big gain in
> >> search performance and memory footprint again), and the updates are
> >> done in bigger batches, which is also better. If you can live with a
> >> small delay between the database is updated and the search results are
> >> updated, i think it is one of the bests solutions.
> >>
> >> You must also provide a way to refresh the indexreaders, as if i
> >> remember well, nhibernate search refresh them when you write something
> >> to the index. For example if your nlb doesn't send updates one of the
> >> backend machines, it will never refresh the indexreader and it will
> >> present stale results.
> >>
> >> --
> >> Jokin
> > >
> >
>
> >
>

--~--~---------~--~----~------------~-------~--~----~
You received this message because you are subscribed to the Google Groups 
"NHibernate Contrib - Development Group" group.
To post to this group, send email to [email protected]
To unsubscribe from this group, send email to [EMAIL PROTECTED]
For more options, visit this group at 
http://groups.google.com.ar/group/nhcdevs?hl=en
-~----------~----~----~----~------~----~------~--~---

Reply via email to