| Предыдущий | Следующий |
| E_BLUETOOTH_ATT_INSUFFICIENT_AUTHORIZATION | E_BLUETOOTH_ATT_ATTRIBUTE_NOT_FOUND |
E_BLUETOOTH_ATT_PREPARE_QUEUE_FULL
Что означает E_BLUETOOTH_ATT_PREPARE_QUEUE_FULL
E_BLUETOOTH_ATT_PREPARE_QUEUE_FULL (0x80650009) — В очередь помещено слишком много подготовленных операций записи.
При результате 0x80650009 граница диагностики проходит внутри подсистемы «Bluetooth GATT/ATT», в области «ATT request, attribute handle, permissions и connection state». Здесь сообщение «в очередь помещено слишком много подготовленных операций записи» связано с темой «bluetooth, att, prepare, очередь, переполнение».
Что проверить и как подтвердить исправление
До изменения конфигурации сопоставьте первый отказ с фактическими параметрами операции. Для 0x80650009 с описанием «в очередь помещено слишком много подготовленных операций записи» снимите фактическое потребление и лимит ресурса в момент отказа, затем уменьшите нагрузку или освободите именно исчерпанный ресурс.
Сопоставьте с результатом 0x80650009 следующие данные: peer address, service/characteristic UUID, attribute handle, opcode, MTU и ATT response. До исправления 0x80650009 сохраните исходное состояние объекта по теме «bluetooth, att, prepare, очередь, переполнение».
Коррекция для 0x80650009 должна быть предметной: проверяйте handle и права по актуальному service discovery; после переподключения старые handles могут быть недействительны. Для 0x80650009 и сообщения «в очередь помещено слишком много подготовленных операций записи» общий сброс допустим лишь как контроль, но не как доказательство причины.
После исправления повторите тот же вызов на прежних данных; у результата 0x80650009 должен измениться первый неуспешный этап, а не только последующее сообщение.
Документация для результата 0x80650009: Bluetooth Core: queued writes and Prepare Queue Full · BlueZ GATT API: prepare-authorize writes · Zephyr: ATT queued-write error constants.
Нужно найти другой код? Найти другой код состояния или ошибки.