-
-
Notifications
You must be signed in to change notification settings - Fork 9.6k
[Messenger] Incompatibility with DBAL >=3.0 on PostgreSQL transport #42589
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
Comments
Yes, it should have. Can you confirm, @ohaag? |
I will as soon as I can (probably tommorow). |
The fix will be released with 5.3.10 and can already be tested on the 5.3 dev branch. |
Yes, I confirm it is fixed. |
Thank you for testing! |
While I'm here, what is the easiest way to know what sub-package of symfony/symfony is impacted by a commit ? In this case the issue was related to the messenger component and the doctrine connector so symfony/doctrine-messenger was easy to find, but sometimes it is less obvious on what project a fix is merged. |
@ohaag look at which part of symfony/symfony is impacted by the diff. |
Symfony version(s) affected: 5.3.4
Description
When using the messenger component with
symfony/doctrine-messenger
on PostgreSQL, if you're not using doctrine/orm, you can updatedoctrine/dbal
to >=3.0. However, for >=3.0, when we run a consumer, the PDO\Connection does not have pgsqlGetNotify method anymore. If I specifydoctrine/dbal
< 3.0 in my composer, it works well in 2.13.How to reproduce
Create a project and require
symfony/messenger
andsymfony/doctrine-messenger
. You should have dependencies like this (and some other symfony packages)and your doctrine/dbal should be >3.0
Setup a message handler using Doctrine Transport. Then if you run the consumer, you will have an error reporting that the
pgsqlGetNotify
method does not exist.The line triggering the error: https://github.com/symfony/doctrine-messenger/blob/5.3/Transport/PostgreSqlConnection.php#L75
Additional context
On many projects, the bug will not happen because
doctrine/orm
(2.9.3 at the moment) ordoctrine/migrations
, both prevent the upgrade todoctrine/dbal
>=3.0.The text was updated successfully, but these errors were encountered: