This will fuck up count($collection); as it includes the the items that are already in the collection as well. It will not work this way, the cache has to be somewhere different.