incubator-cassandra-user mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From David Allsopp <>
Subject Re: NotFoundException thrown for get(), but not get_slice() with a column_names predicate
Date Thu, 28 Jul 2011 21:55:35 GMT
On 28 July 2011 16:23, Sylvain Lebresne <> wrote:

> To be honest, collecting the names that were missing in the first name
> query and doing a new name query for those (if there is any) is so simple
> that I think it is a bit dishonest to say that "it pushes work to the
> clients".
It seems simple enough at least that it does not sound like a good idea to
> me to complicate the API.
> Fair point - I was forgetting that I need to implement basic retries
anyway, if I'm using CL.ONE, so the partial retries won't be much more
difficult, as you say. Though it does mean I need one kind of retry for
get() and another kind for get_slice(). Still getting used to eventual
consistency ;-)

> I'll also argue that throwing an exception is always inferior to the
> current
> behavior, because if you re-query the missing names and get nothing
> back again, you at least know what are the names that are not missing.
> If you throw an exception and you simply get the exception twice, you
> only know that "some" column(s) is(are) missing.

True - throwing an exception would be useful if you have large columns, need
all of the columns to do anything useful, and would rather not download 90%
of them only to throw them away for the lack of the last 10% (if some of the
columns may actually be absent as opposed to not-yet-consistent), but I
guess that's a pretty obscure edge case!!




View raw message