Hi Patrick, The protocol docs say that they key must not include control characters or whitespace, but as far as I can tell, the only really disallowed characters are space, CR and LF. Colon is absolutely not disallowed, simple testing shows you this:
set foo:bar 0 0 5 abcde STORED get foo:bar VALUE foo:bar 0 5 abcde END Even TAB worked fine for me, so so much for the "no whitespace" rule: set foo^Ibar 0 0 5 12345 STORED get foo^Ibar VALUE foo bar 0 5 12345 END Control characters are fine too: set foo^Gbar 0 0 4 beep STORED get foo^Gbar VALUE foobar 0 4 beep END This is against version 1.2.5 on Windows, I hardly think other versions work differently, but different clients may or may not handle it nicely, so if you want to be safe, just strip out all characters at or below 32. /Henrik On Wed, Mar 11, 2009 at 00:11, Patrick May <[email protected]> wrote: > > I'm writing a filter (appside) to filter out "control characters". > I've got a feeling that the colon is one (":"). But are there any > other control characters? What's the complete list of memcache > control characters which are disallowed in keys? > > Thanks for the great tool! > > - patrick may
