16 281
правка
Строка 20: | Строка 20: | ||
Проверить размер базы данных брокера можно командой <code>du -h /var/lib/mosquitto/mosquitto.db</code>. | Проверить размер базы данных брокера можно командой <code>du -h /var/lib/mosquitto/mosquitto.db</code>. | ||
'''Пути обхода''' | |||
Чтобы вернуть контроллер в рабочее состояние: | |||
# Удалите файл с базой данных брокера (persistence file). Это можно сделать любым способом, но так как ПО контроллера, включая SSH, может работать медленно из-за недостатка свободного места, удобнее всего это сделать с помощью [[WB_Debug_Console |отладочной консоли]]: <code>rm /var/lib/mosquitto/mosquitto.db</code>. Если из-за проблем в работе контроллера у вас не получается удалить эту базу, можете [[Wiren_Board_7_Firmware_Update | выполнить factory reset]]. | |||
# В <code>/etc/mosquitto/mosquitto.conf</code> отключите функцию сохранения неотправленных сообщений в файл, для этого поменяйте <code>persistence true</code> на <code>persistence false</code>. | |||
# Перезапустите контроллер. | |||
# Ещё раз удалите файл с базой данных брокера. | |||
С отключенной функция сохранения неотправленных сообщений в файл, эта проблема не будет возникать. Однако в редких случаях, описанных в разделе «Причины и подробное описание», некоторые MQTT-сообщения могут быть не доставлены. | |||
'''Исправление''' | |||
По заявлениям разработчиков стороннего софта mosquitto, они исправили этот баш ещё в mosquitto версии 1.5.6. В Debian 11 «bullseye» включен mosquitto версии 2.0.7-3 и старше, поэтому там этого бага быть не должно. | |||
Однако, проблема есть и пока мы её исследуем, поэтому рекомендуем отключить функцию сохранения неотправленных сообщений в файл по инструкции в разделе «Пути обхода». |