It's impossible to argue against this kind of consensus, so I won't.

Can we please turn this discussion to something productive? Namely: now that
we've eliminated the top (IMO) choice for a standard serialization framework
within Cassandra, which option _will_ we choose? Continuing down our current
path of custom serialization is completely untenable without a massive
overhaul:

1. It is not backwards compatible
2. It does not use compact encodings of integer data
3. It is verbose: serialization code and the java.io package are present in
every object

I would have preferred Avro, but I'd rather use Thrift than no framework at
all.


On Tue, Jan 18, 2011 at 7:49 AM, Jeremy Hanna <jeremy.hanna1...@gmail.com>wrote:

>
> On Jan 17, 2011, at 9:01 PM, Eric Evans wrote:
>
> > On Mon, 2011-01-17 at 12:12 -0500, Jake Luciani wrote:
> >> Some context: We have begun the process of removing Avro from the
> >> service layer CASSANDRA-926. We currently use Avro for schema
> >> migrations internally, and we have two open items that are using Avro
> >> for our internal file storage. CASSANDRA-1472 and CASSANDRA-674.
> >
> > FWIW, this should be done (removing the RPC interface).  Anything missed
> > is deserving of a bug report
> >
> >> My opinion is we need to control the lowest layers of the code and not
> >> rely on a third party library.  By using a third party library like
> >> Avro, it becomes a black box that we need to deeply understand and
> >> work around. Also, since Avro is developed separately we have another
> >> core dependency that could disrupt releases (say a bug in Avro).
> >
> > +1
> >
> > The Avro RPC interface was an experiment, and it was always the case
> > that if it didn't supplant the Thrift interface as status quo, that it'd
> > be removed.  However, as I remember it, part of the justification for
> > using it in migrations was that it was already there.  In hindsight that
> > was probably a mistake.
> >
> > Anyway, we have too many dependencies as it is, I'd rather move toward
> > eliminating it entirely unless there is a very compelling reason not to
> > (I don't think there is).
>
> Just saw Stu's comment on CASSANDRA-1472:
> "I think that implementing a compressible block based file format is a
> non-trivial task, and that before we commit to re-implementing Avro's (in a
> bounded timeframe especially), we should review our requirements. This
> decision needs to be made for technical reasons and not grounded in NIH."
>
> Is that a compelling reason to use avro for some of the internals or is
> that something that someone is willing to implement/maintain?  Just trying
> to bridge discussion here with comments on the ticket.
>
> >
> > --
> > Eric Evans
> > eev...@rackspace.com
> >
>
>

Reply via email to