Meshtastic España https://www.meshtastic.es
Mapa con información avanzada del MQTT.
Nodes  - Conversations  - See everything  - Mesh Graphs  - Live Map  - Stats  - Top Traffic

Error

Internal server error

Error Details
  + Exception Group Traceback (most recent call last):
  |   File "/home/meshtastic/meshview/meshview/web.py", line 311, in packet_list
  |     async with asyncio.TaskGroup() as tg:
  |   File "/usr/lib/python3.12/asyncio/taskgroups.py", line 145, in __aexit__
  |     raise me from None
  | ExceptionGroup: unhandled errors in a TaskGroup (1 sub-exception)
  +-+---------------- 1 ----------------
    | Traceback (most recent call last):
    |   File "/home/meshtastic/meshview/env/lib/python3.12/site-packages/sqlalchemy/engine/base.py", line 1964, in _exec_single_context
    |     self.dialect.do_execute(
    |   File "/home/meshtastic/meshview/env/lib/python3.12/site-packages/sqlalchemy/engine/default.py", line 945, in do_execute
    |     cursor.execute(statement, parameters)
    |   File "/home/meshtastic/meshview/env/lib/python3.12/site-packages/sqlalchemy/dialects/sqlite/aiosqlite.py", line 172, in execute
    |     self._adapt_connection._handle_exception(error)
    |   File "/home/meshtastic/meshview/env/lib/python3.12/site-packages/sqlalchemy/dialects/sqlite/aiosqlite.py", line 323, in _handle_exception
    |     raise error
    |   File "/home/meshtastic/meshview/env/lib/python3.12/site-packages/sqlalchemy/dialects/sqlite/aiosqlite.py", line 154, in execute
    |     self.await_(_cursor.execute(operation, parameters))
    |   File "/home/meshtastic/meshview/env/lib/python3.12/site-packages/sqlalchemy/util/_concurrency_py3k.py", line 132, in await_only
    |     return current.parent.switch(awaitable)  # type: ignore[no-any-return,attr-defined] # noqa: E501
    |            ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
    |   File "/home/meshtastic/meshview/env/lib/python3.12/site-packages/sqlalchemy/util/_concurrency_py3k.py", line 196, in greenlet_spawn
    |     value = await result
    |             ^^^^^^^^^^^^
    |   File "/home/meshtastic/meshview/env/lib/python3.12/site-packages/aiosqlite/cursor.py", line 40, in execute
    |     await self._execute(self._cursor.execute, sql, parameters)
    |   File "/home/meshtastic/meshview/env/lib/python3.12/site-packages/aiosqlite/cursor.py", line 32, in _execute
    |     return await self._conn._execute(fn, *args, **kwargs)
    |            ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
    |   File "/home/meshtastic/meshview/env/lib/python3.12/site-packages/aiosqlite/core.py", line 122, in _execute
    |     return await future
    |            ^^^^^^^^^^^^
    |   File "/home/meshtastic/meshview/env/lib/python3.12/site-packages/aiosqlite/core.py", line 105, in run
    |     result = function()
    |              ^^^^^^^^^^
    | sqlite3.OperationalError: database is locked
    | 
    | The above exception was the direct cause of the following exception:
    | 
    | Traceback (most recent call last):
    |   File "/home/meshtastic/meshview/meshview/web.py", line 143, in build_neighbors
    |     packets = await store.get_packets_from(node_id, PortNum.NEIGHBORINFO_APP, limit=1)
    |               ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
    |   File "/home/meshtastic/meshview/meshview/store.py", line 60, in get_packets_from
    |     result = await session.execute(q.limit(limit).order_by(Packet.import_time.desc()))
    |              ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
    |   File "/home/meshtastic/meshview/env/lib/python3.12/site-packages/sqlalchemy/ext/asyncio/session.py", line 463, in execute
    |     result = await greenlet_spawn(
    |              ^^^^^^^^^^^^^^^^^^^^^
    |   File "/home/meshtastic/meshview/env/lib/python3.12/site-packages/sqlalchemy/util/_concurrency_py3k.py", line 201, in greenlet_spawn
    |     result = context.throw(*sys.exc_info())
    |              ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
    |   File "/home/meshtastic/meshview/env/lib/python3.12/site-packages/sqlalchemy/orm/session.py", line 2365, in execute
    |     return self._execute_internal(
    |            ^^^^^^^^^^^^^^^^^^^^^^^
    |   File "/home/meshtastic/meshview/env/lib/python3.12/site-packages/sqlalchemy/orm/session.py", line 2251, in _execute_internal
    |     result: Result[Any] = compile_state_cls.orm_execute_statement(
    |                           ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
    |   File "/home/meshtastic/meshview/env/lib/python3.12/site-packages/sqlalchemy/orm/context.py", line 306, in orm_execute_statement
    |     result = conn.execute(
    |              ^^^^^^^^^^^^^
    |   File "/home/meshtastic/meshview/env/lib/python3.12/site-packages/sqlalchemy/engine/base.py", line 1416, in execute
    |     return meth(
    |            ^^^^^
    |   File "/home/meshtastic/meshview/env/lib/python3.12/site-packages/sqlalchemy/sql/elements.py", line 523, in _execute_on_connection
    |     return connection._execute_clauseelement(
    |            ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
    |   File "/home/meshtastic/meshview/env/lib/python3.12/site-packages/sqlalchemy/engine/base.py", line 1638, in _execute_clauseelement
    |     ret = self._execute_context(
    |           ^^^^^^^^^^^^^^^^^^^^^^
    |   File "/home/meshtastic/meshview/env/lib/python3.12/site-packages/sqlalchemy/engine/base.py", line 1843, in _execute_context
    |     return self._exec_single_context(
    |            ^^^^^^^^^^^^^^^^^^^^^^^^^^
    |   File "/home/meshtastic/meshview/env/lib/python3.12/site-packages/sqlalchemy/engine/base.py", line 1983, in _exec_single_context
    |     self._handle_dbapi_exception(
    |   File "/home/meshtastic/meshview/env/lib/python3.12/site-packages/sqlalchemy/engine/base.py", line 2352, in _handle_dbapi_exception
    |     raise sqlalchemy_exception.with_traceback(exc_info[2]) from e
    |   File "/home/meshtastic/meshview/env/lib/python3.12/site-packages/sqlalchemy/engine/base.py", line 1964, in _exec_single_context
    |     self.dialect.do_execute(
    |   File "/home/meshtastic/meshview/env/lib/python3.12/site-packages/sqlalchemy/engine/default.py", line 945, in do_execute
    |     cursor.execute(statement, parameters)
    |   File "/home/meshtastic/meshview/env/lib/python3.12/site-packages/sqlalchemy/dialects/sqlite/aiosqlite.py", line 172, in execute
    |     self._adapt_connection._handle_exception(error)
    |   File "/home/meshtastic/meshview/env/lib/python3.12/site-packages/sqlalchemy/dialects/sqlite/aiosqlite.py", line 323, in _handle_exception
    |     raise error
    |   File "/home/meshtastic/meshview/env/lib/python3.12/site-packages/sqlalchemy/dialects/sqlite/aiosqlite.py", line 154, in execute
    |     self.await_(_cursor.execute(operation, parameters))
    |   File "/home/meshtastic/meshview/env/lib/python3.12/site-packages/sqlalchemy/util/_concurrency_py3k.py", line 132, in await_only
    |     return current.parent.switch(awaitable)  # type: ignore[no-any-return,attr-defined] # noqa: E501
    |            ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
    |   File "/home/meshtastic/meshview/env/lib/python3.12/site-packages/sqlalchemy/util/_concurrency_py3k.py", line 196, in greenlet_spawn
    |     value = await result
    |             ^^^^^^^^^^^^
    |   File "/home/meshtastic/meshview/env/lib/python3.12/site-packages/aiosqlite/cursor.py", line 40, in execute
    |     await self._execute(self._cursor.execute, sql, parameters)
    |   File "/home/meshtastic/meshview/env/lib/python3.12/site-packages/aiosqlite/cursor.py", line 32, in _execute
    |     return await self._conn._execute(fn, *args, **kwargs)
    |            ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
    |   File "/home/meshtastic/meshview/env/lib/python3.12/site-packages/aiosqlite/core.py", line 122, in _execute
    |     return await future
    |            ^^^^^^^^^^^^
    |   File "/home/meshtastic/meshview/env/lib/python3.12/site-packages/aiosqlite/core.py", line 105, in run
    |     result = function()
    |              ^^^^^^^^^^
    | sqlalchemy.exc.OperationalError: (sqlite3.OperationalError) database is locked
    | [SQL: SELECT packet.id, packet.portnum, packet.from_node_id, packet.to_node_id, packet.payload, packet.import_time, packet.channel, node_1.id AS id_1, node_1.node_id, node_1.long_name, node_1.short_name, node_1.hw_model, node_1.firmware, node_1.role, node_1.last_lat, node_1.last_long, node_1.channel AS channel_1, node_1.last_update, node_2.id AS id_2, node_2.node_id AS node_id_1, node_2.long_name AS long_name_1, node_2.short_name AS short_name_1, node_2.hw_model AS hw_model_1, node_2.firmware AS firmware_1, node_2.role AS role_1, node_2.last_lat AS last_lat_1, node_2.last_long AS last_long_1, node_2.channel AS channel_2, node_2.last_update AS last_update_1 
    | FROM packet LEFT OUTER JOIN node AS node_1 ON packet.from_node_id = node_1.node_id LEFT OUTER JOIN node AS node_2 ON packet.to_node_id = node_2.node_id 
    | WHERE packet.from_node_id = ? AND packet.portnum = ? ORDER BY packet.import_time DESC
    |  LIMIT ? OFFSET ?]
    | [parameters: (1770346956, 71, 1, 0)]
    | (Background on this error at: https://sqlalche.me/e/20/e3q8)
    +------------------------------------

Visit Meshview on Github. ver. 2.0.7 ~ 09-17-25