Open-MSS / MSS

A QT application, a OGC web map server, a collaboration server to plan atmospheric research flights.
https://open-mss.github.io
Apache License 2.0
61 stars 79 forks source link

unhandled crashes with mscolab verification shenanigangs #2514

Closed joernu76 closed 1 month ago

joernu76 commented 2 months ago

Using the "verify-user-token" feature causes unexpected behaviour. it is suggested to disable this by default as a quick fix.

One error:

ERROR: unexpected error: <class 'requests.exceptions.MissingSchema'> Invalid URL 'test_authorized': No scheme supplied. Perhaps you meant https://test_authorized?

looses the server URL in checking after an unsuccessful login attempt.

Another one

Traceback (most recent call last):
  File "/home/icg173/src/mss/mslib/msui/mscolab.py", line 1788, in set_active_op_id
    item.setFont(font)
RuntimeError: wrapped C/C++ object of type QListWidgetItem has been deleted
2024-09-07 19:05:40,314 (qt.excepthook:183): CRITICAL: MSS Version: 9.2.0
2024-09-07 19:05:40,315 (qt.excepthook:184): CRITICAL: Python Version: 3.10.11 | packaged by conda-forge | (main, May 10 2023, 18:58:44) [GCC 11.3.0]
2024-09-07 19:05:40,323 (qt.excepthook:185): CRITICAL: Platform: Linux-6.10.6+bpo-amd64-x86_64-with-glibc2.36 (('64bit', 'ELF'))
2024-09-07 19:05:40,323 (qt.excepthook:186): CRITICAL: Fatal error: Traceback (most recent call last):
  File "/home/icg173/src/mss/mslib/msui/mscolab.py", line 1788, in set_active_op_id
    item.setFont(font)
RuntimeError: wrapped C/C++ object of type QListWidgetItem has been deleted

Traceback (most recent call last):
  File "/home/icg173/src/mss/mslib/msui/mscolab.py", line 1735, in set_active_op_id
    logging.debug('set_active_op_id %s %s %s', item, item.op_id, self.active_op_id)
AttributeError: 'QListWidgetItem' object has no attribute 'op_id'

causes QT related crashes upon the forced logging out, which apparently doesn't clean up properly.

Also restarting the mscolab server (which triggers an unexpected logging out) causes several issues preventing MSUI from being properly used.

ReimarBauer commented 2 months ago

The default is to have it disabled, or?

ReimarBauer commented 1 month ago

When restarting the mscolab server it gets a random new secret. This invalidates all used tokens.

When diconnecting the internet the client can retry. A short disconnecting should not logout the client.

joernu76 commented 1 month ago

The default is to have it disabled, or?

Then we do not have a problem in stable. Good.

joernu76 commented 1 month ago

The new fix should handle both of these issues. As this is not enabled by default, it need not be fixed in stable.