Skip to content

MongoDbSessionHandler.php does not support new PHP MongoDB Extension #19183

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 our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Closed
omanizer opened this issue Jun 25, 2016 · 0 comments
Closed

MongoDbSessionHandler.php does not support new PHP MongoDB Extension #19183

omanizer opened this issue Jun 25, 2016 · 0 comments

Comments

@omanizer
Copy link
Contributor

This file depends on the Mongo, MongoClient, MongoId, MongoDate, and MongoBinData classes that are no longer present in the new MongoDB extension, see here

I've made this gist that utilizes the new classes.

Steps to reproduce this issue:

  1. Create & Load a session that is stored in MongoDB using the original PHP MongoDB driver
  2. Observe that the session is created and loaded as expected
  3. Uninstall the Mongo extension in PHP and install the MongoDB extension in it's place.
  4. Create a session and attempt to store it in MongoDB
  5. Observe that this process fails with the error MongoClient or Mongo instance required. This exception is found on Line 73 of Symfony\Component\HttpFoundation\Session\Storage\Handler\MongoDbSessionHandler.

I'd suggest modifying this file to have the ability to work with both PHP extensions depending on which classes exist.

omanizer added a commit to omanizer/symfony that referenced this issue Jun 25, 2016
omanizer added a commit to omanizer/symfony that referenced this issue Jun 25, 2016
fabpot added a commit that referenced this issue Jul 1, 2016
…n in sessions. (omanizer)

This PR was submitted for the master branch but it was merged into the 2.7 branch instead (closes #19186).

Discussion
----------

Fix for #19183 to add support for new PHP MongoDB extension in sessions.

| Q             | A
| ------------- | ---
| Branch?       | 3.0
| Bug fix?      | yes
| New feature?  | yes (ish)
| BC breaks?    | no
| Deprecations? | no
| Tests pass?   | no
| Fixed tickets | #19183
| License       | MIT
| Doc PR        |

Commits
-------

ebbc706 Fix for #19183 to add support for new PHP MongoDB extension in sessions.
@fabpot fabpot closed this as completed Jul 1, 2016
nicolas-grekas added a commit that referenced this issue Jul 1, 2016
* 2.7:
  [travis] Fix deps=low/high builds
  fixed CS
  Fix for #19183 to add support for new PHP MongoDB extension in sessions.
  bumped Symfony version to 2.7.16
  updated VERSION for 2.7.15
  update CONTRIBUTORS for 2.7.15
  updated CHANGELOG for 2.7.15
  Fixed typos in the expectedException annotations

Conflicts:
	src/Symfony/Component/HttpKernel/Kernel.php
nicolas-grekas added a commit that referenced this issue Jul 1, 2016
* 2.8:
  [travis] Fix deps=low/high builds
  fixed CS
  skip test with current phpunit bridge
  Fix for #19183 to add support for new PHP MongoDB extension in sessions.
  [Console] Fix for block() padding formatting after #19189
  [Security][Guard] check if session exist before using it
  bumped Symfony version to 2.8.9
  updated VERSION for 2.8.8
  updated CHANGELOG for 2.8.8
  bumped Symfony version to 2.7.16
  updated VERSION for 2.7.15
  update CONTRIBUTORS for 2.7.15
  updated CHANGELOG for 2.7.15
  Fix some lowest deps
  Fixed typos in the expectedException annotations

Conflicts:
	CHANGELOG-2.7.md
	CHANGELOG-3.0.md
	src/Symfony/Bundle/FrameworkBundle/composer.json
	src/Symfony/Component/HttpFoundation/Tests/Session/Storage/Handler/MongoDbSessionHandlerTest.php
	src/Symfony/Component/HttpKernel/Kernel.php
	src/Symfony/Component/HttpKernel/composer.json
	src/Symfony/Component/Yaml/Tests/ParserTest.php
nicolas-grekas added a commit that referenced this issue Jul 1, 2016
* 3.0:
  [travis] Fix deps=low/high builds
  fixed CS
  skip test with current phpunit bridge
  Fix for #19183 to add support for new PHP MongoDB extension in sessions.
  [Console] Fix for block() padding formatting after #19189
  [Security][Guard] check if session exist before using it
  bumped Symfony version to 3.0.9
  updated VERSION for 3.0.8
  updated CHANGELOG for 3.0.8
  bumped Symfony version to 2.8.9
  updated VERSION for 2.8.8
  updated CHANGELOG for 2.8.8
  bumped Symfony version to 2.7.16
  updated VERSION for 2.7.15
  update CONTRIBUTORS for 2.7.15
  updated CHANGELOG for 2.7.15
  Fix some lowest deps
  Fixed typos in the expectedException annotations

Conflicts:
	src/Symfony/Component/HttpKernel/Kernel.php
	src/Symfony/Component/Security/Guard/Authenticator/AbstractFormLoginAuthenticator.php
nicolas-grekas added a commit that referenced this issue Jul 1, 2016
* 3.1: (22 commits)
  [travis] Fix deps=low/high builds
  [Form] Fix depreciation triggers
  fixed CS
  skip test with current phpunit bridge
  Fix for #19183 to add support for new PHP MongoDB extension in sessions.
  [Console] Fix for block() padding formatting after #19189
  [Security][Guard] check if session exist before using it
  bumped Symfony version to 3.1.3
  updated VERSION for 3.1.2
  updated CHANGELOG for 3.1.2
  bumped Symfony version to 3.0.9
  updated VERSION for 3.0.8
  updated CHANGELOG for 3.0.8
  bumped Symfony version to 2.8.9
  updated VERSION for 2.8.8
  updated CHANGELOG for 2.8.8
  bumped Symfony version to 2.7.16
  updated VERSION for 2.7.15
  update CONTRIBUTORS for 2.7.15
  updated CHANGELOG for 2.7.15
  ...

Conflicts:
	src/Symfony/Component/HttpKernel/Kernel.php
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
Development

No branches or pull requests

4 participants