title: Propel adds CROSS JOIN to query when using an alias to JOIN tables
body: <p>Trying to do a fairly simple query in Propel 2. I have a Person table and a Possession table - persons can have many possessions but only one of each possession type. So a person can have 1 book, 1 car, etc. I'm trying to write a query in Propel that will return all persons along with their car name provided they have a car. Here's the code and resulting query:</p>
  
  <pre><code>$x = PersonQuery::create()
    -&gt;groupById()
    -&gt;leftJoinPossession()
    -&gt;addJoinCondition('Possession','Possession.possession_type = ?', 'car')
    -&gt;withColumn('Possession.possession_name', 'CarName')
    -&gt;where('Possession.possession_name IS NOT NULL')
    -&gt;find()
    -&gt;toString();
  
  //resulting sql
  SELECT person.id, possession.possession_name as CarName
  FROM person
  LEFT JOIN possession  ON (person.id=possession.person_id AND possession.possession_type = 'car')
  WHERE possession.possession_name IS NOT NULL;
  </code></pre>
  
  <p>This works as expected. However, I need to do multiple joins to the possession table (get the books for each person for example) so I need to use an alias. Here's what happens when I modify the previous query just to use an alias for the possession table (and to also get the book for each person):</p>
  
  <pre><code>$x = PersonQuery::create()
    -&gt;groupById()
    -&gt;leftJoinPossession('p')
    -&gt;addJoinCondition('p','p.possession_type = ?', 'car')
    -&gt;leftJoinPossession('p2') 
    -&gt;addJoinCondition('p2','p2.possession_type = ?', 'book')
    -&gt;withColumn('p.possession_name', 'CarName')
    -&gt;withColumn('p2.possession_name', 'BookName')
    -&gt;where('p.possession_name IS NOT NULL')
    -&gt;find()
    -&gt;toString();
  
  //resulting sql
  SELECT person.id, p.possession_name as CarName, p2.possession_name as BookName
  FROM person
  CROSS JOIN possession
  LEFT JOIN possession p ON (person.id=p.person_id AND p.possession_type = 'car')
  LEFT JOIN possession p2 ON (person.id=p2.person_id AND p2.possession_type = 'book')
  WHERE p.possession_name IS NOT NULL;
  </code></pre>
  
  <p>As you can see, for some reason Propel adds "CROSS JOIN possession" to the query. This doesn't change the result of the query but it makes it extremely slow. Any ideas on how I can tell Propel not to use a CROSS JOIN while still using an alias for my joined table? (the CROSS JOIN also disappears if I take out the 'where' clause)</p>