Bug 57610 - The Veyon Python client does not use connection pooling
The Veyon Python client does not use connection pooling
Status: CLOSED FIXED
Product: UCS@school
Classification: Unclassified
Component: Veyon
UCS@school 5.0
Other Linux
: P5 normal (vote)
: UCS@school 5.0 v6-errata
Assigned To: Johannes Königer
Jürn Brodersen
:
Depends on:
Blocks:
  Show dependency treegraph
 
Reported: 2024-09-19 11:13 CEST by Johannes Königer
Modified: 2024-09-26 13:12 CEST (History)
0 users

See Also:
What kind of report is it?: ---
What type of bug is this?: ---
Who will be affected by this bug?: ---
How will those affected feel about the bug?: ---
User Pain:
Enterprise Customer affected?:
School Customer affected?:
ISV affected?:
Waiting Support:
Flags outvoted (downgraded) after PO Review:
Ticket number:
Bug group (optional):
Max CVSS v3 score:


Attachments

Note You need to log in before you can comment on or make changes to this bug.
Description Johannes Königer univentionstaff 2024-09-19 11:13:16 CEST
The Veyon python client uses the requests library by calling requests.get, requests.put, etc., instead of using a requests.Session object.
When many computer room sessions and computer Veyon threads are open, the resulting amount of requests per second do lead to a growing number of lingering TCP/IP connections which occupy ports and subsequently to crashes/Tracebacks as no connections can be opened anymore.
Comment 3 Johannes Königer univentionstaff 2024-09-26 08:30:18 CEST
Fixed with commit c90b196c18cb1d00a8d3e9214327a91d8fca6274

Package: ucs-school-veyon-client
Version: 2.0.9

Each VeyonComputer thread will now have a thread local Session object, which is used for the lifetime of the thread.
Comment 4 Jürn Brodersen univentionstaff 2024-09-26 12:05:30 CEST
What I tested:


lsof shows less connections -> OK
No more auth popup after restarting veyon on windows -> OK
No tracebacks/crashes if veyon is down -> OK
update thread is paused and restarts -> OK
After starting veyon again computer information is updated again as well -> OK
Comment 5 Johannes Königer univentionstaff 2024-09-26 13:12:24 CEST
Errata updates for UCS@school 5.0 v6 have been released.

https://docs.software-univention.de/ucsschool-changelog/5.0v6/en/changelog.html
https://docs.software-univention.de/ucsschool-changelog/5.0v6/de/changelog.html

If this error occurs again, please clone this bug.