Subject: | Session::Store::FastMmap doesn't check the return value for set() |
The doc for Cache::FastMmap says :
"you cannot store values larger than a page in the cache at all.
Attempting to store values larger than a page size will fail (the set
() function will return false)."
Unfortunately, Session::Store::FastMmap doesn't check the return
value. So the session data is silently corrupted, and it's quite hard
to debug.
I suggest the following patch
74c74,75
< $c->_session_fastmmap_storage->set( $sid, $data );
---
Show quoted text
> $c->_session_fastmmap_storage->set( $sid, $data )
> or Catalyst::Exception->throw("store_session: data too large");