On Jan 29, 2008 9:13 PM, Dustin Sallings <[EMAIL PROTECTED]> wrote:

>
>   It comes up a lot, so apparently it happens.
>
>   There are a few dimensions to interop:
>
>   * Hash algorithms
>   * Node location algorithms
>   * Flag usage
>   * Content encoding
>
>   There is at least one common hash algorithm I think every client
> supports.

I guess this is the FNV hash? For my purposes I hash the key outside of
memcached to avoid this particular issue :)


>
>   There are two node location algorithms many clients support -- at
> least one they all do (should?)

I'm not even looking at clients that don't support the 'consistent hashing
algorithm' ;)


>
>
>   Someone put together a matrix of flag usage recently.  It seems
> there are commonalities, but mostly by coincidence.  This needs work.


I believe you probably mean
http://www.hjp.at/zettel/m/memcached_flags.rxml.  I've also compiled
my own one looking primarily at the content encoding
types (currently sitting in an open-office sheet on my work pc, which I'm
hoping won't have locked up overnight!), comparing all the C# + Java clients
(stupidly I also tried to work out what libmemcached did before realising
how meaningless the question was!)   I'm more than happy to splurge out this
information if it is of interest to other people :)


>
>   Content encoding varies greatly.  Strings are somewhat easy, though
> not universal, but there are other common types that could handle a
> common encoding.


One that I came up against was Unsigned vs Signed   i.e. some platforms
don't support types at all that other platforms do <g> I can see why its a
decision that has never  been cleared up / agreed upon :) You'd think that
once a content encoding mechanism had been agreed it would be trivial to add
in a 'cross-platform' encoding mode to clients on an adhoc basis, but I
suspect my view of things is skewed/simplistic :)

Take care

- Ciaran



>
>
> --
> Dustin Sallings (mobile)
>
> On Jan 29, 2008, at 12:58, Ciaran <[EMAIL PROTECTED]> wrote:
>
> >
> >        There is some flag space reserved for something like flags that
> > aren't supposed to be exposed in the client APIs, but I'm having
> > trouble seeing the point.  I'm under the impression that not a lot of
> > users make heavy use of the flags for anything other than content
> > encoding.  That is, at least, where all the confusion is.
> >
> >  Thats a shame, perhaps I'm an edge case, do most people not share
> > across platforms, or if they do just store 'raw' data ?
> > - Ciaran
>



-- 
- Ciaran

Reply via email to