mirror of
https://github.com/doctrine/orm.git
synced 2026-03-24 06:52:09 +01:00
DDC-2915: When there are 2 identical aliases in an object hydrated dql query tied to a relation, some times it retrives an empty relation #3629
Reference in New Issue
Block a user
Delete Branch "%!s()"
Deleting a branch is permanent. Although the deleted branch may continue to exist for a short time before it actually gets removed, it CANNOT be undone in most cases. Continue?
Originally created by @doctrinebot on GitHub (Jan 14, 2014).
Originally assigned to: @Ocramius on GitHub.
Jira issue originally created by user willf1976:
Hi
I recently had a problem with a Dql query I wrote where when I had a typo in my select which resulted in a very odd behavior. At a predictable row number one of the relations wouldn't hydrate.
This resulted in the fatal error when I tried to access the relation like so: $row->getLolGameSize()->getName()
Call to a member function getName() on a non-object
Here is the query that causes the problem -- removing the second reference to lgs in the select fixes the problem.
SELECT lst, ls, lr, lt, lstlt, lgt, lgs, lgs, ats
FROM Team\Entity\Lolsummonertournament lst
INNER JOIN lst.lolSummoner ls
INNER JOIN ls.lolRank lr
INNER JOIN ls.lolTier lt
LEFT JOIN lst.lolTier lstlt
INNER JOIN lst.lolGameType lgt
INNER JOIN lst.lolGameSize lgs
INNER JOIN lst.attendanceStatus ats
WHERE lst.tournament = :tournamentId
AND ls.summonerId IS NOT NULL
AND ls.mmr IS NOT NULL
ORDER BY ls.mmr desc
All the best
@doctrinebot commented on GitHub (Jan 14, 2014):
Comment created by @ocramius:
Fetch joining on filtered associations is very dangerous and unsupported.
@doctrinebot commented on GitHub (Jan 14, 2014):
Issue was closed with resolution "Invalid"