public function detectEntityChanges()
{
$managed = [];
foreach ($this->entityStates as $oid => $state) {
if ($state === self::STATE_MANAGED) {
$managed[] = $oid;
}
}
foreach ($managed as $oid) {
$id = $this->entityIds[$oid];
$entityA = $this->entitiesById[$id];
$visited = [];
$this->doPersist($entityA, $visited);
$entityB = $this->entityStateReferences[$id];
$this->computeChanges($entityA, $entityB);
}
}