{
    "id": "cub168-lock-timeout",
    "title": "Не держать посетителя в ожидании занятого остатка",
    "columns": [
        "Наблюдение",
        "Результат"
    ],
    "rows": [
        [
            "Товар",
            "Кабель"
        ],
        [
            "Ожидание блокировки, мс",
            1000
        ],
        [
            "Лимит команды, мс",
            5000
        ],
        [
            "Первая попытка остановлена",
            true
        ],
        [
            "Операция явно отменена",
            true
        ],
        [
            "Остаток после двух откатов",
            3
        ],
        [
            "Примечание второй позиции",
            "обычный"
        ],
        [
            "Владелец блокировки завершён",
            true
        ],
        [
            "Новая операция зарезервировала",
            1
        ],
        [
            "Итоговый остаток",
            2
        ]
    ],
    "checks": {
        "lock_budget": true,
        "query_budget": true,
        "diagnosed_timeout": true,
        "explicit_rollback": true,
        "no_partial_change": true,
        "owner_rollback": true,
        "owner_stopped": true,
        "new_operation": true,
        "setting_restored": true,
        "request_closed": true,
        "owned_objects_removed": true
    },
    "observations": {
        "timeout_kind": "lock_timeout",
        "diagnostic": {
            "value": false,
            "code": -75,
            "facility": 1,
            "warning": true,
            "message_present": true
        },
        "elapsed_ms_observed": 1086.0040187835693,
        "lock_milliseconds": 1000,
        "query_milliseconds": 5000,
        "pending_note_changed_before_failure": false,
        "after_rollback": [
            {
                "id": "1",
                "title": "Кабель",
                "qty": "3",
                "note": null
            },
            {
                "id": "2",
                "title": "Клемма",
                "qty": "7",
                "note": "обычный"
            }
        ],
        "final_card": [
            {
                "title": "Кабель",
                "qty": "2"
            }
        ],
        "lock_child": {
            "started": true,
            "stopped": true,
            "exit_code": 0,
            "termination_by_parent": false,
            "deadline_seconds": 20,
            "handshake": {
                "event": "locked",
                "qty": "99"
            },
            "completed": {
                "event": "released",
                "rolled_back": true,
                "row": {
                    "title": "Кабель",
                    "qty": "3"
                }
            },
            "launch_handshake": {
                "event": "started"
            }
        },
        "settings_before": {
            "PARAM_ISOLATION_LEVEL": 4,
            "PARAM_LOCK_TIMEOUT": -1,
            "PARAM_MAX_STRING_LENGTH": 1073741823,
            "PARAM_AUTO_COMMIT": 0
        },
        "settings_after": {
            "PARAM_ISOLATION_LEVEL": 4,
            "PARAM_LOCK_TIMEOUT": -1,
            "PARAM_MAX_STRING_LENGTH": 1073741823,
            "PARAM_AUTO_COMMIT": 0
        }
    },
    "runtime": {
        "php": "7.4.33",
        "extension": "11.2.0.0002",
        "php_extension_metadata": null,
        "server_version": "11.3.5.1274",
        "client_version": "11.2.0",
        "database": "phpmanual168",
        "transport": "isolated_loopback_broker",
        "charset": "utf-8",
        "autocommit": false
    },
    "owned_objects": [
        {
            "type": "TABLE",
            "name": "c168_lockwait_83dc4dd596"
        }
    ],
    "removed_objects": [
        {
            "type": "TABLE",
            "name": "c168_lockwait_83dc4dd596"
        }
    ]
}
