alcaeus / mongo-php-adapter

:link: Adapter to provide ext-mongo interface on top of mongo-php-library

Geek Repo:Geek Repo

Github PK Tool:Github PK Tool

PHP Fatal error: Uncaught MongoDB\Driver\Exception\InvalidArgumentException: invalid argument for replace: empty key

adityavapronix opened this issue · comments

I'm using MongoDB extension for php 7.3 in ubuntu 18.04
I'm able to insert and fetch data from MongoDB But when I insert multi-update I get error

CASE 1
$manager = new MongoDB\Driver\Manager("mongodb://localhost:27017");
$bulk = new MongoDB\Driver\BulkWrite;

$bulk->update(
[
"id"=>1
],
["$set" => [
"id"=>3
]],
["multi"=>false, 'upsert' => false]
);
$result = $manager->executeBulkWrite('curiousMojo.user_logs', $bulk);
I'm getting error
PHP Fatal error: Uncaught MongoDB\Driver\Exception\InvalidArgumentException: invalid argument for replace: empty key in /var/www/html/mongo/mongo.php:51

Case 2:
$bulk->update(
[
"id"=>1
],
["$set" => [
"id"=>3
]],
["multi"=>true, 'upsert' => false]
);

As I'm set multi to true i
I'm getting error
PHP Fatal error: Uncaught MongoDB\Driver\Exception\InvalidArgumentException: Replacement document conflicts with true "multi" option in /var/www/html/mongo/mongo.php:51

Reference has taken for the update query from the following link
https://www.php.net/manual/en/mongodb-driver-bulkwrite.update.php