Vraag is oud, maar het kan nuttig zijn voor iemand.
Als loadClassMetada elke keer wordt aangeroepen, lijkt het erop dat dat probleem in uw code zit. Maar ik veronderstel dat die metadata door doctrine wordt gecached. In dat geval kunt u het rechtstreeks wijzigen, kijk dan naar het volgende codefragment, het zou moeten werken:
<?php
class FooController extends Controller {
function fooAction() {
$em = $this->getDoctrine()->getEntityManager();
$cm = $em->getClassMetadata('FooBundle:FooEntity');
$cm->setTableName('special_table_name');
$repo = $em->getRepository('FooBundle:FooEntity');
$entities = $repo->createQueryBuilder('f')
->setMaxResults(1)
->orderBy('f.id', 'desc')
->getQuery()
->getResult();
return new Response('');
}
}