Подтверждение записи и согласованное чтение MongoDB

mongodb118-consistency-secondary-selection

Это строки реального запуска на синтетических документах. Своя коллекция после проверки удалена.

Read preferenceЧто произошлоЦена, руб.
secondaryподходящего узла нетNULL
secondaryPreferredprimary550

Наблюдения этого запуска

Ниже сохранены политики чтения/записи, наблюдаемые документы и диагностические данные. Один узел не является испытанием отказоустойчивости. Случайные имена учебных объектов заменены подписями.

Строгая политика
{
    "write": {
        "w": "majority",
        "journal": true,
        "timeout_ms": 1500,
        "default": false
    },
    "read": {
        "level": "majority",
        "default": false
    },
    "route": {
        "mode": "secondary",
        "tags": [],
        "max_staleness_seconds": 90
    }
}
Разрешённый переход на primary
{
    "write": {
        "w": "majority",
        "journal": true,
        "timeout_ms": 1500,
        "default": false
    },
    "read": {
        "level": "majority",
        "default": false
    },
    "route": {
        "mode": "secondaryPreferred",
        "tags": [
            []
        ],
        "max_staleness_seconds": 90
    }
}
Ожидаемый отказ выбора
"MongoDB\\Driver\\Exception\\ConnectionTimeoutException"
Прочитанный товар
[
    {
        "_id": 601,
        "sku": "CUP",
        "price": 550
    }
]
Границы
{
    "members": 1,
    "secondary_count": 0,
    "server_selection_timeout_ms": 700,
    "failover_test": false,
    "replication_lag_measured": false
}

PHP 8.5.11; mongodb 2.5.5; MongoDB 8.0.34.