Fehlermeldung „No more handles“

Wofür braucht man denn in der PP 0.48 Eclipse/SWT 4.16.x: GTK+ 3.20.0?
Kann man denn nicht weiterhin Ubuntu 16.04 kompatible Versionen verwenden?

Ein Zielkonflikt. Es traten gerade unter Linux in der Darstellung zuletzt öfters Probleme auf, gerade weil SWT wegen der Abwärtskompatibilität lange nicht aktualisiert wurde. Jetzt wurde das Framework genau aus diesem Grund aktualisiert.

Aber, die Vorgaben trifft Eclipse, welche SWT/GTK Anforderungen erfüllt sein müssen :wink: und Cherry piking geht hier leider nicht.

Ich habe bisher unter Linux 16.04 LTS keine Probleme in der Darstellung gemerkt.
Kann man evtl. eine Version für 16.04 LTS mit dem Import-Patch für Smartbroker bilden ohne GTK+ 3.20.0-Probleme reinzupatchen?

@gsw17 @ProgFriese
Ich muss mich entschuldigen, ich bin bei der Version falsch abgebogen. Eclipse selbst auf 4.16, PP arbeitet mit 4.14. Demnach verwendet PP aktuell GTK 3.1

Nein, nicht wenn PP weiter entwickelt werden soll. Ab PP Version 0.48.0 liegt die GTK Voraussetzung bei >= 3.1. Sorry.

@AndreasB

Da @gsw17 ja bei Version 3.18.9-1ubuntu3.3 ist, sollte gtk doch jetzt als Ursache (für die NoMoreHandles) ausgeschlossen werden können, oder?

ich blicke nicht wirklich durch, was kommt denn als Ursache in Frage?
Das Problem mit PP Version 0.48.0 scheint ja nicht nur unter Linux aufzutreten.

Kann man sich noch die Hoffnung machen, dass jemand sich das Problem genau anschaut? :slight_smile:

Ich fürchte, dass das nicht weiter hilft, aber ich habe unter Manjaro-Linux (Arch) und PP 0.48.1 das beschriebene Problem nicht.

Grüße,
Andreas

Vielleicht gibt es ja neue Infos wenn Du mal PP aus dem Terminal startest, wie z.B. hier

me@xubuntu1804:~/Pfad/zu/pp_prog_0.48$ ./PortfolioPerformance 

(Portfolio Performance:10819): Gtk-CRITICAL **: 21:20:45.496: gtk_hsv_to_rgb: assertion 's >= 0.0 && s <= 1.0' failed
WARNING: An illegal reflective access operation has occurred
WARNING: Illegal reflective access by com.thoughtworks.xstream.core.util.Fields (file:/home/mj/Dokumente/edfg/pp_prog_0.48/plugins/org.apache.servicemix.bundles.xstream_1.4.8.1.jar) to field java.util.TreeMap.comparator
WARNING: Please consider reporting this to the maintainers of com.thoughtworks.xstream.core.util.Fields
WARNING: Use --illegal-access=warn to enable warnings of further illegal reflective access operations
WARNING: All illegal access operations will be denied in a future release

** (Portfolio Performance:10819): CRITICAL **: 21:20:47.031: JNI class pointer is NULL for class org/eclipse/swt/accessibility/AccessibleObject


** (Portfolio Performance:10819): CRITICAL **: 21:20:47.031: JNI class pointer is NULL for class org/eclipse/swt/accessibility/AccessibleObject

*** BUG ***
In pixman_region32_init_rect: Invalid rectangle passed
Set a breakpoint on '_pixman_log_error' to debug

*** BUG ***
In pixman_region32_init_rect: Invalid rectangle passed
Set a breakpoint on '_pixman_log_error' to debug


(Portfolio Performance:10819): Gtk-CRITICAL **: 21:20:49.764: gtk_box_gadget_distribute: assertion 'size >= 0' failed in GtkScrollbar

(Portfolio Performance:10819): Gtk-CRITICAL **: 21:20:49.764: gtk_widget_get_preferred_width_for_height: assertion 'height >= 0' failed

(Portfolio Performance:10819): Gtk-WARNING **: 21:20:49.764: gtk_widget_size_allocate(): attempt to allocate widget with width 21 and height -6

(Portfolio Performance:10819): Gtk-CRITICAL **: 21:20:49.764: gtk_box_gadget_distribute: assertion 'size >= 0' failed in GtkScrollbar
*** BUG ***
In pixman_region32_init_rect: Invalid rectangle passed
Set a breakpoint on '_pixman_log_error' to debug

*** BUG ***
In pixman_region32_init_rect: Invalid rectangle passed
Set a breakpoint on '_pixman_log_error' to debug

*** BUG ***
In pixman_region32_init_rect: Invalid rectangle passed
Set a breakpoint on '_pixman_log_error' to debug

*** BUG ***
In pixman_region32_init_rect: Invalid rectangle passed
Set a breakpoint on '_pixman_log_error' to debug

*** BUG ***
In pixman_region32_init_rect: Invalid rectangle passed
Set a breakpoint on '_pixman_log_error' to debug

*** BUG ***
In pixman_region32_init_rect: Invalid rectangle passed
Set a breakpoint on '_pixman_log_error' to debug

*** BUG ***
In pixman_region32_init_rect: Invalid rectangle passed
Set a breakpoint on '_pixman_log_error' to debug

*** BUG ***
In pixman_region32_init_rect: Invalid rectangle passed
Set a breakpoint on '_pixman_log_error' to debug


(Portfolio Performance:10819): Gtk-CRITICAL **: 21:20:49.802: gtk_box_gadget_distribute: assertion 'size >= 0' failed in GtkScrollbar

(Portfolio Performance:10819): Gtk-CRITICAL **: 21:20:49.802: gtk_box_gadget_distribute: assertion 'size >= 0' failed in GtkScrollbar
mj@xubuntu1804:~/Pfad/zu/pp_prog_0.48$ 

Die obigen Fehlermeldungen entstehen unter gtk 3.22.30-1ubuntu4 alle beim Start, bringen aber keine Einschränkungen mit sich - das Öffnen eines pdf-Files bringt bei mir keinen zusätzlichen Output. Das könnte bei Dir, @gsw17, ja anders sein.

***WARNING: GTK+ version too old (micro mismatch)
***WARNING: SWT requires GTK 3.20.0
***WARNING: Detected: 3.18.9

(Portfolio Performance:23507): Gtk-WARNING **: Theme parsing error: <data>:7:18: '-gtk-key-bindings' is not a valid property name

(Portfolio Performance:23507): Gtk-WARNING **: Theme parsing error: <data>:31:11: 'min-height' is not a valid property name

(Portfolio Performance:23507): Gdk-CRITICAL **: gdk_window_get_device_position_double: assertion 'GDK_IS_DEVICE (device)' failed

(Portfolio Performance:23507): Gdk-CRITICAL **: gdk_window_get_device_position_double: assertion 'GDK_IS_DEVICE (device)' failed

(Portfolio Performance:23507): Gdk-CRITICAL **: gdk_window_get_device_position_double: assertion 'GDK_IS_DEVICE (device)' failed

** (Portfolio Performance:23507): CRITICAL **: JNI class pointer is NULL for class org/eclipse/swt/accessibility/AccessibleObject


** (Portfolio Performance:23507): CRITICAL **: JNI class pointer is NULL for class org/eclipse/swt/accessibility/AccessibleObject

*** BUG ***
In pixman_region32_init_rect: Invalid rectangle passed
Set a breakpoint on '_pixman_log_error' to debug

*** BUG ***
In pixman_region32_init_rect: Invalid rectangle passed
Set a breakpoint on '_pixman_log_error' to debug

*** BUG ***
In pixman_region32_init_rect: Invalid rectangle passed
Set a breakpoint on '_pixman_log_error' to debug

*** BUG ***
In pixman_region32_init_rect: Invalid rectangle passed
Set a breakpoint on '_pixman_log_error' to debug

*** BUG ***
In pixman_region32_init_rect: Invalid rectangle passed
Set a breakpoint on '_pixman_log_error' to debug

*** BUG ***
In pixman_region32_init_rect: Invalid rectangle passed
Set a breakpoint on '_pixman_log_error' to debug


(Portfolio Performance:23507): Gtk-CRITICAL **: gtk_widget_get_preferred_width_for_height: assertion 'height >= 0' failed

(Portfolio Performance:23507): Gtk-WARNING **: gtk_widget_size_allocate(): attempt to allocate widget with width 10 and height -27
*** BUG ***
In pixman_region32_init_rect: Invalid rectangle passed
Set a breakpoint on '_pixman_log_error' to debug

*** BUG ***
In pixman_region32_init_rect: Invalid rectangle passed
Set a breakpoint on '_pixman_log_error' to debug


(Portfolio Performance:23507): Gdk-CRITICAL **: gdk_window_get_device_position_double: assertion 'GDK_IS_DEVICE (device)' failed

(Portfolio Performance:23507): Gdk-CRITICAL **: gdk_device_get_window_at_position_double: assertion 'GDK_IS_DEVICE (device)' failed

(Portfolio Performance:23507): Gdk-CRITICAL **: gdk_device_get_window_at_position_double: assertion 'GDK_IS_DEVICE (device)' failed

Da hast du es doch.
.

1 Like

Anscheinend kann man auch programmatisch die GTK Version auslesen, die SWT (und damit PP) verwendet: The SWT FAQ | The Eclipse Foundation Vielleicht sollten wir da einen Warnhinweis ausgeben wenn die zu alt ist.

Aktuell verwendet PP Eclipse/SWT Version 4.16

  • Eclipse/SWT 4.16.x: GTK+ 3.20.0 and its dependencies

Was heißt es für die angestrebte Lösung?

Linux aktualisieren auf GTK 3.20

Du kannst ja relativ problemlos (Datensicherung nicht vergessen) von 16.04 auf 18.04 updaten, dann ist das gtk-Problem automatisch erschlagen.

Der Aufwand und Risiken stehen doch in keinem Verhältnis zum Nutzen! Die LTS 16.04 werde ich auf die 20.04 updaten, wenn sie in reif ist (in ca. 6 Monaten).
Alle sonstige Programme laufen einwandfrei unter 16.04.

Hi,
ich hab das Problem mit dem neuen PP auch auf nur einem Rechner. Ich werde hier auch nicht das GTK nachziehen, solange das nicht direkt über die Paketquellen geht. Das ist mir dann doch etwas zu heikel.

PP startet ja ganz normal, nur dann beim Öffnen meiner Datei kommt es zu dem Problem.

Ich hätte etwas früher recherchieren sollen aber selbst Schuld. Selbst als jemand, der sich als recht IT-affin einstufen würde, habe ich heute mich endlich überwunden und mal alle meine bisherigen Buchungen in PP einzupflegen und dabei bis zuletzt nicht gespeichert. Beim Versuch das Erstellte als XML abzulegen erscheint ebenso der obige Fehler, hatte ihn bisher auch nur beim Versuch ein PDF zu öffnen. Naja, dann irgendwann wohl auf ein neues… OS ist auch ein Ubuntu 16.04 LTS.

Daran wundert mich eigentlich nur, dass es bisher funktioniert haben soll. Dass der Display-Server, der für Benutzer moonsedge läuft, keine Verbindungen von anderen Benutzern (hier root) akzeptiert, ist normal und aus Sicherheitsgründen auch richtig. Deswegen kannst du ohne besondere Maßnahmen nie eine grafische Anwendung unter einem anderen Nutzeraccount starten.

1 Like