Uh oh!
There was an error while loading.Please reload this page.
- Notifications
You must be signed in to change notification settings - Fork9.7k
Session cleanup#3333
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to ourterms of service andprivacy statement. We’ll occasionally send you account related emails.
Already on GitHub?Sign in to your account
Session cleanup#3333
Uh oh!
There was an error while loading.Please reload this page.
Conversation
ghost commentedFeb 12, 2012
ghost commentedFeb 12, 2012
@stof I will look at the memcache issue and make a quick PR |
stof commentedFeb 12, 2012
@Drak the issue could exist with any SessionStorage as your SessionStorageInterface does not enforce making it serializable |
stof commentedFeb 12, 2012
@Drak note that this PR already fixes 2 typo in the memcached storage. It seems like some tests are missing for it as they should have been found (they would have raised a notice in the constructor) |
ghost commentedFeb 12, 2012
Afaik, only PDO is not serializable@ but the |
stof commentedFeb 12, 2012
@Drak what about a Mongo storage or things like that ? |
ghost commentedFeb 12, 2012
@stof Since you've started this PR would you mind removing |
ghost commentedFeb 12, 2012
stof commentedFeb 12, 2012
@Drak what about the |
ghost commentedFeb 12, 2012
The method just needs to |
Commits-------2c767d1 [HttpFoundation] Fixed closeSession for the Memcached storageec44e68 [HttpFoundation] Fixed the use of the prefix for the Memcached storage5808773 [HttpFoundation] Fixed a typo and updated the phpdoc for the session0550bef Removed methods duplicated from parent classDiscussion----------Session cleanupThis cleans the phpdoc of the refactored session by using inheritdoc in all appropriate places. For the SessionInterface, I added the ``@api`` tag in all methods as the Session class had them.It also fixes a few typos in the variable names.I figured a few things:- the Session class implements some methods that are not part of the SessionInterface. Is it intended or simply a left-over ?- the MemcachedSessionStorage uses a ``prefix`` property which does not exist. This is clearly a copy-paste from the MemcacheSessionStorage which has it. It also call the ``Memcached#close`` method which does not exist according to PhpStorm.@Drak could you check this class ? I don't know Memcached at all.- as I said on the refactoring PR, the Serializable implementation of the Session class seems totally wrong as the SessionStorage is not serializable./cc@Drak---------------------------------------------------------------------------by drak at 2012-02-12T02:09:38Z@stof there is a ticket about this, the problem exists from Symfony 2.0 also - refs#3000 PDOSessionStorage---------------------------------------------------------------------------by drak at 2012-02-12T02:10:12Z@stof I will look at the memcache issue and make a quick PR---------------------------------------------------------------------------by stof at 2012-02-12T02:11:07Z@Drak the issue could exist with any SessionStorage as your SessionStorageInterface does not enforce making it serializable---------------------------------------------------------------------------by stof at 2012-02-12T02:14:15Z@Drak note that this PR already fixes 2 typo in the memcached storage. It seems like some tests are missing for it as they should have been found (they would have raised a notice in the constructor)---------------------------------------------------------------------------by drak at 2012-02-12T02:14:50ZAfaik, only PDO is not serializable@ but the `Serializable` is on the SessionInterface. The problem is with#3000, the serialization is necessary but impossible.---------------------------------------------------------------------------by stof at 2012-02-12T02:21:42Z@Drak what about a Mongo storage or things like that ?---------------------------------------------------------------------------by drak at 2012-02-12T02:23:58Z@stof Since you've started this PR would you mind removing `$prefix.` from the `*session()` methods in `MemcachedSessionStorage` - they are not required because Memcached handles prefixes itself. I'll write some tests in another PR for them. I guess I omitted it because at the time I didn't have them on my test env.---------------------------------------------------------------------------by drak at 2012-02-12T02:24:35Z@stof - Let's take the serialization issue to#3000 because it's being discussed there.---------------------------------------------------------------------------by stof at 2012-02-12T02:27:27Z@Drak what about the ``close()`` method which does not exist in the Memcached class ?---------------------------------------------------------------------------by drak at 2012-02-12T03:58:11ZThe method just needs to `return true;`.
…se connection (grachevko)This PR was merged into the 3.4 branch.Discussion----------[HttpFoundation] MemcachedSessionHandler::close() must close connection| Q | A| ------------- | ---| Branch? | 3.4 <!-- see below -->| Bug fix? | yes| New feature? | no <!-- don't forget to update src/**/CHANGELOG.md files -->| BC breaks? | no <!-- seehttps://symfony.com/bc -->| Deprecations? | no <!-- don't forget to update UPGRADE-*.md and src/**/CHANGELOG.md files -->| License | MITIntoduced here#3333Commits-------38a9d8b [Bugfix] MemcachedSessionHandler::close() must close connection
…se connection (grachevko)This PR was merged into the 3.4 branch.Discussion----------[HttpFoundation] MemcachedSessionHandler::close() must close connection| Q | A| ------------- | ---| Branch? | 3.4 <!-- see below -->| Bug fix? | yes| New feature? | no <!-- don't forget to update src/**/CHANGELOG.md files -->| BC breaks? | no <!-- seehttps://symfony.com/bc -->| Deprecations? | no <!-- don't forget to update UPGRADE-*.md and src/**/CHANGELOG.md files -->| License | MITIntoduced heresymfony/symfony#3333Commits-------38a9d8b6a3 [Bugfix] MemcachedSessionHandler::close() must close connection
This cleans the phpdoc of the refactored session by using inheritdoc in all appropriate places. For the SessionInterface, I added the
@apitag in all methods as the Session class had them.It also fixes a few typos in the variable names.
I figured a few things:
prefixproperty which does not exist. This is clearly a copy-paste from the MemcacheSessionStorage which has it. It also call theMemcached#closemethod which does not exist according to PhpStorm.@Drak could you check this class ? I don't know Memcached at all./cc@Drak