It sounds, of course, a lot like transaction isolation using MVCC. It's the 
obvious solution, and has been for since the late 1970's.

I hope it won't be too hard to convince people to use it :-) It's been the 
reason for the early success of Oracle.

Dennis Gearon

Signature Warning
----------------
It is always a good idea to learn from your own mistakes. It is usually a 
better idea to learn from others’ mistakes, so you do not have to make them 
yourself. from 'http://blogs.techrepublic.com.com/security/?p=4501&tag=nl.e036'

EARTH has a Right To Life,
  otherwise we all die.


--- On Mon, 10/11/10, Yonik Seeley <yo...@lucidimagination.com> wrote:

> From: Yonik Seeley <yo...@lucidimagination.com>
> Subject: Re: LuceneRevolution - NoSQL: A comparison
> To: solr-user@lucene.apache.org
> Date: Monday, October 11, 2010, 7:20 PM
> On Mon, Oct 11, 2010 at 8:32 PM,
> Peter Keegan <peterlkee...@gmail.com>
> wrote:
> > I listened with great interest to Grant's presentation
> of the NoSQL
> > comparisons/alternatives to Solr/Lucene. It sounds
> like the jury is still
> > out on much of this. Here's a use case that might
> favor using a NoSQL
> > alternative for storing 'stored fields' outside of
> Lucene.
> >
> > When Solr does a distributed search across shards, it
> does this in 2 phases
> > (correct me if I'm wrong):
> >
> > 1. 1st query to get the docIds and facet counts
> > 2. 2nd query to retrieve the stored fields of the top
> hits
> >
> > The problem here is that the index could change
> between (1) and (2), so it's
> > not an atomic transaction.
> 
> Yep.
> 
> As I discussed with Peter at Lucene Revolution, if this
> feature is
> important to people, I think the easiest way to solve it
> would be via
> leases.
> 
> During a query, a client could request a lease for a
> certain amount of
> time on whatever index version is used to generate the
> response.  Solr
> would then return the index version to the client along
> with the
> response, and keep the index open for that amount of
> time.  The client
> could make consistent additional requests (such as the 2nd
> phase of a
> distributed request)  by requesting the same version
> of the index.
> 
> -Yonik
>

Reply via email to