como instalar uma versão mais antiga de um pacote pecl

29

Eu tenho esse código

    $passengerId = new \MongoId(oPassenger->getId());

    return $this->createQueryBuilder('Device')
        ->update()
        ->multiple(true)
        ->field('activated')->set(false)
        ->field('passenger')->unsetField()->equals($passengerId)
        ->field('_id')->notEqual($deviceId)
        ->getQuery()
        ->execute();

que funciona muito bem no meu servidor dev, mas trava na minha máquina local.

rodando pecl listem dev dev

APC     3.1.13  beta
amqp    1.2.0   stable
intl    3.0.0   stable
mongo   1.3.7   stable

e nos retornos locais:

mongo   1.5.6   stable
xdebug  2.2.5   stable

a mensagem de falha na minha máquina é

"name":"MongoException","message":"Invalid object ID"},"code":500}

Eu tentei fazer o downgrade da minha versão local do mongo, mas não consegui descobrir isso com a documentação pobre do pecl. por exemplo, eu tentei isso:

sudo pecl upgrade -f -c channel://pecl.php.net/mongo-1.3.7

mas continuo recebendo channel does not existtodas as permutações do meu canal.

a execução mongod --versionlocal também retorna a versão do banco de dados v2.6.0 e no dev retorna a versão do banco de dados v2.4.3

idéias?

abbood
fonte

Respostas:

50

Para fazer o downgrade, você pode tentar o seguinte:

pecl install mongo-1.3.7


Então a lista pecl mostrará que funcionou.

UTI
fonte
4
Pode ser necessário forçar:pecl install -f mongo-1.3.7
bispo