Bug 2219623 - hang in java application
Summary: hang in java application
Keywords:
Status: NEW
Alias: None
Product: Red Hat Enterprise Linux 7
Classification: Red Hat
Component: ibus
Version: 7.9
Hardware: All
OS: Linux
unspecified
medium
Target Milestone: rc
: ---
Assignee: fujiwara
QA Contact: QE Internationalization Bugs
URL:
Whiteboard:
Depends On:
Blocks:
TreeView+ depends on / blocked
 
Reported: 2023-07-04 15:46 UTC by Paulo Andrade
Modified: 2023-08-16 10:42 UTC (History)
1 user (show)

Fixed In Version:
Doc Type: If docs needed, set a value
Doc Text:
Clone Of:
Environment:
Last Closed:
Target Upstream Version:
Embargoed:


Attachments (Terms of Use)


Links
System ID Private Priority Status Summary Last Updated
Red Hat Bugzilla 2225954 0 medium NEW Apparent issue with "XIM: Make Xim handle NEED_SYNC_REPLY flag" patch 2023-07-26 07:28:10 UTC
Red Hat Issue Tracker RHELPLAN-161543 0 None None None 2023-07-05 01:33:50 UTC

Description Paulo Andrade 2023-07-04 15:46:37 UTC
After debugging a java application that would hang, customer noticed
the only way to get it working again was to restart the desktop.

  Checking a forced java coredump the best guess we had was that it
was related to ibus.

  Searching the web with some keywords we found that the problem appears
to be fixed if with the environment variable:

IBUS_ENABLE_SYNC_MODE=1

  Can you please describe any problems with this setting? At first
it can be assumed that it might run slightly slower, and should be
done only for the java application. Can you confirm it?

  What would be the best way to debug this issue, and not need to
use workaround?

Comment 3 fujiwara 2023-07-05 01:30:01 UTC
I cannot reproduce your issue.
Can you provide a example Java program?

> IBUS_ENABLE_SYNC_MODE=1

It would cause several regressions and the setting won't be changed by default in RHEL 9 or lower.

Comment 12 Paulo Andrade 2023-08-08 13:40:13 UTC
Could not yet reproduce the problem, but user reproduced in a patched version
in the 89th try.

The modified version was changed to not enter full screen mode and run
undecorated, as it was guessed it could be somehow related to:

https://bugs.openjdk.org/browse/JDK-8013581

Also, customer did run this small program from a ssh connection:

"""
#include <stdio.h>
#include <X11/Xlib.h>
int
main(int argc, char *argv[])
{
    Display *display = XOpenDisplay(NULL);
    Window  focus;
    int revert;
    if (display == NULL) {
	fprintf(stderr, "failed to open display\n");
	return 1;
    }
    XGetInputFocus(display, &focus, &revert);
    printf("focus = ");
    if (focus == PointerRoot)
	printf("PointerRoot");
    else if (focus == None)
	printf("None");
    else
	printf("0x%x", focus);
    putchar('\n');
    printf("revert = ");
    switch (revert) {
	case RevertToParent:
	    printf("RevertToParent");
	    break;
	case RevertToPointerRoot:
	    printf("RevertToPointerRoot");
	    break;
	case RevertToNone:
	    printf("RevertToNone");
	    break;
	default:
	    printf("%d\n", revert);
	    break;
    }
    putchar('\n');
    return 0;
}
"""

and run:

$ DISPLAY=:0 ./xtest
$ DISPLAY=:0 xwininfo -all -root
$ DISPLAY=:0 xlsclients -al

The xtest output was:

focus = 0x220001f
revert = RevertToPointerRoot

and the xwininfo relevant block is:

    0xe00021 (has no name): ()  1280x1024+0+0  +0+0
        1 child:
        0x2200007 "Test": ("sun-awt-X11-XFramePeer" "Test")  1280x1024+0+0  +0+0
           2 children:
           0x220001f "FocusProxy": ("Focus-Proxy-Window" "FocusProxy")  1x1+-1+-1  +-1+-1
           0x220001c "Content window": ("sun-awt-X11-XContentWindow" "ScrTimeSet")  1280x1061+0+-37  +0+-37
     0x2200008 "ScrTimeSet": ("Test" "Test")  1x1+1+1  +1+1

Note that the focus is in the "FocusProxy" window, but the interface is
frozen.

I played a bit with the sample java code but could not figure an easy
way to have the java app shown in xlsclients output.

Still, this is the major difference I see from my tests, in xlsclients
output:

Window 0x2000001:
  Machine:  test
  Name:  <unknown type COMPOUND_TEXT (475) or format 8>
  Icon Name:  <unknown type COMPOUND_TEXT (475) or format 8>
  Command:  gnome-software
  Instance/Class:  gnome-software/Gnome-software

and that I believe might be related to the hang.

For extra data of another possible related issue, please see bz#2225954

Do you have some idea about the
"<unknown type COMPOUND_TEXT (475) or format 8>" above?

Comment 13 fujiwara 2023-08-16 10:35:06 UTC
The bug reporters should not set needinfo flags.

Comment 14 fujiwara 2023-08-16 10:42:44 UTC
(In reply to Paulo Andrade from comment #12)
> Could not yet reproduce the problem, but user reproduced in a patched version
> in the 89th try.

Then you may need to investigate the customer site. The issue might be caused by the wrong configurations.

> 
> The modified version was changed to not enter full screen mode and run
> undecorated, as it was guessed it could be somehow related to:
> 
> https://bugs.openjdk.org/browse/JDK-8013581

The Java issue is not my responsible and I'm not sure about it.

> The xtest output was:
> 
> focus = 0x220001f
> revert = RevertToPointerRoot

It should be normal.

> Window 0x2000001:
>   Machine:  test
>   Name:  <unknown type COMPOUND_TEXT (475) or format 8>
>   Icon Name:  <unknown type COMPOUND_TEXT (475) or format 8>
>   Command:  gnome-software
>   Instance/Class:  gnome-software/Gnome-software
> 
> and that I believe might be related to the hang.

Should not be relative with your issue.

> Do you have some idea about the
> "<unknown type COMPOUND_TEXT (475) or format 8>" above?

It should be correct. X sends several types of formats with Unicode, compound-text and  format 8.


Note You need to log in before you can comment on or make changes to this bug.