>Probably for testing purposes? I really only am not sure about it.

Not sure about this as well. Full featured databases are always available even in test environment. So they can be used.

>After all I think CCacheHttpSession is there to fulfill some purpose...

I guess it's there because session is performance critical thing, while mutexes are not. Why do we need to use memcached as distributed lock manager while there are tons of other well working ways of doing it?