SessionManager: Don't save non-persisted sessions to backend storage
authorBrad Jorsch <bjorsch@wikimedia.org>
Fri, 29 Jan 2016 23:02:11 +0000 (18:02 -0500)
committerBryanDavis <bdavis@wikimedia.org>
Sat, 30 Jan 2016 00:26:03 +0000 (00:26 +0000)
commitfcdd643a46d87b677f6cdcc3ba9440e1472d8df7
tree4e81f677b09ca24c96f0a21c4d7842da05cd6341
parent982869d6b0c145d7b53aad255efaf0702c434e1f
SessionManager: Don't save non-persisted sessions to backend storage

This introduces an in-process cache (using a HashBagOStuff) for session
data, and only saves to the external cache when the session is
persisted.

Bug: T125267
Change-Id: Ie161e0f7522cd68515b060ad8cf8c151b7198b0b
includes/session/SessionBackend.php
includes/session/SessionManager.php
tests/phpunit/includes/session/CookieSessionProviderTest.php
tests/phpunit/includes/session/ImmutableSessionProviderWithCookieTest.php
tests/phpunit/includes/session/PHPSessionHandlerTest.php
tests/phpunit/includes/session/SessionBackendTest.php
tests/phpunit/includes/session/SessionManagerTest.php