为什么mongoCursor-> key()导致php崩溃?

时间:2012-06-06 23:18:32

标签: mongodb doctrine-orm phpunit

我正在尝试在我的本地计算机上运行doctrine \ mongo-odm的测试套件。 Php崩溃时没有错误消息(当我说崩溃时,我的意思是崩溃,php进程终止)是测试:Doctrine\ODM\MongoDB\Test\Functional\FilesTest::testFiles

该测试具有以下内容:

public function testFiles()
{
    $image = new File();
    $image->setName('Test');
    $image->setFile(__DIR__ . '/file.txt');

    $profile = new Profile();
    $profile->setFirstName('Jon');
    $profile->setLastName('Wage');
    $profile->setImage($image);

    $this->dm->persist($profile);
    $this->dm->flush();

    $this->assertInstanceOf('Doctrine\MongoDB\GridFSFile', $image->getFile());
    $this->assertFalse($image->getFile()->isDirty());
    $this->assertEquals(__DIR__ . '/file.txt', $image->getFile()->getFilename());
    $this->assertTrue(file_exists($image->getFile()->getFilename()));
    $this->assertEquals('These are the bytes...', $image->getFile()->getBytes());

    $image->setName('testing');
    $this->dm->flush();
    $this->dm->clear();

fails here ===>>$image = $this->dm->find('Documents\File', $image->getId());
    $this->assertNotNull($image);
    $this->assertEquals('testing', $image->getName());
    $this->assertEquals('These are the bytes...', $image->getFile()->getBytes());
}

我已经跟踪mongoCursor->key()Doctrine\MongoDB\Cursor::key()的更深层失误。

我使用MongoFiles命令行工具在我的系统上测试了Mongo Grid FS,它运行正常。

没有错误消息我不知道在哪里看。有没有人有建议?

2 个答案:

答案 0 :(得分:3)

在1.2.11-dev中有几个相关的错误修正。 我可以使用pecl / mongo v1.2.10重现崩溃,但不能使用当前的v1.2.11-dev重现崩溃。

答案 1 :(得分:0)

回到1.2.9也将解决您的问题