{
    "id": "fb161-update-diagnostics",
    "title": "Отличить нехватку товара от сломанного SQL и сохранить причину",
    "columns": [
        "Наблюдение",
        "Результат"
    ],
    "rows": [
        [
            "Первый резерв: изменено строк",
            1
        ],
        [
            "Остаток Cable после резерва",
            1
        ],
        [
            "Второй UPDATE успешно выполнился",
            true
        ],
        [
            "Второй резерв: изменено строк",
            0
        ],
        [
            "Запрос неизвестного поля вернул false",
            true
        ],
        [
            "Сохранённый SQLCODE",
            -206
        ],
        [
            "Сообщение указывает неизвестное поле",
            true
        ],
        [
            "После исправленного чтения ошибки больше нет",
            true
        ]
    ],
    "checks": {
        "first_reservation_changed_one": true,
        "remaining_one": true,
        "insufficient_stock_is_zero_not_failure": true,
        "sql_failure_recorded": true,
        "successful_read_clears_current_error": true,
        "owned_objects_removed": true
    },
    "observations": {
        "first_affected": 1,
        "second_return": true,
        "second_affected": 0,
        "stored": [
            {
                "TITLE": "Cable",
                "QTY": 1
            }
        ],
        "saved_error": {
            "code": -206,
            "warning": true,
            "message_present": true,
            "mentions_field": true
        },
        "current_code": false,
        "current_message": false,
        "raw_error_published": false
    },
    "runtime": {
        "php": "8.2.35",
        "extension": "3.0.1",
        "server_version": "5.0.4",
        "database": "phpmanual153",
        "transport": "embedded_local_file"
    },
    "owned_objects": [
        {
            "type": "TABLE",
            "name": "FB161_OUTCOME_1F416A1CFC"
        }
    ],
    "removed_objects": [
        {
            "type": "TABLE",
            "name": "FB161_OUTCOME_1F416A1CFC"
        }
    ]
}
