We're using Cassandra to store our sessions, all in a single column family
"Sessions" with the format:
Sessions['session_key'] = {'val': <actual_value>}
(session_key is a randomly generated hash)

The "raw" keys I'm talking about are for example the 'key' value as seen
from Cassandra DEBUG output:
insert writing local RowMutation(keyspace='my_keyspace',
key='73657373696f6e3a6365613765323931353838616437343732363130646163666331643161393334',
modifications=[Sessions])

Today we ran into a problem where a session with a given key (say
"session:12345") seemingly disappeared (at least it appeared that way to the
client app), but in the server log DEBUG output, the "raw" Cassandra key
that seemed to correspond to that session_key (say "a12345f") was still
being used as evidenced by DEBUG log output. Indeed, none of the existing
session_keys corresponded to the "a12345f" raw key. However, in
Cassandra-cli when I do the "list Sessions" command, the "a12345f" raw key
shows up as part of the output.

I'd like to dig further into the issue, but first I need to find out:
what are these keys and how are they determined?
Is there any way I could use them in querying Cassandra to find out what
they're pointing to? (Seems that even the cli expects the "session:12345"
type key rather than raw ones when querying)


Thanks,
Suan

Reply via email to