MongoDB\Driver\WriteConcern::__construct
(mongodb >=1.0.0)
MongoDB\Driver\WriteConcern::__construct — Создать новый WriteConcern
Описание
$w
, int $wtimeout
= ?
, bool $journal
= ?
)Создает новый MongoDB\Driver\WriteConcern, который является неизменяемым объектом значения.
Список параметров
-
w
-
Гарантия записи Значение Описание 1 Требует подтверждение, что операция записи распространилась на автономный mongod
или на первичный в наборе реплик. Это гарантия записи по умолчанию для MongoDB.0 Не требует подтверждение операции записи. Тем не менее, это может вернуть информацию о исключениях сокета и сетевых ошибках в приложение. <целое число больше 1> Числа, превышающие 1 действительны только для набора реплик для запроса подтверждения от указанного количества членов, включая первичный. MongoDB\Driver\WriteConcern::MAJORITY
Требует подтверждения того, что операции записи распространяются на большинство голосующих узлов, включая первичный, и были записаны в журнал на диск для этих узлов.
До MongoDB 3.0 это относится к большинству членов набора реплик (а не только к узлам голосования).
string Строковое представление интерпретируется как набор тегов. Требует подтверждение, что операция записи распространяется на член набора реплик с указанным тегом. -
wtimeout
-
Сколько ждать (в миллисекундах) ответа от вторичных узлов перед тем, как выдать ошибку.
wtimeout
приводит к тому, что операции записи возвращаются с ошибкой (WriteConcernError) после указанного периода, даже если требуемая гарантия записи в конечном счете будет успешной. Когда эти гарантии записи возвращаются, MongoDB не отменяет успешные изменения данных, выполненные до того, как гарантия записи превысила временной лимитwtimeout
Если указано,
wtimeout
должен быть 64-битным целым числом со знаком, больше или равен нулю.Время ожидания гарантии записи Значение Описание 0 Блокировать бесконечно. Это значение по умолчанию. <целое число больше, чем 0> Миллисекунды до ожидания возврата. -
journal
-
Ожидать, пока mongod не применит запись в журнал.
Ошибки
- При ошибке парсинга аргумента бросает исключение MongoDB\Driver\Exception\InvalidArgumentException.
- При неверном
w
или отрицательномwtimeout
или если они больше, чем 32-битное целое число со знаком, выбрасывает MongoDB\Driver\Exception\InvalidArgumentException
Список изменений
Версия | Описание |
---|---|
PECL mongodb 1.7.0 |
Параметр wTimeout теперь принимает 64-битные значения.
|
Примеры
Пример #1 Пример использования MongoDB\Driver\WriteConcern::__construct()
<?php
/* Запрос подтверждения записи от большинства узлов набора реплик */
$wc = new MongoDB\Driver\WriteConcern(MongoDB\Driver\WriteConcern::MAJORITY, 500);
/* Запрос подтверждения записи от узла, настроенного с тегом "MultipleDC" */
$wc = new MongoDB\Driver\WriteConcern("MultipleDC", 500);
?>