signal icon indicating copy to clipboard operation
signal copied to clipboard

issuing clean-rooms errors on violates unique constraint "puppet_number_key"

Open olmari opened this issue 2 years ago • 1 comments

On bot management room as bot admin, issueing clean-rooms throws:

Traceback (most recent call last):
  File "/opt/signalbot/lib/python3.7/site-packages/mautrix/bridge/commands/handler.py", line 406, in handle
    await self._run_handler(handler, evt)
  File "/opt/signalbot/lib/python3.7/site-packages/mautrix/bridge/commands/handler.py", line 291, in __call__
    return await self._handler(evt)
  File "/opt/signalbot/lib/python3.7/site-packages/mautrix/bridge/commands/clean_rooms.py", line 72, in clean_rooms
    results = await _find_rooms(evt.bridge)
  File "/opt/signalbot/lib/python3.7/site-packages/mautrix/bridge/commands/clean_rooms.py", line 59, in _find_rooms
    members = await portal.get_authenticated_matrix_users()
  File "/opt/signalbot/lib/python3.7/site-packages/mautrix/bridge/portal.py", line 139, in get_authenticated_matrix_users
    members = await self.main_intent.get_room_members(self.mxid)
  File "/opt/signalbot/lib/python3.7/site-packages/mautrix/appservice/api/intent.py", line 294, in get_room_members
    memberships = await self.get_joined_members(room_id)
  File "/opt/signalbot/lib/python3.7/site-packages/mautrix/appservice/api/intent.py", line 94, in wrapper
    await __self.ensure_joined(room_id)
  File "/opt/signalbot/lib/python3.7/site-packages/mautrix/appservice/api/intent.py", line 334, in ensure_joined
    await self.ensure_registered()
  File "/opt/signalbot/lib/python3.7/site-packages/mautrix/appservice/api/intent.py", line 376, in ensure_registered
    await self.state_store.registered(self.mxid)
  File "/opt/signalbot/lib/python3.7/site-packages/mautrix/bridge/state_store/asyncpg.py", line 38, in registered
    await puppet.save()
  File "/opt/signalbot/lib/python3.7/site-packages/mautrix_signal/puppet.py", line 286, in save
    await self.update()
  File "/opt/signalbot/lib/python3.7/site-packages/mautrix_signal/db/puppet.py", line 86, in update
    self.access_token, self.next_batch, self._base_url_str)
  File "/opt/signalbot/lib/python3.7/site-packages/mautrix/util/async_db/database.py", line 85, in execute
    return await conn.execute(query, *args, timeout=timeout)
  File "/opt/signalbot/lib/python3.7/site-packages/asyncpg/connection.py", line 297, in execute
    _, status, _ = await self._execute(query, args, 0, timeout, True)
  File "/opt/signalbot/lib/python3.7/site-packages/asyncpg/connection.py", line 1446, in _execute
    query, args, limit, timeout, return_status=return_status)
  File "/opt/signalbot/lib/python3.7/site-packages/asyncpg/connection.py", line 1454, in __execute
    return await self._do_execute(query, executor, timeout)
  File "/opt/signalbot/lib/python3.7/site-packages/asyncpg/connection.py", line 1476, in _do_execute
    result = await executor(stmt, None)
  File "asyncpg/protocol/protocol.pyx", line 196, in bind_execute
asyncpg.exceptions.UniqueViolationError: duplicate key value violates unique constraint "puppet_number_key"
DETAIL:  Key (number)=(+<redacted>) already exists.

olmari avatar Aug 28 '21 11:08 olmari

Same problem here

alistair23 avatar Apr 20 '22 12:04 alistair23

I confirm clean-rooms and adjacent commands working now.

olmari avatar Sep 20 '22 13:09 olmari