Symfony / Doctrine:“Undefined index” - 批处理时出错

时间:2016-07-22 06:41:57

标签: symfony doctrine-orm

我知道这是来自Symfony2 / Doctrine2 throwing index error when flushing the entity manager的旧问题,但错误仍然存​​在,我不知道该怎么做:

我有一个Symfony-Command-Script,它在数据库中插入实体。我正在使用

PHP版本5.6 symfony / symfony(v2.8.8) doctrine / orm(v2.5.4),

代码的重要部分是:

$em = $this->getContainer()->get('doctrine')->getManager(); 
    $em->getConnection()->getConfiguration()->setSQLLogger(null);
    // remove all listeners
    foreach ($em->getEventManager()->getListeners() as $event => $listeners) {
        foreach ($listeners as $listener) {
            $em->getEventManager()->removeEventListener($event, $listener);
        }
    }
    .....

foreach($importdateien as $importdatei) {
    $em_batchSize = 0;
    ...     

    $em->persist($artikel); // article is an Symfony-Entity

    $em_batchSize ++;
    if (($em_batchSize % 20) === 0) {
        $em->flush();
        $em->clear(); // Detaches all objects from Doctrine!
        $this->getContainer()->get('doctrine')->resetManager();
        $em = $this->getContainer()->get('doctrine')->getManager();
    }
}

正好在20次插入后我得到了错误:

[ErrorException] 未定义索引:000000004c2a3e220000000066122f03

循环中没有删除或更新语句。有简单的插入

我想我已经阅读了几个可能解决方案的页面,但没有任何效果。

模式已经过验证,没有错误。

0 个答案:

没有答案