Выдать комплектовщикам разные свободные задания

Ответы получены от MySQL через X Protocol. Учебные коллекции после чтения удалены.

Наблюдаемый результат программы
НаблюдениеРезультат
Задание работника AJOB-1
Задание работника BJOB-2
JOB-1: сохранённый владелецA
JOB-2: сохранённый владелецB
JOB-3: сохранённое состояниеready
Число заданий после выдачи3
Документы и дополнительные наблюдения
{
    "worker_a_locked": {
        "_id": "JOB-1",
        "owner": "",
        "state": "ready"
    },
    "worker_b_skipped_first": {
        "_id": "JOB-2",
        "owner": "",
        "state": "ready"
    },
    "readback_after_commits": [
        {
            "_id": "JOB-1",
            "owner": "A",
            "state": "claimed"
        },
        {
            "_id": "JOB-2",
            "owner": "B",
            "state": "claimed"
        },
        {
            "_id": "JOB-3",
            "owner": "",
            "state": "ready"
        }
    ]
}

Полный JSON результата, включая реальные идентификаторы, сохранён рядом в result.json.