Skip to content
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

Fix MEMBER_OF comparison when using criteria in query builder #7737

Merged
merged 1 commit into from
Aug 14, 2019
Merged

Fix MEMBER_OF comparison when using criteria in query builder #7737

merged 1 commit into from
Aug 14, 2019

Conversation

Smartel1
Copy link
Contributor

@Smartel1 Smartel1 commented Jun 7, 2019

Fixes "Unknown comparison operator: MEMBER_OF" exception when apply Criteria memberOf comparison to queryBuilder

@greg0ire

This comment has been minimized.

@Smartel1

This comment has been minimized.

greg0ire
greg0ire previously approved these changes Jun 8, 2019
Copy link
Member

@greg0ire greg0ire left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Looks fine to me. Are there any docs that need to be updated/or tests that need to be written?

@Smartel1
Copy link
Contributor Author

Smartel1 commented Jun 8, 2019

Im not sure. I will check it tommorrow

Copy link
Contributor

@vudaltsov vudaltsov left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

vudaltsov
vudaltsov previously approved these changes Jun 9, 2019
greg0ire
greg0ire previously approved these changes Jun 9, 2019
azjezz
azjezz previously approved these changes Jun 16, 2019
SenseException
SenseException previously approved these changes Jun 17, 2019
@kevinpapst
Copy link

Just ran into this issue. Since it has two approvals, what about merging?

@Smartel1
Copy link
Contributor Author

Smartel1 commented Aug 6, 2019

Can I merge by myself? Or what’s the question?

@lcobucci
Copy link
Member

It hasn't been merged because IMHO this should be considered as an improvement and not a bug fix, so should be sent to branch 2.7 or master.

@kevinpapst
Copy link

There is a public API method Criteria::expr()->memberOf() which runs into an exception when used. One could argue that this feels like a bug ...

@lcobucci
Copy link
Member

lcobucci commented Aug 13, 2019

@kevinpapst my bad, the title and the patch mislead me. It would be crucial to have a functional test case for it then. I'll rebase this branch and add it.


Edit: I've rebased the branch and created a test but the error described in the first comment is a bit misleading so I'd like to clarify one tiny thing: can you please send us a tiny snippet of the issue? Just the query builder calls.

@lcobucci lcobucci changed the title Add MEMBER_OF comparison to queryExpressionVisitor Fix MEMBER_OF comparison when using criteria in query builder Aug 13, 2019
@lcobucci lcobucci dismissed stale reviews from SenseException and greg0ire August 13, 2019 23:19

We're missing functional tests here

@Smartel1
Copy link
Contributor Author

Smartel1 commented Aug 14, 2019

$criterion = Criteria::create()->andWhere(
Criteria::expr()->memberOf(':user', 'e.likedUsers')
);

$qb->addCreiteria($criterion);

@lcobucci lcobucci dismissed stale reviews from azjezz and vudaltsov via 3cefa70 August 14, 2019 07:39
@lcobucci lcobucci merged commit 74415be into doctrine:2.6 Aug 14, 2019
@lcobucci
Copy link
Member

@Smartel1 🚢

@lcobucci lcobucci added this to the 2.6.4 milestone Aug 14, 2019
@lcobucci lcobucci self-assigned this Aug 14, 2019
Voziv added a commit to ratehub/doctrine2 that referenced this pull request Oct 22, 2019
v2.6.4

[![Build Status](https://travis-ci.org/doctrine/orm.svg?branch=v2.6.4)](https://travis-ci.org/doctrine/orm)

In this release we've fixes many bugs (including a performance regression) and
made the v2.x series compatible with PHP 7.4.

--------------------------------------------

- Total issues resolved: **11**
- Total pull requests resolved: **32**
- Total contributors: **30**

Improvement
-----------

 - [7785: Fix "access array offset on value of type null" PHP 7.4 notices](doctrine#7785) thanks to @mlocati
 - [7142: Rename this repository to doctrine/orm](doctrine#7142) thanks to @greg0ire

Bug
------------------

 - [7821: Bug: doctrine#7820 paginator ignores dbal type conversions in identifiers](doctrine#7821) thanks to @Ocramius
 - [7778: Guard L2C regions against corrupted data](doctrine#7778) thanks to @umpirsky
 - [7767: PersistentCollection::matching() does not respect the collections native sorting](doctrine#7767) thanks to @stephanschuler
 - [7766: Respect collection orderBy meta when matching()](doctrine#7766) thanks to @stephanschuler
 - [7761: Do not modify UOW on PersistentCollection::clear() when owner has DEFFERED&doctrine#95;EXPLICIT change tracking policy](doctrine#7761) thanks to @paxal
 - [7750: Fix incorrect return of null values in L2C](doctrine#7750) thanks to @AlexSmerw
 - [7737: Fix MEMBER&doctrine#95;OF comparison when using criteria in query builder](doctrine#7737) thanks to @Smartel1
 - [7735: Null in fields value in Cached Entity several times on day on high-load project.](doctrine#7735) thanks to @AlexSmerw
 - [7630: Fix doctrine#7629 - `scheduledForSynchronization` leaks memory when using `@ORM\ChangeTrackingPolicy("DEFERRED&doctrine#95;EXPLICIT")`](doctrine#7630) thanks to @yethee
 - [7528: Prevent `UnitOfWork` lookup for DBAL types specified in `Doctrine\ORM\Query#setParameter()`](doctrine#7528) thanks to @Ocramius
 - [7322: JoinedSubclassPersister pass identifier types on delete](doctrine#7322) thanks to @dennisenderink and @fred-jan
 - [7266: Call to a member function resolveAssociationEntries() on boolean {"detail":"&doctrine#91;object&doctrine#93; (Symfony\\Component\\Debug\\Exception\\FatalThrowableError(code: 0): Call to a member function resolveAssociationEntries() on boolean at /www/vendor/doctrine/orm/lib/Doctrine/ORM/Cache/DefaultQueryCache.php:140)"}](doctrine#7266) thanks to @mingmingxianseng
 - [4632: DDC-3789: Paginator does not convert entity ids if they are value objects](doctrine#4632) thanks to @doctrinebot

Documentation
-------------

 - [7818: Add note into docs about not using SimpleAnnotationReader](doctrine#7818) thanks to @SenseException
 - [7791: Fix preFlush event documentation stating incorrectly that flush can be called safely](doctrine#7791) thanks to @Steveb-p
 - [7753: Add ORM annotations in getting-started docs](doctrine#7753) thanks to @SenseException and @wajdijurry
 - [7744: Fixed a typo-error](doctrine#7744) thanks to @noobshow
 - [7732: &doctrine#91;Documentation&doctrine#93; Missing comma fix](doctrine#7732) thanks to @lchrusciel
 - [7729: Update DATE&doctrine#95;ADD and DATE&doctrine#95;SUB docs](doctrine#7729) thanks to @JoppeDC
 - [7672: Added cross-links to relevant documentation](doctrine#7672) thanks to @jschaedl
 - [7612: Update ordered-associations.rst](doctrine#7612) thanks to @spirlici
 - [7610: Change APC to OPcache in improving-performance.rst ](doctrine#7610) thanks to @smtchahal
 - [7596: Correct method names and broken link in docs](doctrine#7596) thanks to @mbessolov
 - [7577: Fix of single link to dbal docs in advanced-configuration.rst](doctrine#7577) thanks to @SenseException
 - [7572: Remove codeigniter Framework example](doctrine#7572) thanks to @SenseException
 - [7571: Fix typo in inheritance mappings docs](doctrine#7571) thanks to @batwolf
 - [7557: Change Stackoverflow tag to doctrine-orm](doctrine#7557) thanks to @malarzm
 - [7551: &doctrine#91;2.6&doctrine#93; Migrate repository name doctrine/doctrine2 -> doctrine/orm](doctrine#7551) thanks to @Majkl578
 - [7530: Documentation error typo fix: s/Used-defined/User-Defined](doctrine#7530) thanks to @vladyslavstartsev
 - [7519: doctrine#7518 Fixed type mismatch between `EntityRepository#&doctrine#95;&doctrine#95;construct()` and its documented constructor arguments](doctrine#7519) thanks to @koftikes
 - [7518: `EntityRepository::&doctrine#95;&doctrine#95;construct()` expects `Doctrine\ORM\EntityManager` instead of actual required `EntityManagerInterface`](doctrine#7518) thanks to @koftikes
 - [7490: Fix broken link](doctrine#7490) thanks to @vladyslavstartsev
 - [7483: Fixed a minor syntax issue](doctrine#7483) thanks to @javiereguiluz

CI
-----------------

 - [7794: Fix test compatibility with DBAL 2.10.x-dev](doctrine#7794) thanks to @lcobucci
 - [7731: Replace custom install script with add-on](doctrine#7731) thanks to @greg0ire
 - [7473: Incremental CS checks in 2.x branches](doctrine#7473) thanks to @Majkl578
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
Development

Successfully merging this pull request may close these issues.

7 participants