Xpra: Ticket #2676: xpra/net/udp_protocol.py line 184: AttributeError: 'UDPClientProtocol' object has no attribute 'send_control_failed'

hi team, i am new to xpra.

due to current covid situation, i do require the UDP transport (have a long distant link and somewhat high delay). yes, i've seen the "experimental" note, nevertheless i'd like to report the following:

if i use the plain tcp transport, things work fine. if i try to use udp, i get

on windows
Traceback (most recent call last):
  File "E:\Xpra\tags\v3.0.x\src/xpra/net/udp_protocol.py", line 184, in send_control
AttributeError: 'UDPClientProtocol' object has no attribute 'send_control_failed'
on linux
  File "/usr/lib64/python3.7/site-packages/xpra/net/udp_protocol.py", line 184, in send_control
    self._add_packet_to_queue(packet, fail_cb=self.send_control_failed, synchronous=False)
AttributeError: 'UDPClientProtocol' object has no attribute 'send_control_failed'

=====

i think this can be easily fixed, in case python is your native language ;-)

server: xpra-3.0.7-r25627, centos-7.7.1908, kernel-3.10.0-1062.4.1.el7.x86_64

$ xpra start --start-child=xterm --bind-udp=0.0.0.0:14567 --exit-with-children=yes --webcam=no

clients: 1) xpra-3.0.7-25627, win10-1909

$ Xpra_cmd.exe attach udp://10.10.11.23:14567

2) xpra-3.0.6-2.fc30.x86_64, fedora-30, kernel-5.5.10-100.fc30.x86_64

$ xpra attach udp://10.10.11.23:14567

config: no changes



Tue, 24 Mar 2020 10:53:05 GMT - Niki Waibel: attachment set


Tue, 24 Mar 2020 11:28:04 GMT - Antoine Martin: status, description changed; resolution set

Thanks for the report, that's now fixed in r25759 and will be included in the 3.0.8 release. (you can apply it by hand to your installation as it is tiny)

That said, if you're going to use UDP, I recommend switching to the beta channel, which has more fixes and improvements for the UDP transport.

Please bear in mind that TCP may still perform better than UDP at this point.


Tue, 24 Mar 2020 11:42:52 GMT - Niki Waibel: attachment set


Tue, 24 Mar 2020 11:46:53 GMT - Niki Waibel:

i've modified udp_protocol.py on both server and client. this fixes xpra attach, but - as said - after few seconds of idle time a spinner and some errors appear on the server. i've attached :0.log from the server.


Tue, 24 Mar 2020 11:53:45 GMT - Niki Waibel:

at the client:

2020-03-24 12:51:16,870 server does not support xi input devices
2020-03-24 12:51:16,870  server uses: xtest
flushing batchbuffer before/after each draw call
flushing GPU caches before/after each draw call
2020-03-24 12:51:57,456 Unhandled error while processing a 'udp-control' packet from peer using <bound method XpraClientBase._process_udp_control of gtk3.client>
Traceback (most recent call last):
  File "/usr/lib64/python3.7/site-packages/xpra/client/client_base.py", line 951, in process_packet
    handler(packet)
  File "/usr/lib64/python3.7/site-packages/xpra/client/client_base.py", line 315, in _process_udp_control
    self._protocol.process_control(*packet[1:])
  File "/usr/lib64/python3.7/site-packages/xpra/net/udp_protocol.py", line 295, in process_control
    fail_cb_seq()
TypeError: send_control_failed() takes 0 positional arguments but 1 was given
^C
2020-03-24 12:52:04,782 got signal SIGINT
2020-03-24 12:52:04,783 exiting

Tue, 24 Mar 2020 12:12:39 GMT - Antoine Martin: status changed; resolution deleted

TypeError: send_control_failed() takes 0 positional arguments but 1 was given

That doesn't make sense, the caller clearly has no arguments:

    fail_cb_seq()

Can you try this patch:

Index: xpra/net/udp_protocol.py
===================================================================
--- xpra/net/udp_protocol.py	(revision 25759)
+++ xpra/net/udp_protocol.py	(working copy)
@@ -177,7 +177,8 @@
         missing = self._get_missing()
         packet = ("udp-control", self.mtu, self.asynchronous_receive_enabled, self.last_sequence, self.highest_sequence, missing, tuple(self.cancel))
         log("send_control() packet(%s)=%s", self.pending_packets, packet)
-        def send_control_failed():
+        def send_control_failed(*args):
+            log.warn("send_control_failed%s", args)
             #resend a new one
             self.cancel_control_timer()
             self.send_control()

And tell me what warnings you see?


Tue, 24 Mar 2020 12:12:45 GMT - Antoine Martin: owner, status changed


Tue, 24 Mar 2020 15:41:22 GMT - Niki Waibel:

in the meantime i could compile svn-r25730 on the linux-client side (fedora30).

not sure, if i can compile it also on the server side (centos7). i'll try your suggestion on the server first.

svn-r25730 on the client and xpra-3.0.7-r25627 on the server gives:

2020-03-24 16:25:13,068 Warning: found large packet
2020-03-24 16:25:13,069  'udp-control' packet is 4173 bytes:
2020-03-24 16:25:13,069  argument types: <class 'int'>, <class 'bool'>, <class 'int'>, <class 'int'>, <class 'dict'>, <class 'tuple'>
2020-03-24 16:25:13,076  sizes: 1, 4, 3, 3, 2, 5824
2020-03-24 16:25:13,076  packet: [6, 0, True, 692, 693, {}, (61440, 61441, 61442, .. 1433, 61434, 61435, 61436, 61437, 61438, 61439)]

on the client. the server still reports

File "/usr/lib64/python2.7/site-packages/xpra/net/udp_protocol.py", line 295, in process_control
    fail_cb_seq()

using svn-r25730 on the client and xpra-3.0.7-r25627 + your patch produces:

2020-03-24 16:35:48,340 Error: UDP packet processing error:
2020-03-24 16:35:48,341  17565
2020-03-24 16:35:55,517 Error: UDP packet processing error:
2020-03-24 16:35:55,518  29502
2020-03-24 16:35:55,540 Warning: found large packet
2020-03-24 16:35:55,540  'udp-control' packet is 6412 bytes:
2020-03-24 16:35:55,541  argument types: <type 'int'>, <type 'bool'>, <type 'int'>, <type 'int'>, <type 'dict'>, <type 'tuple'>
2020-03-24 16:35:55,541  sizes: 1, 4, 5, 5, 17567, 2
2020-03-24 16:35:55,542  packet: "['udp-control', 0, True, 29596, 29596, {27905:  .. 9498: [], 29499: [], 29500: [], 29501: []}, ()]"
2020-03-24 16:35:55,626 client   1 @16.673 Warning: found large packet
2020-03-24 16:35:55,629 client   1 @16.673  'udp-control' packet is 4804 bytes:
2020-03-24 16:35:55,630 client   1 @16.673  argument types: <class 'int'>, <class 'bool'>, <class 'int'>, <class 'int'>, <class 'dict'>, <class 'tuple'>
2020-03-24 16:35:55,630 client   1 @16.674  sizes: 1, 4, 3, 3, 2, 11179
2020-03-24 16:35:55,630 client   1 @16.675  packet: [6, 0, True, 445, 445, {}, (27905, 27906, 27907, .. 9495, 29496, 29497, 29498, 29499, 29500, 29501)]

after some time (of running fine).

seems, that sometimes large UDP packets are generated, which are not handled properly.

i'll try to compile the svn trunk on the server later!


Tue, 24 Mar 2020 15:53:44 GMT - Antoine Martin:

on the client. the server still reports

No send_control_failed warnings?

Warning: found large packet

Yes, there's a leak in trunk - will fix.


Wed, 25 Mar 2020 02:59:17 GMT - Niki Waibel:

here's the _send_control_failed_ on the server ;-) i've used xpra-r25767 on the client and xpra v3.0.7-r25627 + my and your patch on the server. server:

2020-03-25 03:46:54,709 client   1 @03.656 Attached to udp://10.10.11.23:14567/
2020-03-25 03:46:54,709 client   1 @03.657  (press Control-C to detach)
2020-03-25 03:46:54,906 client   1 @03.786 server does not support xi input devices
2020-03-25 03:46:54,906 client   1 @03.786  server uses: xtest
2020-03-25 03:46:55,275 Error processing a 'udp-control' packet
2020-03-25 03:46:55,275  received from Protocol(udp socket: 0.0.0.0:14567 <- 192.168.255.240:40632):
2020-03-25 03:46:55,275  using <bound method XpraServer._process_udp_control of <XpraServer object at 0x7f3c66166eb0 (xpra+x11+server+XpraServer at 0x1af4d20)>>
Traceback (most recent call last):
  File "/usr/lib64/python2.7/site-packages/xpra/server/server_base.py", line 996, in process_packet
    handler(proto, packet)
  File "/usr/lib64/python2.7/site-packages/xpra/server/server_core.py", line 2104, in _process_udp_control
    proto.process_control(*packet[1:])
  File "/usr/lib64/python2.7/site-packages/xpra/net/udp_protocol.py", line 295, in process_control
    fail_cb_seq()
  File "/usr/lib64/python2.7/site-packages/xpra/net/udp_protocol.py", line 174, in send_control_failed      <------------------------
    self.cancel_control_timer()
AttributeError: 'tuple' object has no attribute 'cancel_control_timer'

client:

2020-03-25 03:53:36,616 Attached to udp://10.10.11.23:14567/
2020-03-25 03:53:36,617  (press Control-C to detach)
2020-03-25 03:53:36,728 server does not support xi input devi
2020-03-25 03:53:36,728  server uses: xtest
flushing batchbuffer before/after each draw call
flushing GPU caches before/after each draw call
2020-03-25 03:54:42,161 UI thread is now blocked
2020-03-25 03:54:42,451 UI thread is running again, resuming
2020-03-25 03:54:43,664 UI thread is now blocked
2020-03-25 03:54:43,698 UI thread is running again, resuming

will try to compile svn-r25767 on centos7 now.


Wed, 25 Mar 2020 04:00:13 GMT - Antoine Martin:

AttributeError: 'tuple' object has no attribute 'cancel_control_timer'

That's a completely different error, probably caused by some of the changes you made - the line numbers don't match the source for 3.0.x or trunk, and self would have to be defined and be a valid object (not a tupel) to be able to reach send_control_failed.

Please post the source file you're using or a diff comparing it with the current 3.0.x


Sun, 29 Mar 2020 09:35:54 GMT - Niki Waibel:

i gave up on compiling the SVN version on centos7. i am using the binary-beta versions now and switched from centos7 to 8 on the server: xpra-4.0-0.20200327r25797.el8_1.x86_64. client is still fedora30: xpra-4.0-0.20200327r25797.fc30.x86_64.

xpra/net/udp_protocol.py line 184: AttributeError is gone, as it seems. now the UDP connection is stable a bit longer.

server start: xpra start --start-child="xterm -e top -d 0.1" --bind-udp=0.0.0.0:14567 --exit-with-children=yes --webcam=no --opengl=no --printing=no --speaker=no --microphone=no

client start: NO_AT_BRIDGE=1 xpra attach udp://jumphost-3:14567 --webcam=no --opengl=no --printing=no --speaker=off --microphone=off

after about 40 seconds, the client freezes. console client:

[niki@lnx-1 ~]$ NO_AT_BRIDGE=1 xpra attach udp://jumphost-3:14567 --webcam=no --opengl=no --printing=no --speaker=off --microphone=off
2020-03-29 11:15:35,532 Xpra GTK3 X11 client version 4.0-r25797 64-bit
2020-03-29 11:15:35,578  running on Linux Fedora 30 Thirty
2020-03-29 11:15:35,580  window manager is 'i3'
2020-03-29 11:15:35,974 GStreamer version 1.16.0 for Python 3.7.6 64-bit
2020-03-29 11:15:36,891  keyboard settings: rules=evdev, model=pc105, layout=us
2020-03-29 11:15:37,520  desktop size is 1920x1080 with 1 screen:
2020-03-29 11:15:37,521   :0.0 (508x285 mm - DPI: 96x96)
2020-03-29 11:15:37,521     CMN eDP-1 (309x173 mm - DPI: 157x158)
2020-03-29 11:15:37,998 no ethtool interface speed available for ppp0
2020-03-29 11:15:38,281 enabled remote logging
2020-03-29 11:15:38,282 Xpra GTK3 X11 server version 4.0-r25797 64-bit
2020-03-29 11:15:38,283  running on Linux CentOS Linux 8.1.1911 Core
2020-03-29 11:15:38,290 Attached to udp://jumphost-3:14567/
2020-03-29 11:15:38,290  (press Control-C to detach)
2020-03-29 11:15:38,396 server does not support xi input devices
2020-03-29 11:15:38,397  server uses: xtest
2020-03-29 11:16:32,886 UI thread is now blocked
2020-03-29 11:16:33,139 UI thread is running again, resuming
2020-03-29 11:16:34,388 UI thread is now blocked
2020-03-29 11:16:34,790 UI thread is running again, resuming
2020-03-29 11:16:36,390 UI thread is now blocked
2020-03-29 11:16:36,914 UI thread is running again, resuming
2020-03-29 11:16:39,393 UI thread is now blocked
2020-03-29 11:16:39,697 UI thread is running again, resuming
/usr/lib64/python3.7/site-packages/xpra/net/udp_protocol.py:174: Warning: Source ID 69476 was not found when attempting to remove it
  self.source_remove(ct)
/usr/lib64/python3.7/site-packages/xpra/net/udp_protocol.py:174: Warning: Source ID 69639 was not found when attempting to remove it
  self.source_remove(ct)
/usr/lib64/python3.7/site-packages/xpra/net/udp_protocol.py:174: Warning: Source ID 69696 was not found when attempting to remove it
  self.source_remove(ct)
/usr/lib64/python3.7/site-packages/xpra/net/udp_protocol.py:174: Warning: Source ID 69741 was not found when attempting to remove it
  self.source_remove(ct)
/usr/lib64/python3.7/site-packages/xpra/net/udp_protocol.py:174: Warning: Source ID 69758 was not found when attempting to remove it
  self.source_remove(ct)
/usr/lib64/python3.7/site-packages/xpra/net/udp_protocol.py:174: Warning: Source ID 69770 was not found when attempting to remove it
  self.source_remove(ct)
/usr/lib64/python3.7/site-packages/xpra/net/udp_protocol.py:174: Warning: Source ID 70034 was not found when attempting to remove it
  self.source_remove(ct)
2020-03-29 11:16:43,411 UI thread is now blocked
2020-03-29 11:16:43,973 UI thread is running again, resuming
2020-03-29 11:16:48,416 UI thread is now blocked
2020-03-29 11:16:48,540 server is not responding, drawing spinners over the windows
2020-03-29 11:16:49,187 UI thread is running again, resuming
2020-03-29 11:16:55,425 UI thread is now blocked
2020-03-29 11:16:55,880 server is not responding, drawing spinners over the windows
2020-03-29 11:16:56,156 UI thread is running again, resuming
2020-03-29 11:16:57,525 server is OK again
2020-03-29 11:17:05,358 server is not responding, drawing spinners over the windows
2020-03-29 11:17:06,991 server is OK again
2020-03-29 11:17:12,163 Unhandled error while processing a 'udp-control' packet from peer using <bound method XpraClientBase._process_udp_control of gtk3.client>
Traceback (most recent call last):
  File "/usr/lib64/python3.7/site-packages/xpra/client/client_base.py", line 955, in process_packet
    call_handler()
  File "/usr/lib64/python3.7/site-packages/xpra/client/client_base.py", line 952, in call_handler
    handler(packet)
  File "/usr/lib64/python3.7/site-packages/xpra/client/client_base.py", line 325, in _process_udp_control
    self._protocol.process_control(*packet[1:])
  File "/usr/lib64/python3.7/site-packages/xpra/net/udp_protocol.py", line 252, in process_control
    done = [x for x in self.resend_cache if x<=last_seq]
  File "/usr/lib64/python3.7/site-packages/xpra/net/udp_protocol.py", line 252, in <listcomp>
    done = [x for x in self.resend_cache if x<=last_seq]
RuntimeError: dictionary changed size during iteration
2020-03-29 11:17:14,172 Unhandled error while processing a 'udp-control' packet from peer using <bound method XpraClientBase._process_udp_control of gtk3.client>
Traceback (most recent call last):
  File "/usr/lib64/python3.7/site-packages/xpra/client/client_base.py", line 955, in process_packet
    call_handler()
  File "/usr/lib64/python3.7/site-packages/xpra/client/client_base.py", line 952, in call_handler
    handler(packet)
  File "/usr/lib64/python3.7/site-packages/xpra/client/client_base.py", line 325, in _process_udp_control
    self._protocol.process_control(*packet[1:])
  File "/usr/lib64/python3.7/site-packages/xpra/net/udp_protocol.py", line 252, in process_control
    done = [x for x in self.resend_cache if x<=last_seq]
  File "/usr/lib64/python3.7/site-packages/xpra/net/udp_protocol.py", line 252, in <listcomp>
    done = [x for x in self.resend_cache if x<=last_seq]
RuntimeError: dictionary changed size during iteration
2020-03-29 11:17:18,453 UI thread is now blocked
2020-03-29 11:17:18,518 server is not responding, drawing spinners over the windows
2020-03-29 11:17:19,150 UI thread is running again, resuming
2020-03-29 11:17:20,177 Unhandled error while processing a 'udp-control' packet from peer using <bound method XpraClientBase._process_udp_control of gtk3.client>
Traceback (most recent call last):
  File "/usr/lib64/python3.7/site-packages/xpra/client/client_base.py", line 955, in process_packet
    call_handler()
  File "/usr/lib64/python3.7/site-packages/xpra/client/client_base.py", line 952, in call_handler
    handler(packet)
  File "/usr/lib64/python3.7/site-packages/xpra/client/client_base.py", line 325, in _process_udp_control
    self._protocol.process_control(*packet[1:])
  File "/usr/lib64/python3.7/site-packages/xpra/net/udp_protocol.py", line 252, in process_control
    done = [x for x in self.resend_cache if x<=last_seq]
  File "/usr/lib64/python3.7/site-packages/xpra/net/udp_protocol.py", line 252, in <listcomp>
    done = [x for x in self.resend_cache if x<=last_seq]
RuntimeError: dictionary changed size during iteration
2020-03-29 11:17:20,373 server is OK again
2020-03-29 11:17:23,182 Unhandled error while processing a 'udp-control' packet from peer using <bound method XpraClientBase._process_udp_control of gtk3.client>
Traceback (most recent call last):
  File "/usr/lib64/python3.7/site-packages/xpra/client/client_base.py", line 955, in process_packet
    call_handler()
  File "/usr/lib64/python3.7/site-packages/xpra/client/client_base.py", line 952, in call_handler
    handler(packet)
  File "/usr/lib64/python3.7/site-packages/xpra/client/client_base.py", line 325, in _process_udp_control
    self._protocol.process_control(*packet[1:])
  File "/usr/lib64/python3.7/site-packages/xpra/net/udp_protocol.py", line 252, in process_control
    done = [x for x in self.resend_cache if x<=last_seq]
  File "/usr/lib64/python3.7/site-packages/xpra/net/udp_protocol.py", line 252, in <listcomp>
    done = [x for x in self.resend_cache if x<=last_seq]
RuntimeError: dictionary changed size during iteration
^\Quit (core dumped)
[niki@lnx-1 ~]$

sometimes sthg like this is seen on the client console as well:

2020-03-29 11:26:37,108 server is OK again
/usr/lib64/python3.7/site-packages/xpra/net/udp_protocol.py:174: Warning: Source ID 29243 was not found when attempting to remove it
  self.source_remove(ct)
/usr/lib64/python3.7/site-packages/xpra/net/udp_protocol.py:174: Warning: Source ID 29349 was not found when attempting to remove it
  self.source_remove(ct)
/usr/lib64/python3.7/site-packages/xpra/net/udp_protocol.py:174: Warning: Source ID 29521 was not found when attempting to remove it
  self.source_remove(ct)
/usr/lib64/python3.7/site-packages/xpra/net/udp_protocol.py:174: Warning: Source ID 47264 was not found when attempting to remove it
  self.source_remove(ct)
2020-03-29 11:26:56,318 UI thread is now blocked
/usr/lib64/python3.7/site-packages/xpra/net/udp_protocol.py:174: Warning: Source ID 47698 was not found when attempting to remove it
  self.source_remove(ct)
2020-03-29 11:26:56,764 UI thread is running again, resuming
/usr/lib64/python3.7/site-packages/xpra/net/udp_protocol.py:174: Warning: Source ID 49114 was not found when attempting to remove it
  self.source_remove(ct)
/usr/lib64/python3.7/site-packages/xpra/net/udp_protocol.py:174: Warning: Source ID 49117 was not found when attempting to remove it
  self.source_remove(ct)
/usr/lib64/python3.7/site-packages/xpra/net/udp_protocol.py:174: Warning: Source ID 49122 was not found when attempting to remove it
  self.source_remove(ct)
2020-03-29 11:26:57,822 UI thread is now blocked
2020-03-29 11:26:57,863 Warning: found large packet
2020-03-29 11:26:57,863  'udp-control' packet is 4706 bytes:
/usr/lib64/python3.7/site-packages/xpra/net/udp_protocol.py:174: Warning: Source ID 50153 was not found when attempting to remove it
  self.source_remove(ct)
2020-03-29 11:26:57,864  argument types: <class 'int'>, <class 'bool'>, <class 'int'>, <class 'int'>, <class 'dict'>, <class 'tuple'>
2020-03-29 11:26:57,865  sizes: 1, 4, 4, 4, 585, 9303
2020-03-29 11:26:57,868  packet: [3, 0, True, 2886, 2948, {2912: [0, 1, 2, 3, 4,  .. 2761, 32762, 32763, 32764, 32765, 32766, 32767)]
2020-03-29 11:26:58,066 Warning: found large packet
2020-03-29 11:26:58,067  'udp-control' packet is 5566 bytes:
2020-03-29 11:26:58,068  argument types: <class 'int'>, <class 'bool'>, <class 'int'>, <class 'int'>, <class 'dict'>, <class 'tuple'>
2020-03-29 11:26:58,068  sizes: 1, 4, 4, 4, 585, 10409
2020-03-29 11:26:58,069  packet: [3, 0, True, 2886, 2951, {2912: [0, 1, 2, 3, 4,  .. 2761, 32762, 32763, 32764, 32765, 32766, 32767)]
2020-03-29 11:26:58,223 Warning: found large packet
2020-03-29 11:26:58,224  'udp-control' packet is 5467 bytes:
2020-03-29 11:26:58,227  argument types: <class 'int'>, <class 'bool'>, <class 'int'>, <class 'int'>, <class 'dict'>, <class 'tuple'>
2020-03-29 11:26:58,228  sizes: 1, 4, 4, 4, 726, 9597
2020-03-29 11:26:58,228  packet: [3, 0, True, 2886, 2968, {2912: [0, 1, 2, 3, 4,  .. 2761, 32762, 32763, 32764, 32765, 32766, 32767)]
/usr/lib64/python3.7/site-packages/xpra/net/udp_protocol.py:174: Warning: Source ID 50807 was not found when attempting to remove it
  self.source_remove(ct)
2020-03-29 11:26:58,287 Warning: found large packet
2020-03-29 11:26:58,287  'udp-control' packet is 5290 bytes:
2020-03-29 11:26:58,287  argument types: <class 'int'>, <class 'bool'>, <class 'int'>, <class 'int'>, <class 'dict'>, <class 'tuple'>
2020-03-29 11:26:58,295  sizes: 1, 4, 4, 4, 1529, 8309
2020-03-29 11:26:58,296  packet: [3, 0, True, 2886, 3052, {2912: [0, 1, 2, 3, 4,  .. 2761, 32762, 32763, 32764, 32765, 32766, 32767)]

in case the client is started again (nothing done on the server after the error):

[niki@lnx-1 ~]$ NO_AT_BRIDGE=1 xpra attach udp://jumphost-3:14567 --webcam=no --opengl=no --printing=no --speaker=off --microphone=off
2020-03-29 10:58:06,783 Xpra GTK3 X11 client version 4.0-r25797 64-bit
2020-03-29 10:58:06,829  running on Linux Fedora 30 Thirty
2020-03-29 10:58:06,831  window manager is 'i3'
2020-03-29 10:58:07,223 GStreamer version 1.16.0 for Python 3.7.6 64-bit
2020-03-29 10:58:08,182  keyboard settings: rules=evdev, model=pc105, layout=us
2020-03-29 10:58:08,821  desktop size is 1920x1080 with 1 screen:
2020-03-29 10:58:08,822   :0.0 (508x285 mm - DPI: 96x96)
2020-03-29 10:58:08,822     CMN eDP-1 (309x173 mm - DPI: 157x158)
2020-03-29 10:58:09,311 no ethtool interface speed available for ppp0

… no client window appears.

server log, after xpra stop:

[niki@jumphost-3 ~]$ cat /run/user/1000/xpra/:0.log
2020-03-29 10:54:33,208 cannot access python uinput module:
2020-03-29 10:54:33,208  No module named 'uinput'
X.Org X Server 1.20.3
X Protocol Version 11, Revision 0
Build Operating System:  4.19.34-300.el7.x86_64
Current Operating System: Linux jumphost-3.photeon.local 4.18.0-147.5.1.el8_1.x86_64 #1 SMP Wed Feb 5 02:00:39 UTC 2020 x86_64
Kernel command line: BOOT_IMAGE=(hd0,gpt2)/vmlinuz-4.18.0-147.5.1.el8_1.x86_64 root=UUID=2bcbf24a-e790-41b6-a7b5-bfd2ca283362 ro crashkernel=auto resume=UUID=d328a8fe-b83a-4133-a5d7-248fe52eca54 rhgb quiet
Build Date: 13 December 2019  01:04:32PM
Build ID: xorg-x11-server 1.20.3-8.el8
Current version of pixman: 0.36.0
        Before reporting problems, check http://wiki.x.org
        to make sure that you have the latest version.
Markers: (--) probed, (**) from config file, (==) default setting,
        (++) from command line, (!!) notice, (II) informational,
        (WW) warning, (EE) error, (NI) not implemented, (??) unknown.
(++) Log file: "/run/user/1000/xpra/Xorg.S6466.log", Time: Sun Mar 29 10:54:33 2020
(++) Using config file: "/etc/xpra/xorg.conf"
(==) Using system config directory "/usr/share/X11/xorg.conf.d"
2020-03-29 10:54:33,606 created unix domain socket '/run/user/1000/xpra/jumphost-3.photeon.local-0'
2020-03-29 10:54:33,607 cannot create group socket '/run/xpra/jumphost-3.photeon.local-0'
2020-03-29 10:54:33,607  [Errno 13] Permission denied
2020-03-29 10:54:33,676 pointer device emulation using XTest
2020-03-29 10:54:33,744 serving html content from '/usr/share/xpra/www'
2020-03-29 10:54:34,550 OpenGL is supported on display ':0'
2020-03-29 10:54:34,550  using 'llvmpipe (LLVM 8.0, 256 bits)' renderer
2020-03-29 10:54:34,599 D-Bus notification forwarding is available
2020-03-29 10:54:35,188 GStreamer version 1.14.0 for Python 3.6.8 64-bit
(Xpra:6477): Gtk-CRITICAL **: 10:54:35.266: gtk_widget_realize: assertion 'widget->priv->anchored || GTK_IS_INVISIBLE (widget)' failed
2020-03-29 10:54:35,292 started command 'xterm -e top' with pid 6531
2020-03-29 10:54:35,315 udp read thread loop starting
2020-03-29 10:54:35,317 xpra is ready.
2020-03-29 10:54:35,318 xpra GTK3 X11 version 4.0-r25797 64-bit
2020-03-29 10:54:35,378  uid=1000 (niki), gid=1000 (niki)
2020-03-29 10:54:35,378  running with pid 6477 on Linux CentOS Linux 8.1.1911 Core
2020-03-29 10:54:35,393  connected to X11 display :0 with 24 bit colors
2020-03-29 10:54:35,680 1.8GB of system memory
2020-03-29 10:54:40,795 Handshake complete; enabling connection
2020-03-29 10:54:40,809 Python/GTK3 Linux Fedora 30 Thirty x11 client version 4.0-r25797 64-bit
2020-03-29 10:54:40,809  OpenGL is disabled
2020-03-29 10:54:40,809  connected from 'lnx-1' as 'niki'
2020-03-29 10:54:40,813 setting key repeat rate from client: 660ms delay / 40ms interval
2020-03-29 10:54:40,814 setting keymap:
2020-03-29 10:54:40,834 setting keyboard layout to 'us'
2020-03-29 10:54:40,910  client root window size is 1920x1080 with 1 display:
2020-03-29 10:54:40,911   :0.0 (508x285 mm - DPI: 96x96)
2020-03-29 10:54:40,911     CMN eDP-1 (309x173 mm - DPI: 157x158)
2020-03-29 10:54:40,919 server virtual display now set to 1920x1080
2020-03-29 10:54:40,923  automatic picture encoding enabled, also available:
2020-03-29 10:54:40,923   h264, vp9, vp8, png, png/P, png/L, webp, rgb24, rgb32, jpeg, mpeg1, mpeg2
2020-03-29 10:54:40,976 DPI set to 23 x 24 (wanted 96 x 96)
2020-03-29 10:54:40,976  you may experience scaling problems, such as huge or small fonts, etc
2020-03-29 10:54:40,976  to fix this issue, try the dpi switch, or use a patched Xorg dummy driver
2020-03-29 10:54:41,088 client   1 @02.899 Xpra GTK3 X11 server version 4.0-r25797 64-bit
2020-03-29 10:54:41,093 client   1 @02.906  running on Linux CentOS Linux 8.1.1911 Core
2020-03-29 10:54:41,136 client   1 @02.933 Attached to udp://jumphost-3:14567/
2020-03-29 10:54:41,136 client   1 @02.935  (press Control-C to detach)
2020-03-29 10:54:41,234 client   1 @03.047 server does not support xi input devices
2020-03-29 10:54:41,239 client   1 @03.047  server uses: xtest
2020-03-29 10:54:41,613 using pulseaudio device:
2020-03-29 10:54:41,614  'Monitor of Dummy Output'
ERROR: Pipeline doesn't want to pause.
ERROR: from element /GstPipeline:pipeline0/GstAlsaSink:alsasink0: Could not open audio device for playback.
Additional debug info:
gstalsasink.c(865): gst_alsasink_open (): /GstPipeline:pipeline0/GstAlsaSink:alsasink0:
Playback open error on device 'default': No such file or directory
2020-03-29 10:54:42,438 sound source using 'opus' audio codec
2020-03-29 10:55:37,841 Warning: timeout on screen updates for window 1,
2020-03-29 10:55:37,843  already delayed for more than 15 seconds
2020-03-29 10:55:53,110 Warning: timeout on screen updates for window 1,
2020-03-29 10:55:53,110  already delayed for more than 15 seconds
2020-03-29 10:56:08,411 Warning: timeout on screen updates for window 1,
2020-03-29 10:56:08,411  already delayed for more than 15 seconds
2020-03-29 10:56:23,718 Warning: timeout on screen updates for window 1,
2020-03-29 10:56:23,718  already delayed for more than 15 seconds
2020-03-29 10:56:25,283 Disconnecting client 192.168.255.240:54527:
2020-03-29 10:56:25,283  client ping timeout (waited 60 seconds without a response)
2020-03-29 10:56:25,289 xpra client 1 disconnected.
2020-03-29 10:56:25,332 sound source stopping
2020-03-29 11:01:40,490 New unix-domain connection received
2020-03-29 11:01:40,490  on '/run/user/1000/xpra/jumphost-3.photeon.local-0'
2020-03-29 11:01:40,491 Handshake complete; enabling connection
2020-03-29 11:01:40,493 Python3/GObject client version 4.0-r25797 64-bit
2020-03-29 11:01:40,493  connected from 'jumphost-3.photeon.local' as 'niki'
2020-03-29 11:01:41,481 New unix-domain connection received
2020-03-29 11:01:41,481  on '/run/user/1000/xpra/jumphost-3.photeon.local-0'
2020-03-29 11:01:41,501 Shutting down in response to client request
2020-03-29 11:01:41,501 Disconnecting client /run/user/1000/xpra/jumphost-3.photeon.local-0:
2020-03-29 11:01:41,501  server shutdown
2020-03-29 11:01:41,502 xpra client 2 disconnected.
2020-03-29 11:01:42,018 killing xvfb with pid 6479
2020-03-29 11:01:42,019 closing udp socket 0.0.0.0:14567
2020-03-29 11:01:42,019 removing socket '/run/user/1000/xpra/jumphost-3.photeon.local-0'
xterm: fatal IO error 11 (Resource temporarily unavailable) or KillClient on X server ":0"
(II) Server terminated successfully (0). Closing log file.
[niki@jumphost-3 ~]$

and in case there are the found large packet warnings:

$ cat /run/user/1000/xpra/:0.log
2020-03-29 10:54:33,208 cannot access python uinput module:
2020-03-29 10:54:33,208  No module named 'uinput'
X.Org X Server 1.20.3
X Protocol Version 11, Revision 0
Build Operating System:  4.19.34-300.el7.x86_64
Current Operating System: Linux jumphost-3.photeon.local 4.18.0-147.5.1.el8_1.x86_64 #1 SMP Wed Feb 5 02:00:39 UTC 2020 x86_64
Kernel command line: BOOT_IMAGE=(hd0,gpt2)/vmlinuz-4.18.0-147.5.1.el8_1.x86_64 root=UUID=2bcbf24a-e790-41b6-a7b5-bfd2ca283362 ro crashkernel=auto resume=UUID=d328a8fe-b83a-4133-a5d7-248fe52eca54 rhgb quiet
Build Date: 13 December 2019  01:04:32PM
Build ID: xorg-x11-server 1.20.3-8.el8
Current version of pixman: 0.36.0
        Before reporting problems, check http://wiki.x.org
        to make sure that you have the latest version.
Markers: (--) probed, (**) from config file, (==) default setting,
        (++) from command line, (!!) notice, (II) informational,
        (WW) warning, (EE) error, (NI) not implemented, (??) unknown.
(++) Log file: "/run/user/1000/xpra/Xorg.S6466.log", Time: Sun Mar 29 10:54:33 2020
(++) Using config file: "/etc/xpra/xorg.conf"
(==) Using system config directory "/usr/share/X11/xorg.conf.d"
2020-03-29 10:54:33,606 created unix domain socket '/run/user/1000/xpra/jumphost-3.photeon.local-0'
2020-03-29 10:54:33,607 cannot create group socket '/run/xpra/jumphost-3.photeon.local-0'
2020-03-29 10:54:33,607  [Errno 13] Permission denied
2020-03-29 10:54:33,676 pointer device emulation using XTest
2020-03-29 10:54:33,744 serving html content from '/usr/share/xpra/www'
2020-03-29 10:54:34,550 OpenGL is supported on display ':0'
2020-03-29 10:54:34,550  using 'llvmpipe (LLVM 8.0, 256 bits)' renderer
2020-03-29 10:54:34,599 D-Bus notification forwarding is available
2020-03-29 10:54:35,188 GStreamer version 1.14.0 for Python 3.6.8 64-bit
(Xpra:6477): Gtk-CRITICAL **: 10:54:35.266: gtk_widget_realize: assertion 'widget->priv->anchored || GTK_IS_INVISIBLE (widget)' failed
2020-03-29 10:54:35,292 started command 'xterm -e top' with pid 6531
2020-03-29 10:54:35,315 udp read thread loop starting
2020-03-29 10:54:35,317 xpra is ready.
2020-03-29 10:54:35,318 xpra GTK3 X11 version 4.0-r25797 64-bit
2020-03-29 10:54:35,378  uid=1000 (niki), gid=1000 (niki)
2020-03-29 10:54:35,378  running with pid 6477 on Linux CentOS Linux 8.1.1911 Core
2020-03-29 10:54:35,393  connected to X11 display :0 with 24 bit colors
2020-03-29 10:54:35,680 1.8GB of system memory
2020-03-29 10:54:40,795 Handshake complete; enabling connection
2020-03-29 10:54:40,809 Python/GTK3 Linux Fedora 30 Thirty x11 client version 4.0-r25797 64-bit
2020-03-29 10:54:40,809  OpenGL is disabled
2020-03-29 10:54:40,809  connected from 'lnx-1' as 'niki'
2020-03-29 10:54:40,813 setting key repeat rate from client: 660ms delay / 40ms interval
2020-03-29 10:54:40,814 setting keymap:
2020-03-29 10:54:40,834 setting keyboard layout to 'us'
2020-03-29 10:54:40,910  client root window size is 1920x1080 with 1 display:
2020-03-29 10:54:40,911   :0.0 (508x285 mm - DPI: 96x96)
2020-03-29 10:54:40,911     CMN eDP-1 (309x173 mm - DPI: 157x158)
2020-03-29 10:54:40,919 server virtual display now set to 1920x1080
2020-03-29 10:54:40,923  automatic picture encoding enabled, also available:
2020-03-29 10:54:40,923   h264, vp9, vp8, png, png/P, png/L, webp, rgb24, rgb32, jpeg, mpeg1, mpeg2
2020-03-29 10:54:40,976 DPI set to 23 x 24 (wanted 96 x 96)
2020-03-29 10:54:40,976  you may experience scaling problems, such as huge or small fonts, etc
2020-03-29 10:54:40,976  to fix this issue, try the dpi switch, or use a patched Xorg dummy driver
2020-03-29 10:54:41,088 client   1 @02.899 Xpra GTK3 X11 server version 4.0-r25797 64-bit
2020-03-29 11:26:59,291  'udp-control' packet is 4778 bytes:
2020-03-29 11:26:59,291  argument types: <class 'int'>, <class 'bool'>, <class 'int'>, <class 'int'>, <class 'dict'>, <class 'tuple'>
2020-03-29 11:26:59,291  sizes: 1, 4, 5, 5, 7923, 846
2020-03-29 11:26:59,291  packet: ['udp-control', 0, True, 35207, 37578, {35208: [ .. 3038, 3039, 3045, 3046, 3047, 3048, 3049, 3050)]
2020-03-29 11:26:59,316 Warning: found large packet
2020-03-29 11:26:59,316  'udp-control' packet is 4744 bytes:
2020-03-29 11:26:59,316  argument types: <class 'int'>, <class 'bool'>, <class 'int'>, <class 'int'>, <class 'dict'>, <class 'tuple'>
2020-03-29 11:26:59,317  sizes: 1, 4, 5, 5, 7859, 846
2020-03-29 11:26:59,317  packet: ['udp-control', 0, True, 35207, 37602, {35208: [ .. 3038, 3039, 3045, 3046, 3047, 3048, 3049, 3050)]
2020-03-29 11:26:59,344 Warning: found large packet
2020-03-29 11:26:59,344  'udp-control' packet is 4702 bytes:
2020-03-29 11:26:59,344  argument types: <class 'int'>, <class 'bool'>, <class 'int'>, <class 'int'>, <class 'dict'>, <class 'tuple'>
2020-03-29 11:26:59,344  sizes: 1, 4, 5, 5, 7782, 846
2020-03-29 11:26:59,344  packet: ['udp-control', 0, True, 35207, 37638, {35208: [ .. 3038, 3039, 3045, 3046, 3047, 3048, 3049, 3050)]
2020-03-29 11:26:59,373 Warning: found large packet
2020-03-29 11:26:59,373  'udp-control' packet is 4734 bytes:
2020-03-29 11:26:59,373  argument types: <class 'int'>, <class 'bool'>, <class 'int'>, <class 'int'>, <class 'dict'>, <class 'tuple'>
2020-03-29 11:26:59,374  sizes: 1, 4, 5, 5, 7839, 846
2020-03-29 11:26:59,374  packet: ['udp-control', 0, True, 35207, 37658, {35208: [ .. 3038, 3039, 3045, 3046, 3047, 3048, 3049, 3050)]
2020-03-29 11:26:59,398 Warning: found large packet
2020-03-29 11:26:59,398  'udp-control' packet is 4686 bytes:
2020-03-29 11:26:59,398  argument types: <class 'int'>, <class 'bool'>, <class 'int'>, <class 'int'>, <class 'dict'>, <class 'tuple'>
2020-03-29 11:26:59,399  sizes: 1, 4, 5, 5, 7751, 846
2020-03-29 11:26:59,399  packet: ['udp-control', 0, True, 35207, 37687, {35208: [ .. 3038, 3039, 3045, 3046, 3047, 3048, 3049, 3050)]
2020-03-29 11:26:59,411 Warning: found large packet
2020-03-29 11:26:59,411  'udp-control' packet is 4719 bytes:
2020-03-29 11:26:59,412  argument types: <class 'int'>, <class 'bool'>, <class 'int'>, <class 'int'>, <class 'dict'>, <class 'tuple'>
2020-03-29 11:26:59,412  sizes: 1, 4, 5, 5, 7850, 804
2020-03-29 11:26:59,412  packet: ['udp-control', 0, True, 35207, 37721, {35208: [ .. 3032, 3033, 3034, 3035, 3036, 3037, 3038, 3039)]
2020-03-29 11:26:59,426 Warning: found large packet
2020-03-29 11:26:59,426  'udp-control' packet is 4692 bytes:
2020-03-29 11:26:59,426  argument types: <class 'int'>, <class 'bool'>, <class 'int'>, <class 'int'>, <class 'dict'>, <class 'tuple'>
2020-03-29 11:26:59,426  sizes: 1, 4, 5, 5, 7762, 846
2020-03-29 11:26:59,426  packet: ['udp-control', 0, True, 35207, 37741, {35208: [ .. 3038, 3039, 3045, 3046, 3047, 3048, 3049, 3050)]
2020-03-29 11:26:59,440 Warning: found large packet
2020-03-29 11:26:59,440  'udp-control' packet is 4572 bytes:
2020-03-29 11:26:59,440  argument types: <class 'int'>, <class 'bool'>, <class 'int'>, <class 'int'>, <class 'dict'>, <class 'tuple'>
2020-03-29 11:26:59,440  sizes: 1, 4, 5, 5, 7828, 534
2020-03-29 11:26:59,441  packet: ['udp-control', 0, True, 35207, 37761, {35208: [ .. 3039, 3045, 3046, 3047, 3048, 3049, 3050, 3069)]
2020-03-29 11:26:59,441 Warning: found large packet
2020-03-29 11:26:59,442  'udp-control' packet is 4307 bytes:
2020-03-29 11:26:59,442  argument types: <class 'int'>, <class 'bool'>, <class 'int'>, <class 'int'>, <class 'dict'>, <class 'tuple'>
2020-03-29 11:26:59,442  sizes: 1, 4, 5, 5, 7828, 7
2020-03-29 11:26:59,442  packet: ['udp-control', 0, True, 35207, 37761, {35208: [ .. : [], 37713: [], 37714: [], 37715: []}, (3067,)]
2020-03-29 11:26:59,443 Warning: found large packet
2020-03-29 11:26:59,443  'udp-control' packet is 4307 bytes:
2020-03-29 11:26:59,443  argument types: <class 'int'>, <class 'bool'>, <class 'int'>, <class 'int'>, <class 'dict'>, <class 'tuple'>
2020-03-29 11:26:59,443  sizes: 1, 4, 5, 5, 7828, 7
2020-03-29 11:26:59,444  packet: ['udp-control', 0, True, 35207, 37761, {35208: [ .. : [], 37713: [], 37714: [], 37715: []}, (3068,)]
2020-03-29 11:26:59,459 Warning: found large packet
2020-03-29 11:26:59,459  'udp-control' packet is 4494 bytes:
2020-03-29 11:26:59,459  argument types: <class 'int'>, <class 'bool'>, <class 'int'>, <class 'int'>, <class 'dict'>, <class 'tuple'>
2020-03-29 11:26:59,459  sizes: 1, 4, 5, 5, 7674, 546
2020-03-29 11:26:59,460  packet: ['udp-control', 0, True, 35207, 37781, {35208: [ .. 3046, 3047, 3048, 3049, 3050, 3067, 3068, 3069)]
2020-03-29 11:26:59,478 Warning: found large packet
2020-03-29 11:26:59,478  'udp-control' packet is 4440 bytes:
2020-03-29 11:26:59,478  argument types: <class 'int'>, <class 'bool'>, <class 'int'>, <class 'int'>, <class 'dict'>, <class 'tuple'>
2020-03-29 11:26:59,479  sizes: 1, 4, 5, 5, 7575, 546
2020-03-29 11:26:59,479  packet: ['udp-control', 0, True, 35207, 37801, {35208: [ .. 3046, 3047, 3048, 3049, 3050, 3067, 3068, 3069)]
2020-03-29 11:26:59,492 Warning: found large packet
2020-03-29 11:26:59,493  'udp-control' packet is 4398 bytes:
2020-03-29 11:26:59,493  argument types: <class 'int'>, <class 'bool'>, <class 'int'>, <class 'int'>, <class 'dict'>, <class 'tuple'>
2020-03-29 11:26:59,493  sizes: 1, 4, 5, 5, 7498, 546
2020-03-29 11:26:59,493  packet: ['udp-control', 0, True, 35207, 37829, {35208: [ .. 3046, 3047, 3048, 3049, 3050, 3067, 3068, 3069)]
2020-03-29 11:26:59,507 Warning: found large packet
2020-03-29 11:26:59,507  'udp-control' packet is 4350 bytes:
2020-03-29 11:26:59,507  argument types: <class 'int'>, <class 'bool'>, <class 'int'>, <class 'int'>, <class 'dict'>, <class 'tuple'>
2020-03-29 11:26:59,507  sizes: 1, 4, 5, 5, 7410, 546
2020-03-29 11:26:59,507  packet: ['udp-control', 0, True, 35207, 37849, {35208: [ .. 3046, 3047, 3048, 3049, 3050, 3067, 3068, 3069)]
2020-03-29 11:26:59,521 Warning: found large packet
2020-03-29 11:26:59,521  'udp-control' packet is 4350 bytes:
2020-03-29 11:26:59,522  argument types: <class 'int'>, <class 'bool'>, <class 'int'>, <class 'int'>, <class 'dict'>, <class 'tuple'>
2020-03-29 11:26:59,522  sizes: 1, 4, 5, 5, 7410, 546
2020-03-29 11:26:59,522  packet: ['udp-control', 0, True, 35207, 37869, {35208: [ .. 3046, 3047, 3048, 3049, 3050, 3067, 3068, 3069)]
2020-03-29 11:26:59,536 Warning: found large packet
2020-03-29 11:26:59,536  'udp-control' packet is 4302 bytes:
2020-03-29 11:26:59,536  argument types: <class 'int'>, <class 'bool'>, <class 'int'>, <class 'int'>, <class 'dict'>, <class 'tuple'>
2020-03-29 11:26:59,536  sizes: 1, 4, 5, 5, 7322, 546
2020-03-29 11:26:59,536  packet: ['udp-control', 0, True, 35207, 37889, {35208: [ .. 3046, 3047, 3048, 3049, 3050, 3067, 3068, 3069)]
2020-03-29 11:26:59,550 Warning: found large packet
2020-03-29 11:26:59,551  'udp-control' packet is 4236 bytes:
2020-03-29 11:26:59,551  argument types: <class 'int'>, <class 'bool'>, <class 'int'>, <class 'int'>, <class 'dict'>, <class 'tuple'>
2020-03-29 11:26:59,551  sizes: 1, 4, 5, 5, 7201, 546
2020-03-29 11:26:59,551  packet: ['udp-control', 0, True, 35207, 37925, {35208: [ .. 3046, 3047, 3048, 3049, 3050, 3067, 3068, 3069)]
2020-03-29 11:26:59,687 client   1 @04.998 UI thread is now blocked
2020-03-29 11:26:59,687 client   1 @05.038 Warning: found large packet
2020-03-29 11:26:59,687 client   1 @05.039  'udp-control' packet is 4706 bytes:
2020-03-29 11:26:59,688 client   1 @05.040  argument types: <class 'int'>, <class 'bool'>, <class 'int'>, <class 'int'>, <class 'dict'>, <class 'tuple'>
2020-03-29 11:26:59,688 client   1 @05.041  sizes: 1, 4, 4, 4, 585, 9303
2020-03-29 11:26:59,688 client   1 @05.043  packet: [3, 0, True, 2886, 2948, {2912: [0, 1, 2, 3, 4,  .. 2761, 32762, 32763, 32764, 32765, 32766, 32767)]
2020-03-29 11:27:00,206 client   1 @05.242 Warning: found large packet
2020-03-29 11:27:00,207 client   1 @05.243  'udp-control' packet is 5566 bytes:
2020-03-29 11:27:59,093 Disconnecting client 192.168.255.240:55919:
2020-03-29 11:27:59,093  client ping timeout (waited 60 seconds without a response)
2020-03-29 11:27:59,094 xpra client 1 disconnected.
2020-03-29 11:31:18,741 New unix-domain connection received
2020-03-29 11:31:18,741  on '/run/user/1000/xpra/jumphost-3.photeon.local-0'
2020-03-29 11:31:18,742 Handshake complete; enabling connection
2020-03-29 11:31:18,743 Python3/GObject client version 4.0-r25797 64-bit
2020-03-29 11:31:18,743  connected from 'jumphost-3.photeon.local' as 'niki'
2020-03-29 11:31:19,731 New unix-domain connection received
2020-03-29 11:31:19,732  on '/run/user/1000/xpra/jumphost-3.photeon.local-0'
2020-03-29 11:31:19,757 Shutting down in response to client request
2020-03-29 11:31:19,757 Disconnecting client /run/user/1000/xpra/jumphost-3.photeon.local-0:
2020-03-29 11:31:19,757  server shutdown
2020-03-29 11:31:19,758 xpra client 2 disconnected.
2020-03-29 11:31:20,274 killing xvfb with pid 7331
2020-03-29 11:31:20,274 closing udp socket 0.0.0.0:14567
2020-03-29 11:31:20,274 removing socket '/run/user/1000/xpra/jumphost-3.photeon.local-0'
xterm: fatal IO error 11 (Resource temporarily unavailable) or KillClient on X server ":0"
(II) Server terminated successfully (0). Closing log file.
[niki@jumphost-3 ~]$

Sun, 29 Mar 2020 15:41:24 GMT - Antoine Martin: owner, status changed

The RuntimeError: dictionary changed size during iteration bugs should be fixed in r25847.

The control packet leak leading to the crash still needs to be fixed.


Sun, 29 Mar 2020 20:57:20 GMT - Niki Waibel: cc set

after applying r25847 to the binary release xpra-4.0-0.20200327r25797, i do not get anymore python errors. (so far) only timeouts appear, after a while. might be much more difficult to debug (maybe network packet trace required).

at the client:

[niki@lnx-1 ~]$ NO_AT_BRIDGE=1 xpra attach udp://jumphost-3:14567 --webcam=no --opengl=no --printing=no --speaker=off --microphone=off
2020-03-29 22:46:21,768 Xpra GTK3 X11 client version 4.0-r25797 64-bit
2020-03-29 22:46:21,814  running on Linux Fedora 30 Thirty
2020-03-29 22:46:21,815  window manager is 'i3'
2020-03-29 22:46:22,204 GStreamer version 1.16.0 for Python 3.7.6 64-bit
2020-03-29 22:46:23,173  keyboard settings: rules=evdev, model=pc105, layout=us
2020-03-29 22:46:23,803  desktop size is 1920x1080 with 1 screen:
2020-03-29 22:46:23,804   :0.0 (508x285 mm - DPI: 96x96)
2020-03-29 22:46:23,804     CMN eDP-1 (309x173 mm - DPI: 157x158)
2020-03-29 22:46:24,280 no ethtool interface speed available for ppp0
2020-03-29 22:46:24,587 enabled remote logging
2020-03-29 22:46:24,590 Xpra GTK3 X11 server version 4.0-r25797 64-bit
2020-03-29 22:46:24,591  running on Linux CentOS Linux 8.1.1911 Core
2020-03-29 22:46:24,606 Attached to udp://jumphost-3:14567/
2020-03-29 22:46:24,606  (press Control-C to detach)
2020-03-29 22:46:24,714 server does not support xi input devices
2020-03-29 22:46:24,715  server uses: xtest
2020-03-29 22:47:50,770 server is not responding, drawing spinners over the windows
2020-03-29 22:47:51,272 server is OK again
2020-03-29 22:47:55,772 server is not responding, drawing spinners over the windows
2020-03-29 22:47:56,274 server is OK again
2020-03-29 22:48:00,772 server is not responding, drawing spinners over the windows
2020-03-29 22:48:01,318 server is OK again
2020-03-29 22:48:05,773 server is not responding, drawing spinners over the windows
2020-03-29 22:48:06,276 server is OK again
2020-03-29 22:48:10,773 server is not responding, drawing spinners over the windows
2020-03-29 22:48:11,276 server is OK again
2020-03-29 22:48:15,815 server is not responding, drawing spinners over the windows
2020-03-29 22:48:16,324 server is OK again
2020-03-29 22:48:20,782 server is not responding, drawing spinners over the windows
2020-03-29 22:48:21,284 server is OK again
2020-03-29 22:48:25,779 server is not responding, drawing spinners over the windows
2020-03-29 22:48:26,311 server is OK again
2020-03-29 22:48:31,156 server is not responding, drawing spinners over the windows
2020-03-29 22:48:31,411 server is OK again
2020-03-29 22:48:36,369 server is not responding, drawing spinners over the windows
2020-03-29 22:48:37,423 server is OK again
2020-03-29 22:48:42,305 UI thread is now blocked
2020-03-29 22:48:42,831 UI thread is running again, resuming
2020-03-29 22:48:43,586 server is not responding, drawing spinners over the windows
2020-03-29 22:48:44,856 server is OK again
2020-03-29 22:48:47,317 UI thread is now blocked
2020-03-29 22:48:47,450 UI thread is running again, resuming
2020-03-29 22:48:48,826 UI thread is now blocked
2020-03-29 22:48:49,036 UI thread is running again, resuming
2020-03-29 22:48:50,142 server is not responding, drawing spinners over the windows
2020-03-29 22:48:50,328 UI thread is now blocked
2020-03-29 22:48:50,392 UI thread is running again, resuming
2020-03-29 22:48:51,829 UI thread is now blocked
2020-03-29 22:48:51,999 UI thread is running again, resuming
2020-03-29 22:48:57,835 UI thread is now blocked
2020-03-29 22:48:57,973 UI thread is running again, resuming
2020-03-29 22:48:59,836 UI thread is now blocked
2020-03-29 22:49:00,010 UI thread is running again, resuming
2020-03-29 22:49:01,837 UI thread is now blocked
2020-03-29 22:49:02,190 UI thread is running again, resuming
2020-03-29 22:49:04,340 UI thread is now blocked
2020-03-29 22:49:04,573 UI thread is running again, resuming
2020-03-29 22:49:12,845 UI thread is now blocked
2020-03-29 22:49:13,240 UI thread is running again, resuming
2020-03-29 22:49:16,012 UI thread is now blocked
2020-03-29 22:49:16,151 UI thread is running again, resuming
2020-03-29 22:49:23,016 UI thread is now blocked
2020-03-29 22:49:23,441 UI thread is running again, resuming
2020-03-29 22:49:27,019 UI thread is now blocked
2020-03-29 22:49:27,128 UI thread is running again, resuming
2020-03-29 22:49:31,022 UI thread is now blocked
2020-03-29 22:49:31,492 UI thread is running again, resuming
2020-03-29 22:49:35,525 UI thread is now blocked
2020-03-29 22:49:35,939 UI thread is running again, resuming
^C
2020-03-29 22:49:45,904 Python/GTK3 Client got signal SIGINT
2020-03-29 22:49:45,904 exiting
2020-03-29 22:49:47,213 UI thread is now blocked
2020-03-29 22:49:47,584 UI thread is running again, resuming
2020-03-29 22:49:52,946 server ping timeout - waited 60 seconds without a response
/usr/lib64/python3.7/site-packages/gi/overrides/Gtk.py:1630: Warning: g_object_ref: assertion 'G_IS_OBJECT (object)' failed
  return _Gtk_main(*args, **kwargs)
[niki@lnx-1 ~]$

at the server:

[niki@jumphost-3 ~]$ xpra start --start-child="xterm -e top -d 0.1" --bind-udp=0.0.0.0:14567 --exit-with-children=yes --webcam=no --opengl=no --printing=no --speaker=no --microphone=no
using systemd-run to wrap 'start' server command
'systemd-run' '--description' 'xpra-start' '--scope' '--user' 'python3' '/usr/bin/xpra' 'start' '--start-child=xterm -e top -d 0.1' '--bind-udp=0.0.0.0:14567' '--exit-with-children=yes' '--webcam=no' '--opengl=no' '--printing=no' '--speaker=no' '--microphone=no' '--systemd-run=no'
Running scope as unit: run-re867c645f18c453abc2c215f09ae79cc.scope
[niki@jumphost-3 ~]$ Entering daemon mode; any further errors will be reported to:
  /run/user/1000/xpra/S9510.log
Actual display used: :0
Actual log file name is now: /run/user/1000/xpra/:0.log
tail -f /run/user/1000/xpra/:0.log
2020-03-29 22:46:24,507   h264, vp9, vp8, png, png/P, png/L, webp, rgb24, rgb32, jpeg, mpeg1, mpeg2
2020-03-29 22:46:24,561 DPI set to 23 x 24 (wanted 96 x 96)
2020-03-29 22:46:24,561  you may experience scaling problems, such as huge or small fonts, etc
2020-03-29 22:46:24,561  to fix this issue, try the dpi switch, or use a patched Xorg dummy driver
2020-03-29 22:46:24,627 client   1 @02.821 Xpra GTK3 X11 server version 4.0-r25797 64-bit
2020-03-29 22:46:24,632 client   1 @02.822  running on Linux CentOS Linux 8.1.1911 Core
2020-03-29 22:46:24,655 client   1 @02.837 Attached to udp://jumphost-3:14567/
2020-03-29 22:46:24,655 client   1 @02.838  (press Control-C to detach)
2020-03-29 22:46:24,768 client   1 @02.946 server does not support xi input devices
2020-03-29 22:46:24,769 client   1 @02.946  server uses: xtest
2020-03-29 22:48:01,164 Warning: timeout on screen updates for window 1,
2020-03-29 22:48:01,165  already delayed for more than 15 seconds
2020-03-29 22:48:49,291 Disconnecting client 192.168.255.240:53406:
2020-03-29 22:48:49,291  client ping timeout (waited 60 seconds without a response)
2020-03-29 22:48:49,293 xpra client 1 disconnected.

Sun, 10 May 2020 15:36:18 GMT - Antoine Martin: attachment set

try not to wait for too long if a sequence is just not coming through


Sun, 10 May 2020 15:37:20 GMT - Antoine Martin: priority, milestone changed

I think the problem occurs when the "control" packets end up being too big to fit in one UDP frame. This seems to trigger a storm that we never recover from.. Too late for v4 unfortunately.


Sun, 04 Oct 2020 12:55:37 GMT - Antoine Martin: milestone changed

I don't have time to look into this.


Sat, 23 Jan 2021 05:57:49 GMT - migration script:

this ticket has been moved to: https://github.com/Xpra-org/xpra/issues/2676