propelorm/Propel — pull request #389 by CyExy (2012-06-20 14:09:32+00:00)
Title: Change ObjectBuilder to reload related objects when collection is partia...

We are migrating from Propel 1.4 to 1.6 and have came up to some BC issues.

Given that Author (A1) has 2 Books: B1, B2

```php
add(BookPeer::ID, B1);

$books = BookPeer::doSelectJoinAuthor($c);

// poisoned cache issue, returns only the book B1
$books[0]->getAuthor()->getBooks();
```

When instance pooling has been turned on it becomes even bigger issue, because code down the line would get the object with poisoned cache from the pool

```php
getBooks();
```

There are other circumstances where this would happen, like when saving an `Book` object that has the `Author` object loaded, for instance.

If you find any issues with this fix please let me know, I'll try to address them.