Uploaded image for project: 'Doctrine 2 - ORM'
  1. Doctrine 2 - ORM
  2. DDC-2794

the Paginator does not support arbitrary join

    Details

    • Type: Improvement
    • Status: Resolved
    • Priority: Major
    • Resolution: Fixed
    • Affects Version/s: Git Master, 2.3.4, 2.4.1
    • Fix Version/s: 2.5
    • Component/s: Tools
    • Security Level: All
    • Labels:

      Description

      Using the following query with the paginator fails:

      SELECT u
      FROM User u
      JOIN Message m WITH m.author = u
      WHERE m.status = 'draft' -- a condition justifying the join
      

      The CountWalker and the CountOutputWalker both throw a exception saying "Cannot count query which selects two FROM components, cannot make distinction"

      This message is wrong (I can make distinction here. Only User is selected in the result set) and confusing (I spent some time finding the second FROM before figuring it was related to the use of an arbitrary join instead of an association join).

        Issue Links

          Activity

          Hide
          Sagar.Lotiya Sagar added a comment -

          This issue should be back-ported to 2.4.x as this seems not just new supported feature but should be present in 2.4 as improvements or fix.

          Show
          Sagar.Lotiya Sagar added a comment - This issue should be back-ported to 2.4.x as this seems not just new supported feature but should be present in 2.4 as improvements or fix.
          Hide
          ocramius Marco Pivetta added a comment -

          No, this is actually a new supported feature: I'm changing the issue type.

          Show
          ocramius Marco Pivetta added a comment - No, this is actually a new supported feature: I'm changing the issue type.
          Hide
          darkangel Glen Ainscow added a comment -

          Is this going to be back-ported to 2.4.x?

          Show
          darkangel Glen Ainscow added a comment - Is this going to be back-ported to 2.4.x?
          Hide
          stof Christophe Coevoet added a comment -

          Why changing the status to "Awaiting feedback" ? It is not waiting for a feedback of the reporter to check the fix. It is an open ticket which does not have a fix yet

          Show
          stof Christophe Coevoet added a comment - Why changing the status to "Awaiting feedback" ? It is not waiting for a feedback of the reporter to check the fix. It is an open ticket which does not have a fix yet
          Hide
          ppinel Pierre-Antoine Pinel added a comment - - edited

          Hi,

          I have the same issue.

          My query is : SELECT entity FROM W\XBundle\Entity\X entity LEFT JOIN Z\YBundle\Entity\Y y WITH y.x = entity LEFT JOIN y.v v WHERE v.name LIKE :like

          Is there a way to fix this issue ? I really need this to work with the Paginator.

          Best,

          Show
          ppinel Pierre-Antoine Pinel added a comment - - edited Hi, I have the same issue. My query is : SELECT entity FROM W\XBundle\Entity\X entity LEFT JOIN Z\YBundle\Entity\Y y WITH y.x = entity LEFT JOIN y.v v WHERE v.name LIKE :like Is there a way to fix this issue ? I really need this to work with the Paginator. Best,

            People

            • Assignee:
              ocramius Marco Pivetta
              Reporter:
              stof Christophe Coevoet
            • Votes:
              3 Vote for this issue
              Watchers:
              7 Start watching this issue

              Dates

              • Created:
                Updated:
                Resolved: