Выбрать окно по ID и не пропускать уменьшающуюся очередь

Ответы получены от MySQL через X Protocol. Созданные программой учебные объекты после чтения удалены.

Наблюдаемый результат программы
НаблюдениеРезультат
Код отказа modify.skip5012
После отказа все документы прежниеда
Выбранное окноB, C
Реально отмеченные IDB, C
Порции без смещения2, 2, 1
Осталось pending0
Итоговые статусыdone, done, done, done, done
Строки и дополнительные наблюдения
{
    "before": [
        {
            "_id": "A",
            "status": "pending",
            "window_selected": false
        },
        {
            "_id": "B",
            "status": "pending",
            "window_selected": false
        },
        {
            "_id": "C",
            "status": "pending",
            "window_selected": false
        },
        {
            "_id": "D",
            "status": "pending",
            "window_selected": false
        },
        {
            "_id": "E",
            "status": "pending",
            "window_selected": false
        }
    ],
    "skip_failure": {
        "class": "mysql_xdevapi\\Exception",
        "code": 5012,
        "message": "[HY000] Invalid parameter: offset value is not allowed for this operation"
    },
    "after_rejected": [
        {
            "_id": "A",
            "status": "pending",
            "window_selected": false
        },
        {
            "_id": "B",
            "status": "pending",
            "window_selected": false
        },
        {
            "_id": "C",
            "status": "pending",
            "window_selected": false
        },
        {
            "_id": "D",
            "status": "pending",
            "window_selected": false
        },
        {
            "_id": "E",
            "status": "pending",
            "window_selected": false
        }
    ],
    "selected_window": [
        {
            "_id": "B"
        },
        {
            "_id": "C"
        }
    ],
    "after_window": [
        {
            "_id": "A",
            "status": "pending",
            "window_selected": false
        },
        {
            "_id": "B",
            "status": "pending",
            "window_selected": true
        },
        {
            "_id": "C",
            "status": "pending",
            "window_selected": true
        },
        {
            "_id": "D",
            "status": "pending",
            "window_selected": false
        },
        {
            "_id": "E",
            "status": "pending",
            "window_selected": false
        }
    ],
    "selected_ids": [
        "B",
        "C"
    ],
    "batch_counts": [
        2,
        2,
        1
    ],
    "after_batches": [
        {
            "_id": "A",
            "status": "done",
            "window_selected": false
        },
        {
            "_id": "B",
            "status": "done",
            "window_selected": true
        },
        {
            "_id": "C",
            "status": "done",
            "window_selected": true
        },
        {
            "_id": "D",
            "status": "done",
            "window_selected": false
        },
        {
            "_id": "E",
            "status": "done",
            "window_selected": false
        }
    ],
    "remaining_pending": []
}

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