pez-globo / pufferfish-software

All software for the Pufferfish ventilator.
Apache License 2.0
0 stars 1 forks source link

Backend AlarmMuteRequest KeyError exception #389

Closed rohanpurohit closed 3 years ago

rohanpurohit commented 3 years ago

Backend prints an exception for AlarmMuteRequest:

Steps to reproduce:

This issue was split off from #386 comment

exception log:

021-06-10 14:35:32,522 ventserver.integration._trio INFO     Initializing from file: ParametersRequest
2021-06-10 14:35:32,524 ventserver.integration._trio INFO     Initializing from file: AlarmLimitsRequest
2021-06-10 14:35:32,527 ventserver.integration._trio INFO     Initializing from file: AlarmMuteRequest
2021-06-10 14:35:32,530 ventserver.integration._trio INFO     Initializing from file: SystemSettingRequest
2021-06-10 14:35:32,537 ventserver.protocols.devices.file.ReceiveFilter ERROR    MessageSender:
Traceback (most recent call last):
  File "/home/pi/pufferfish-software/backend/ventserver/protocols/transport/messages.py", line 65, in parse
    self.payload = message_object.parse(body_payload)
  File "/home/pi/.pyenv/versions/3.7.7/envs/ventserver/lib/python3.7/site-packages/betterproto/__init__.py", line 760, in parse
    parsed.wire_type, meta, field, parsed.value
  File "/home/pi/.pyenv/versions/3.7.7/envs/ventserver/lib/python3.7/site-packages/betterproto/__init__.py", line 701, in _postprocess_single
    fmt = _pack_fmt(meta.proto_type)
  File "/home/pi/.pyenv/versions/3.7.7/envs/ventserver/lib/python3.7/site-packages/betterproto/__init__.py", line 288, in _pack_fmt
    }[proto_type]
KeyError: 'uint64'

The above exception was the direct cause of the following exception:

Traceback (most recent call last):
  File "/home/pi/pufferfish-software/backend/ventserver/protocols/devices/file.py", line 90, in output
    message = self._message_receiver.output()
  File "/home/pi/pufferfish-software/backend/ventserver/protocols/transport/messages.py", line 118, in output
    message.parse(body, self.message_classes)
  File "/home/pi/pufferfish-software/backend/ventserver/protocols/transport/messages.py", line 70, in parse
    ) from exc
ventserver.protocols.exceptions.ProtocolDataError: Unparseable payload: b'\x15\x00\x00\xf0B'
2021-06-10 14:35:32,539 ventserver.protocols.backend.server.ReceiveFilter ERROR    The state type NoneType data in the file does not match the filename AlarmMuteRequest.
ethanjli commented 3 years ago

We've been unable to reproduce this, so I'll close it; we can reopen it if we see similar problems in the future.