xpra icon
Bug tracker and wiki

Opened 4 years ago

Closed 4 years ago

Last modified 4 years ago

#891 closed defect (fixed)

xor error, build clean missing files, man page, clipboard limit

Reported by: onlyjob Owned by: Antoine Martin
Priority: minor Milestone: 0.16
Component: client Version: 0.15.x
Keywords: Cc:

Description

I've noticed few issues with 0.15.0:

Without python-rencode client log the following errors to console:

2015-06-17 10:25:28,783 error processing draw packet
Traceback (most recent call last):
  File "/usr/lib/python2.7/dist-packages/xpra/client/ui_client_base.py", line 1978, in _draw_thread_loop
    self._do_draw(packet)
  File "/usr/lib/python2.7/dist-packages/xpra/client/ui_client_base.py", line 2024, in _do_draw
    window.draw_region(x, y, width, height, coding, data, rowstride, packet_sequence, options, [record_decode_time])
  File "/usr/lib/python2.7/dist-packages/xpra/client/client_window_base.py", line 423, in draw_region
    self._backing.draw_region(x, y, width, height, coding, img_data, rowstride, options, callbacks)
  File "/usr/lib/python2.7/dist-packages/xpra/client/window_backing_base.py", line 473, in draw_region
    self.paint_rgb24(img_data, x, y, width, height, rowstride, options, callbacks)
  File "/usr/lib/python2.7/dist-packages/xpra/client/window_backing_base.py", line 264, in paint_rgb24
    rgb24_data = self.process_delta(raw_data, width, height, rowstride, options)
  File "/usr/lib/python2.7/dist-packages/xpra/client/window_backing_base.py", line 186, in process_delta
    rgb_data = xor_str(img_data, ldata)
  File "xpra/codecs/xor/cyxor.pyx", line 19, in xpra.codecs.xor.cyxor.xor_str (xpra/codecs/xor/cyxor.c:750)
AssertionError: cyxor cannot xor strings of different lengths (<type 'str'>:13860 vs <type 'str'>:10395)

---

The following files are not cleaned in the build directory:

build/etc/xpra/xpra.conf
xpra/server/cystats.c
xpra/server/region.c

---

Lintian complains "hyphen-used-as-minus-sign" due to unescaped "-" characteres in line 977 of the xpra.1 file.

Change History (13)

comment:1 Changed 4 years ago by onlyjob

Just noticed those errors logged even with python-rencode...

comment:2 Changed 4 years ago by Antoine Martin

Owner: changed from Antoine Martin to onlyjob

Without python-rencode..


FYI: rencode is faster and better, though we now also have a builtin cython bencoder too.


hyphen-used-as-minus-sign


fixed in r9646

The following files are not cleaned in the build directory:


The cython files have been added in r9647, I don't see why we would clean a specific file in "build/", we should either clean the whole directory or nothing at all?

cyxor cannot xor strings of different lengths


As per ticket:861#comment:6, I cannot reproduce this one. Do you have specific steps?
Can you post the XPRA_INTEGRITY_HASH=1 output? Does lowering the XPRA_MAX_DELTA_HITS trigger more easily?

Last edited 4 years ago by Antoine Martin (previous) (diff)

comment:3 Changed 4 years ago by onlyjob

Yep, I'm taking care of "rencode" in Debian, see https://bugs.debian.org/cgi-bin/bugreport.cgi?bug=788918

I'm not sure why build/etc/xpra/xpra.conf is the only file left in build directory after cleanup...

Unfortunately I do not have specific steps to reproduce the issue. I'm just attaching to server (0.14.25 or 0.15.0) from client 0.15.0 and while I'm using RGB encoding and it occasionally logged... No such issue was on client 0.14.*...
I will try XPRA_INTEGRITY_HASH=1 and XPRA_MAX_DELTA_HITS<20.

comment:4 Changed 4 years ago by Antoine Martin

xpra.conf is the only file left in build directory after cleanup...


$ rm -fr build
$ ./setup.py build
$ find build/ -type f | wc -l
265
$ ./setup.py clean
$ find build/ -type f | wc -l
238

What am I missing?

comment:5 Changed 4 years ago by onlyjob

After build I give command python setup.py clean -a which removes all files from the "build" directory except the build/etc/xpra/xpra.conf which is the only file left (when there shall be none I presume)...
What am I missing? ;)


I tried attaching with XPRA_INTEGRITY_HASH=1 and XPRA_MAX_DELTA_HITS=10 but it seems to make no difference...

comment:6 Changed 4 years ago by Antoine Martin

$ rm -fr build
$ ./setup.py build
$ ./setup.py clean -a
$ ls -l build/
total 8
drwxrwxr-x. 3 antoine antoine 4096 Jun 17 13:34 etc
drwxrwxr-x. 3 antoine antoine 4096 Jun 17 13:33 lib.linux-x86_64-2.7

clean -a, still not empty!


I tried attaching with XPRA_INTEGRITY_HASH=1 and XPRA_MAX_DELTA_HITS=10 but it seems to make no difference...


Is there a specific app or trigger for this bug? (beyond using rgb as encoding) If so, pleae add to #861.

comment:7 Changed 4 years ago by onlyjob

I think in my case Debian packaging tools clean lib.linux-x86_64-2.7 but /etc is left behind...

I'm not sure about which app. triggers the issue but it could be related to clipboard that works very dodgy for me ever since I started to use 0.15.0...
I mostly use kmail in Xpra session...

comment:8 Changed 4 years ago by Antoine Martin

Owner: changed from onlyjob to Antoine Martin
Status: newassigned

I think in my case Debian packaging tools clean...


OK, It just seems wrong to add "build/" things to the clean list.
I've done this for trunk in r9656. I am keeping this ticket open, and if no other platforms break then I'll eventually apply this to 0.15.x


I'm not sure about which app. triggers the issue but it could be related to clipboard that works very dodgy for me ever since I started to use 0.15.0...


That's very very unlikely to be related to the clipboard: this is a picture encoding or decoding bug, the clipboard doesn't interact with this at all.

As for 0.15.x: there were zero changes to the clipboard code:

$ diff -urN v0.15.x/src/xpra/clipboard v0.14.x/src/xpra/clipboard | wc -l
0

comment:9 Changed 4 years ago by onlyjob

I'm not sure how those errors are related to clipboard trouble... Maybe they are not related. Everything seems to work despite the errors except clipboard that stops working after some time (which is not happening on 0.14.*)... I'm not sure how to explain...

comment:10 Changed 4 years ago by onlyjob

Clipboard trouble revealed itself: "clipboard toggled to off by the server, reason: more than 10 clipboard requests per second!". As you already guessed I'm using clipboard manager and unfortunately I'm yet to see a non-polling one... Please advise how can I disable (or tune) clipboard autodisable on server?

--

As for client-sided errors they seems to be OpenGL-related. So far I could not reproduce with --opengl=no. Here is what Xpra prints about my OpenGL on start:

PyOpenGL warning: missing accelerate module
PyOpenGL warning: missing array format handlers: numeric, vbo, vbooffset
OpenGL Version: 3.0 Mesa 10.5.5

According to "Session info" it is X.Org/Gallium 0.4 on AMD TAHITI on Debian "testing".

comment:11 Changed 4 years ago by Antoine Martin

clipboard toggled to off by the server, reason: more than 10 clipboard requests per second!


See #877


Please advise how can I disable (or tune) clipboard autodisable on server?


0.15.1 raises the limit to 20, and you can tune it with XPRA_CLIPBOARD_LIMIT=

As you already guessed I'm using clipboard manager and unfortunately I'm yet to see a non-polling one...


Not a use case we can ever hope to deal with nicely, but maybe #812 will help.


As for client-sided errors they seems to be OpenGL-related


Interesting, not sure why that would make a difference - but I've added this info to ticket:861#comment:7


PyOpenGL warning: missing accelerate module
(..)


FYI: this only means that you are missing the OpenGL_accelerate package. (unchanged since 0.10.x or older IIRC)


I don't see anything left in this ticket that needs action, can we close?

comment:12 Changed 4 years ago by onlyjob

Resolution: fixed
Status: assignedclosed

Yeah, I know about OpenGL_accelerate but I still have no time to package it... I've mentioned it because I thought it might be relevant...

Thanks for the tip about XPRA_CLIPBOARD_LIMIT. I'll try that.
Unfortunately I think it might not be the only problem with clipboard because
sometimes it stops working without message from server and in the menu "Clipboard" entry stays checked... I'll open another ticked for this if XPRA_CLIPBOARD_LIMIT won't help...

Let's close this ticket. Thanks.

comment:13 Changed 4 years ago by Antoine Martin

Summary: 0.15.0 minor issuesxor error, build clean missing files, man page, clipboard limit

(editing ticket title)

Note: See TracTickets for help on using tickets.