-
Bug
-
Resolution: Duplicate
-
P4
-
None
-
1.1.4, 1.2.0
-
sparc
-
solaris_2.5.1
d:
"Async Garbage Collector"
java.awt.EventQueue@EE70DF28/EE783E38: <unowned>
Waiting to be notified:
"AWT-EventQueue-0"
sun.applet.AppletViewerPanel@EE70CF10/EE77F1D0: <unowned>
Waiting to be notified:
"thread applet-CLSFractal.class"
sun.awt.motif.MToolkit@EE70DEF8/EE783D48: owner "main" (0x40e20, 1 entry)
Waiting to enter:
"AWT-Motif"
Waiting to be notified:
"AWT-Input"
Registered Monitor Dump:
Thread queue lock: <unowned>
Name and type hash table lock: <unowned>
String intern lock: <unowned>
JNI pinning lock: <unowned>
JNI global reference lock: <unowned>
BinClass lock: <unowned>
Class loading lock: <unowned>
Java stack lock: <unowned>
Code rewrite lock: <unowned>
Heap lock: <unowned>
Has finalization queue lock: <unowned>
Finalize me queue lock: <unowned>
Waiting to be notified:
"Finalizer thread"
Monitor IO lock: <unowned>
Child death monitor: <unowned>
Event monitor: <unowned>
I/O monitor: <unowned>
Alarm monitor: <unowned>
Waiting to be notified:
"Clock"
Sbrk lock: <unowned>
Monitor cache expansion lock: <unowned>
Monitor registry: owner "main" (0x40e20, 1 entry)
Thread Alarm Q:
sys_thread_t 0xee2f1de0 [Timeout in 313 ms]
Abort
romulus> exit
script done on Thu Oct 09 11:35:06 1997
======================================================================
Problem
Window never appears on NCD Xterm when trying to run the following script.
Sequence of events:
1. run program
2. I get all the output listed below from the xmon program
3. Thread dump occurs
4. the window never appears on the gui
5. I do a cntl-c to kill the process and get back my command prompt
----------------------------------------------------------------------------------------------
lumber3 (hare) [51] % ls
Howdy.class Howdy.java
lumber3 (hare) [52] % cat Howdy.java
import java.awt.*;
public class Howdy {
public Howdy() {
Frame f = new Frame();
Label l = new Label("Howdy Partner!");
f.add(l);
f.pack();
f.show();
}
public static void main(String s[]) {
Howdy h = new Howdy();
}
}
lumber3 (hare) [53] %
----------------------------------------------------------------------------------------------
lumber3 (hare) [50] % !java
java Howdy
java.lang.ArrayIndexOutOfBoundsException: 0
at sun.java2d.SunGraphicsEnvironment.getAllFonts(SunGraphicsEnvironment.java:121)
at sun.java2d.SunGraphicsEnvironment.getFont(SunGraphicsEnvironment.java:161)
at java.awt.Font.initializeFont(Font.java:240)
at java.awt.Font.<init>(Font.java:263)
at sun.awt.motif.MFramePeer.<init>(MFramePeer.java:120)
at sun.awt.motif.MToolkit.createFrame(MToolkit.java:126)
at java.awt.Frame.addNotify(Frame.java:169)
at java.awt.Window.pack(Window.java:145)
at Howdy.<init>(Howdy.java:11)
at Howdy.main(Howdy.java:17)
^C
lumber3 (hare) [51] %
----------------------------------------------------------------------------------------------
Info from NCD Xterm "Messages" window
%XSERVER-I-NEWCLIENT, host "136.182.4.1" connected with blank authorization
%XSERVER-W-NOEXTENSION, client attempted to use non-existent extension "BIG-REQUESTS"
%XSERVER-W-NOEXTENSION, client attempted to use non-existent extension "SolarisIA"
----------------------------------------------------------------------------------------------
The following is only the very last part of the dump from
xmon that shows the xprotocol messages just before
the thread dump.
I am able to get this same example program to succeed
by running it from another solaris machine.
I have complete xmon dumps for both the successfull case
and failure case but they're quite large.
Email ###@###.### and ask for them if you
what to see them.
............REQUEST: AllocColor
sequence number: 542
request length: 0004
cmap: CMP 00000021
red: c48b
green: d784
blue: ffff
..............REPLY: AllocColor
sequence number: 021e
reply length: 00000000
red: c4c4
green: d7d7
blue: ffff
pixel: 000000f6
............REQUEST: AllocColor
sequence number: 543
request length: 0004
cmap: CMP 00000021
red: 3ef2
green: 57cb
blue: 8ccd
..............REPLY: AllocColor
sequence number: 021f
reply length: 00000000
red: 3e3e
green: 5757
blue: 8c8c
pixel: 000000f7
............REQUEST: CreateGC
sequence number: 544
request length: 0005
graphic-context-id: GXC 04c0000a
drawable: DWB 00000029
value-mask: foreground
value-list:
foreground: 000000f5
............REQUEST: CreateGC
sequence number: 545
request length: 0005
graphic-context-id: GXC 04c0000b
drawable: DWB 00000029
value-mask: foreground
value-list:
foreground: 000000f6
............REQUEST: CreateGC
sequence number: 546
request length: 0005
graphic-context-id: GXC 04c0000c
drawable: DWB 00000029
value-mask: foreground
value-list:
foreground: 000000f7
............REQUEST: CreateGC
sequence number: 547
request length: 0006
graphic-context-id: GXC 04c0000d
drawable: DWB 00000029
value-mask: foreground | background
value-list:
foreground: 00000001
background: 000000f5
............REQUEST: GetProperty
sequence number: 548
delete: False
request length: 0006
window: WIN 00000029
property: ATM 000000da
type: ATM 000000da
long-offset: 00000000
long-length: 00000002
..............REPLY: GetProperty
format: 00
sequence number: 0224
reply length: 00000000
type: <NONE>
bytes-after: 00000000
length of value: 00000000
............REQUEST: InternAtom
sequence number: 549
only-if-exists: False
request length: 0006
length of name: 000d
name: "COMPOUND_TEXT"
..............REPLY: InternAtom
sequence number: 0225
reply length: 00000000
atom: ATM 000000e0 <COMPOUND_TEXT>
----------> Thread dump occurs here!!!!!!!!
=======================
Setup:
+--------+ +--------+ +-----------+
| Solaris| | SunOS | | NCD Xterm |
| beaver | | turtle | | russia185 |
| | | | | |
+---+----+ +---+----+ +-----+-----+
| | |
o--+-----------+-------------+-----o
If I run the "Howdy" program (see below) on the
Solaris machine and display it on the Xterm, it just
hangs.
However, if I load up an application that uses up most/all
of the colormap, the program works. It give this error
however just before the screen pops up:
beaver (hare) [21] % java Howdy
Warning:
Cannot allocate colormap entry for default background
The program I used to fill up the colormap was netscape.
The program only runs if netscape is up running first.
If I start netscape w/ the "-install" option, the "Howdy"
program just hangs.
The netscape program is being run from the SunOS machine.
Here's the program I was trying:
------------------------------------------------
import java.awt.*;
public class Howdy {
public Howdy() {
Frame f = new Frame();
Label l = new Label("Howdy Partner!");
f.add(l);
f.pack();
f.show();
}
public static void main(String s[]) {
Howdy h = new Howdy();
}
}
Name: joT67522 Date: 10/10/97
Enviornment:
FileServer: SunOS romulus.rutgers.edu 5.5.1 Generic_103640-12 sun4u sparc
Java version: JDK 1.1.3 & JDK 1.1.4
Workstation: NCD Xterm
Window manager: /usr/openwin/bin/twm
(it appears under the JDK 1.1.3 in solaris 2.6 as well)
(small tests with JDK 1.1.4 show the same behavior)
Overview:
Under certain conditions, Java programs with GUI can be made to
reproducably hang.
Impact:
CS111, a course of about 500 students, is being taught in Java
this semester. Students whose enviornment meets the conditions
below will be unable to run any Java program that contains GUI.
Conditions:
When on the right kind of terminal (NCD Xterminal) using the right
kind of window manager (tvtwm, twm) and while not running any other
interesting programs (netscape). Java containing GUI can be made to
reproducably hang.
Reproduce:
/usr/local/java/bin/appletviewer /usr/local/java/demo/Fractal/example1.html
Other information:
1) This only appears to happen on NCD Xterms. Running the
same program on a UNIX box even if it is an xterm should work.
2) This problem only appears to happen with the tvtwm, and twm
window managers (including /usr/openwin/bin/twm). Running a
window manager such as fvwm fixes the problem.
3) If netscape is running when the command is issued, it works
regardless of window manager or terminal.
#3 is probably the best clue as to what is going on, perhaps java is
not initializing some resource that it needs to.
DETAILS:
Appletview does not appear to have the "-v" option that java does.
This is the output of a simple java program that uses GUI that hangs
in the same way appletview does.
Script started on Thu Oct 09 11:59:45 1997
romulus> java -v MyGeometry Assignment_2.data
[Loaded java/lang/Thread.class from /usr/local/java/bin/../lib/classes.zip]
[Loaded java/lang/Object.class from /usr/local/java/bin/../lib/classes.zip]
[Loaded java/lang/Class.class from /usr/local/java/bin/../lib/classes.zip]
[Loaded java/lang/String.class from /usr/local/java/bin/../lib/classes.zip]
[Loaded java/io/Serializable.class from /usr/local/java/bin/../lib/classes.zip]
[Loaded java/lang/ThreadDeath.class from /usr/local/java/bin/../lib/classes.zip]
[Loaded java/lang/Error.class from /usr/local/java/bin/../lib/classes.zip]
[Loaded java/lang/Throwable.class from /usr/local/java/bin/../lib/classes.zip]
[Loaded java/lang/Exception.class from /usr/local/java/bin/../lib/classes.zip]
[Loaded java/lang/RuntimeException.class from /usr/local/java/bin/../lib/classes
.zip]
[Loaded java/lang/Cloneable.class from /usr/local/java/bin/../lib/classes.zip]
[Loaded java/lang/Runnable.class from /usr/local/java/bin/../lib/classes.zip]
[Loaded java/lang/ThreadGroup.class from /usr/local/java/bin/../lib/classes.zip]
[Loaded java/lang/StringBuffer.class from /usr/local/java/bin/../lib/classes.zip
]
[Loaded java/lang/System.class from /usr/local/java/bin/../lib/classes.zip]
[Loaded java/lang/Integer.class from /usr/local/java/bin/../lib/classes.zip]
[Loaded java/lang/Number.class from /usr/local/java/bin/../lib/classes.zip]
[Loaded java/lang/Character.class from /usr/local/java/bin/../lib/classes.zip]
[Loaded java/lang/NoClassDefFoundError.class from /usr/local/java/bin/../lib/cla
sses.zip]
[Loaded java/lang/LinkageError.class from /usr/local/java/bin/../lib/classes.zip
]
[Loaded java/lang/OutOfMemoryError.class from /usr/local/java/bin/../lib/classes
.zip]
[Loaded java/lang/VirtualMachineError.class from /usr/local/java/bin/../lib/clas
ses.zip]
[Loaded java/util/Properties.class from /usr/local/java/bin/../lib/classes.zip]
[Loaded java/util/Hashtable.class from /usr/local/java/bin/../lib/classes.zip]
[Loaded java/util/Dictionary.class from /usr/local/java/bin/../lib/classes.zip]
[Loaded java/util/HashtableEntry.class from /usr/local/java/bin/../lib/classes.z
ip]
[Loaded java/io/FileInputStream.class from /usr/local/java/bin/../lib/classes.zi
p]
[Loaded java/io/InputStream.class from /usr/local/java/bin/../lib/classes.zip]
[Loaded java/io/FileDescriptor.class from /usr/local/java/bin/../lib/classes.zip
]
[Loaded java/io/FileOutputStream.class from /usr/local/java/bin/../lib/classes.z
ip]
[Loaded java/io/OutputStream.class from /usr/local/java/bin/../lib/classes.zip]
[Loaded java/io/BufferedInputStream.class from /usr/local/java/bin/../lib/classe
s.zip]
[Loaded java/io/FilterInputStream.class from /usr/local/java/bin/../lib/classes.
zip]
[Loaded java/io/PrintStream.class from /usr/local/java/bin/../lib/classes.zip]
[Loaded java/io/FilterOutputStream.class from /usr/local/java/bin/../lib/classes
.zip]
[Loaded java/io/BufferedOutputStream.class from /usr/local/java/bin/../lib/class
es.zip]
[Loaded java/io/OutputStreamWriter.class from /usr/local/java/bin/../lib/classes
.zip]
[Loaded java/io/Writer.class from /usr/local/java/bin/../lib/classes.zip]
[Loaded sun/io/CharToByteConverter.class from /usr/local/java/bin/../lib/classes
.zip]
[Loaded sun/io/CharacterEncoding.class from /usr/local/java/bin/../lib/classes.z
ip]
[Loaded java/util/Locale.class from /usr/local/java/bin/../lib/classes.zip]
[Loaded sun/io/CharToByte8859_1.class from /usr/local/java/bin/../lib/classes.zi
p]
[Loaded java/io/BufferedWriter.class from /usr/local/java/bin/../lib/classes.zip
]
[Loaded java/lang/Compiler.class from /usr/local/java/bin/../lib/classes.zip]
[Loaded ./MyGeometry.class]
[Loaded /usr/local/class/cs111/packages/classes/cs111/Geometry/Screen.class]
[Loaded java/awt/Frame.class from /usr/local/java/bin/../lib/classes.zip]
[Loaded java/awt/Window.class from /usr/local/java/bin/../lib/classes.zip]
[Loaded java/awt/Container.class from /usr/local/java/bin/../lib/classes.zip]
[Loaded java/awt/Component.class from /usr/local/java/bin/../lib/classes.zip]
[Loaded java/awt/image/ImageObserver.class from /usr/local/java/bin/../lib/class
es.zip]
[Loaded java/awt/MenuContainer.class from /usr/local/java/bin/../lib/classes.zip
]
[Loaded java/awt/Font.class from /usr/local/java/bin/../lib/classes.zip]
[Loaded java/awt/Toolkit.class from /usr/local/java/bin/../lib/classes.zip]
[Loaded java/io/File.class from /usr/local/java/bin/../lib/classes.zip]
[Loaded java/lang/Runtime.class from /usr/local/java/bin/../lib/classes.zip]
[Loaded sun/awt/motif/MToolkit.class from /usr/local/java/bin/../lib/classes.zip
]
[Loaded sun/awt/SunToolkit.class from /usr/local/java/bin/../lib/classes.zip]
[Loaded java/awt/EventQueue.class from /usr/local/java/bin/../lib/classes.zip]
[Loaded java/awt/EventDispatchThread.class from /usr/local/java/bin/../lib/class
es.zip]
<----------------------------------------------------------------------------->
<----------------------------------------------------------------------------->
This appears to be the point at which it hangs indefinetly.
The output below this point was obtained by running the program with
the fvwm window manager.
<----------------------------------------------------------------------------->
<----------------------------------------------------------------------------->
[Loaded sun/awt/motif/InputThread.class from /usr/local/java/bin/../lib/classes.
zip]
[Loaded sun/awt/motif/MFontPeer.class from /usr/local/java/bin/../lib/classes.zi
p]
[Loaded sun/awt/PlatformFont.class from /usr/local/java/bin/../lib/classes.zip]
[Loaded java/awt/peer/FontPeer.class from /usr/local/java/bin/../lib/classes.zip
]
[Loaded java/util/Vector.class from /usr/local/java/bin/../lib/classes.zip]
[Loaded java/lang/ClassNotFoundException.class from /usr/local/java/bin/../lib/c
lasses.zip]
[Loaded sun/awt/FontDescriptor.class from /usr/local/java/bin/../lib/classes.zip
]
[Loaded java/awt/Cursor.class from /usr/local/java/bin/../lib/classes.zip]
[Loaded java/awt/FocusManager.class from /usr/local/java/bin/../lib/classes.zip]
[Loaded java/awt/BorderLayout.class from /usr/local/java/bin/../lib/classes.zip]
[Loaded java/awt/LayoutManager2.class from /usr/local/java/bin/../lib/classes.zi
p]
[Loaded java/awt/LayoutManager.class from /usr/local/java/bin/../lib/classes.zip
]
[Loaded java/awt/peer/FramePeer.class from /usr/local/java/bin/../lib/classes.zi
p]
[Loaded java/awt/peer/WindowPeer.class from /usr/local/java/bin/../lib/classes.z
ip]
[Loaded java/awt/peer/ContainerPeer.class from /usr/local/java/bin/../lib/classe
s.zip]
[Loaded java/awt/peer/ComponentPeer.class from /usr/local/java/bin/../lib/classe
s.zip]
[Loaded sun/awt/motif/MFramePeer.class from /usr/local/java/bin/../lib/classes.z
ip]
[Loaded sun/awt/motif/MPanelPeer.class from /usr/local/java/bin/../lib/classes.z
ip]
[Loaded sun/awt/motif/MCanvasPeer.class from /usr/local/java/bin/../lib/classes.
zip]
[Loaded sun/awt/motif/MComponentPeer.class from /usr/local/java/bin/../lib/class
es.zip]
[Loaded sun/awt/UpdateClient.class from /usr/local/java/bin/../lib/classes.zip]
[Loaded java/awt/peer/CanvasPeer.class from /usr/local/java/bin/../lib/classes.z
ip]
[Loaded sun/awt/DrawingSurface.class from /usr/local/java/bin/../lib/classes.zip
]
[Loaded java/awt/peer/PanelPeer.class from /usr/local/java/bin/../lib/classes.zi
p]
[Loaded java/awt/Insets.class from /usr/local/java/bin/../lib/classes.zip]
[Loaded sun/awt/EmbeddedFrame.class from /usr/local/java/bin/../lib/classes.zip]
[Loaded java/awt/Rectangle.class from /usr/local/java/bin/../lib/classes.zip]
[Loaded java/awt/Shape.class from /usr/local/java/bin/../lib/classes.zip]
[Loaded sun/awt/motif/CharToByteX11Dingbats.class from /usr/local/java/bin/../li
b/classes.zip]
[Loaded sun/awt/CharToByteSymbol.class from /usr/local/java/bin/../lib/classes.z
ip]
[Loaded java/awt/Color.class from /usr/local/java/bin/../lib/classes.zip]
[Loaded java/awt/peer/LightweightPeer.class from /usr/local/java/bin/../lib/clas
ses.zip]
[Loaded java/awt/LightweightDispatcher.class from /usr/local/java/bin/../lib/cla
sses.zip]
[Loaded sun/awt/motif/X11Graphics.class from /usr/local/java/bin/../lib/classes.
zip]
[Loaded java/awt/Graphics.class from /usr/local/java/bin/../lib/classes.zip]
[Loaded sun/awt/AWTFinalizeable.class from /usr/local/java/bin/../lib/classes.zi
p]
[Loaded java/awt/Dimension.class from /usr/local/java/bin/../lib/classes.zip]
[Loaded sun/awt/motif/X11FontMetrics.class from /usr/local/java/bin/../lib/class
es.zip]
[Loaded java/awt/FontMetrics.class from /usr/local/java/bin/../lib/classes.zip]
[Loaded sun/awt/CharsetString.class from /usr/local/java/bin/../lib/classes.zip]
[Loaded java/awt/event/ComponentEvent.class from /usr/local/java/bin/../lib/clas
ses.zip]
[Loaded java/awt/AWTEvent.class from /usr/local/java/bin/../lib/classes.zip]
[Loaded java/util/EventObject.class from /usr/local/java/bin/../lib/classes.zip]
[Loaded java/awt/EventQueueItem.class from /usr/local/java/bin/../lib/classes.zi
p]
[Loaded /usr/local/class/cs111/packages/classes/cs111/Geometry/Stream.class]
[Loaded sun/awt/ScreenUpdater.class from /usr/local/java/bin/../lib/classes.zip]
[Loaded java/io/BufferedReader.class from /usr/local/java/bin/../lib/classes.zip
]
[Loaded java/io/Reader.class from /usr/local/java/bin/../lib/classes.zip]
[Loaded java/io/InputStreamReader.class from /usr/local/java/bin/../lib/classes.
zip]
[Loaded sun/io/ByteToCharConverter.class from /usr/local/java/bin/../lib/classes
.zip]
[Loaded sun/io/ByteToChar8859_1.class from /usr/local/java/bin/../lib/classes.zi
p]
[Loaded ./MyPoint.class]
[Loaded /usr/local/class/cs111/packages/classes/cs111/Geometry/Point.class]
[Loaded java/lang/NoSuchMethodError.class from /usr/local/java/bin/../lib/classe
s.zip]
[Loaded java/lang/IncompatibleClassChangeError.class from /usr/local/java/bin/..
/lib/classes.zip]
java.lang.NoSuchMethodError: cs111.Geometry.Stream: method readPoint()Lcs111/Geo
metry/Point; not found
at MyGeometry.main(MyGeometry.java:24)
[Loaded sun/awt/ScreenUpdaterEntry.class from /usr/local/java/bin/../lib/classes
.zip]
[Loaded java/awt/event/MouseEvent.class from /usr/local/java/bin/../lib/classes.
zip]
[Loaded java/awt/event/InputEvent.class from /usr/local/java/bin/../lib/classes.
zip]
[Loaded java/awt/event/KeyEvent.class from /usr/local/java/bin/../lib/classes.zi
p]
[Loaded java/awt/event/PaintEvent.class from /usr/local/java/bin/../lib/classes.
zip]
[Loaded java/awt/Point.class from /usr/local/java/bin/../lib/classes.zip]
[Loaded java/awt/Event.class from /usr/local/java/bin/../lib/classes.zip]
[Loaded java/awt/event/FocusEvent.class from /usr/local/java/bin/../lib/classes.
zip]
[Loaded java/awt/event/WindowEvent.class from /usr/local/java/bin/../lib/classes
.zip]
[Loaded sun/awt/AWTFinalizer.class from /usr/local/java/bin/../lib/classes.zip]
script done on Thu Oct 09 12:02:28 1997
-----------
We've had reports but have not confirmed that people using PCXware are
experiencing similar problems
-----------
We have seen similar problems with MacX.
Rather than hang it segmentation faults.
Below is the output
Script started on Thu Oct 09 11:34:38 1997
romulus> appletviewer /usr/local/java/demo/Fractal/example1.html
SIGSEGV 11* segmentation violation
si_signo [11]: SIGSEGV 11* segmentation violation
si_errno [0]: Error 0
si_code [1]: SEGV_ACCERR [addr: 0x14]
stackbase=EFFFF978, stackpointer=EFFFE558
Full thread dump:
"AWT-Motif" (TID:0xee70dfb0, sys_thread_t:0xedf91de0, state:MW) prio=5
java.lang.Thread.run(Thread.java)
"AWT-Input" (TID:0xee70df90, sys_thread_t:0xedfc1de0, state:CW) prio=5
"AWT-EventQueue-0" (TID:0xee70df78, sys_thread_t:0xedff1de0, state:CW) prio=
5
java.lang.Object.wait(Object.java)
java.awt.EventQueue.getNextEvent(EventQueue.java:118)
java.awt.EventDispatchThread.run(EventDispatchThread.java:55)
"thread applet-CLSFractal.class" (TID:0xee70d208, sys_thread_t:0xee291de0, s
tate:CW) prio=4
java.lang.Object.wait(Object.java)
sun.applet.AppletPanel.getNextEvent(AppletPanel.java:220)
sun.applet.AppletPanel.run(AppletPanel.java:244)
java.lang.Thread.run(Thread.java)
"Finalizer thread" (TID:0xee700220, sys_thread_t:0xee2c1de0, state:CW) prio=
1
"Async Garbage Collector" (TID:0xee7001d8, sys_thread_t:0xee2f1de0, state:CW
) prio=1
"Idle thread" (TID:0xee700190, sys_thread_t:0xee3c1de0, state:R) prio=0
"Clock" (TID:0xee7000d0, sys_thread_t:0xee3f1de0, state:CW) prio=12
"main" (TID:0xee7000a8, sys_thread_t:0x40e20, state:R) prio=5 *current threa
d*
sun.awt.motif.MFramePeer.<init>(MFramePeer.java:59)
sun.awt.motif.MToolkit.createFrame(MToolkit.java:120)
java.awt.Frame.addNotify(Frame.java:139)
java.awt.Window.pack(Window.java:113)
sun.applet.AppletViewer.<init>(AppletViewer.java:202)
sun.applet.StdAppletViewerFactory.createAppletViewer(AppletViewer.java:8
7)
sun.applet.AppletViewer.parse(AppletViewer.java:934)
sun.applet.AppletViewer.parse(AppletViewer.java:900)
sun.applet.AppletViewer.main(AppletViewer.java:1077)
Monitor Cache Dump:
<unknown key> (0xee2f1de0): <unowned>
Waiting to be notifie
"Async Garbage Collector"
java.awt.EventQueue@EE70DF28/EE783E38: <unowned>
Waiting to be notified:
"AWT-EventQueue-0"
sun.applet.AppletViewerPanel@EE70CF10/EE77F1D0: <unowned>
Waiting to be notified:
"thread applet-CLSFractal.class"
sun.awt.motif.MToolkit@EE70DEF8/EE783D48: owner "main" (0x40e20, 1 entry)
Waiting to enter:
"AWT-Motif"
Waiting to be notified:
"AWT-Input"
Registered Monitor Dump:
Thread queue lock: <unowned>
Name and type hash table lock: <unowned>
String intern lock: <unowned>
JNI pinning lock: <unowned>
JNI global reference lock: <unowned>
BinClass lock: <unowned>
Class loading lock: <unowned>
Java stack lock: <unowned>
Code rewrite lock: <unowned>
Heap lock: <unowned>
Has finalization queue lock: <unowned>
Finalize me queue lock: <unowned>
Waiting to be notified:
"Finalizer thread"
Monitor IO lock: <unowned>
Child death monitor: <unowned>
Event monitor: <unowned>
I/O monitor: <unowned>
Alarm monitor: <unowned>
Waiting to be notified:
"Clock"
Sbrk lock: <unowned>
Monitor cache expansion lock: <unowned>
Monitor registry: owner "main" (0x40e20, 1 entry)
Thread Alarm Q:
sys_thread_t 0xee2f1de0 [Timeout in 313 ms]
Abort
romulus> exit
script done on Thu Oct 09 11:35:06 1997
======================================================================
Problem
Window never appears on NCD Xterm when trying to run the following script.
Sequence of events:
1. run program
2. I get all the output listed below from the xmon program
3. Thread dump occurs
4. the window never appears on the gui
5. I do a cntl-c to kill the process and get back my command prompt
----------------------------------------------------------------------------------------------
lumber3 (hare) [51] % ls
Howdy.class Howdy.java
lumber3 (hare) [52] % cat Howdy.java
import java.awt.*;
public class Howdy {
public Howdy() {
Frame f = new Frame();
Label l = new Label("Howdy Partner!");
f.add(l);
f.pack();
f.show();
}
public static void main(String s[]) {
Howdy h = new Howdy();
}
}
lumber3 (hare) [53] %
----------------------------------------------------------------------------------------------
lumber3 (hare) [50] % !java
java Howdy
java.lang.ArrayIndexOutOfBoundsException: 0
at sun.java2d.SunGraphicsEnvironment.getAllFonts(SunGraphicsEnvironment.java:121)
at sun.java2d.SunGraphicsEnvironment.getFont(SunGraphicsEnvironment.java:161)
at java.awt.Font.initializeFont(Font.java:240)
at java.awt.Font.<init>(Font.java:263)
at sun.awt.motif.MFramePeer.<init>(MFramePeer.java:120)
at sun.awt.motif.MToolkit.createFrame(MToolkit.java:126)
at java.awt.Frame.addNotify(Frame.java:169)
at java.awt.Window.pack(Window.java:145)
at Howdy.<init>(Howdy.java:11)
at Howdy.main(Howdy.java:17)
^C
lumber3 (hare) [51] %
----------------------------------------------------------------------------------------------
Info from NCD Xterm "Messages" window
%XSERVER-I-NEWCLIENT, host "136.182.4.1" connected with blank authorization
%XSERVER-W-NOEXTENSION, client attempted to use non-existent extension "BIG-REQUESTS"
%XSERVER-W-NOEXTENSION, client attempted to use non-existent extension "SolarisIA"
----------------------------------------------------------------------------------------------
The following is only the very last part of the dump from
xmon that shows the xprotocol messages just before
the thread dump.
I am able to get this same example program to succeed
by running it from another solaris machine.
I have complete xmon dumps for both the successfull case
and failure case but they're quite large.
Email ###@###.### and ask for them if you
what to see them.
............REQUEST: AllocColor
sequence number: 542
request length: 0004
cmap: CMP 00000021
red: c48b
green: d784
blue: ffff
..............REPLY: AllocColor
sequence number: 021e
reply length: 00000000
red: c4c4
green: d7d7
blue: ffff
pixel: 000000f6
............REQUEST: AllocColor
sequence number: 543
request length: 0004
cmap: CMP 00000021
red: 3ef2
green: 57cb
blue: 8ccd
..............REPLY: AllocColor
sequence number: 021f
reply length: 00000000
red: 3e3e
green: 5757
blue: 8c8c
pixel: 000000f7
............REQUEST: CreateGC
sequence number: 544
request length: 0005
graphic-context-id: GXC 04c0000a
drawable: DWB 00000029
value-mask: foreground
value-list:
foreground: 000000f5
............REQUEST: CreateGC
sequence number: 545
request length: 0005
graphic-context-id: GXC 04c0000b
drawable: DWB 00000029
value-mask: foreground
value-list:
foreground: 000000f6
............REQUEST: CreateGC
sequence number: 546
request length: 0005
graphic-context-id: GXC 04c0000c
drawable: DWB 00000029
value-mask: foreground
value-list:
foreground: 000000f7
............REQUEST: CreateGC
sequence number: 547
request length: 0006
graphic-context-id: GXC 04c0000d
drawable: DWB 00000029
value-mask: foreground | background
value-list:
foreground: 00000001
background: 000000f5
............REQUEST: GetProperty
sequence number: 548
delete: False
request length: 0006
window: WIN 00000029
property: ATM 000000da
type: ATM 000000da
long-offset: 00000000
long-length: 00000002
..............REPLY: GetProperty
format: 00
sequence number: 0224
reply length: 00000000
type: <NONE>
bytes-after: 00000000
length of value: 00000000
............REQUEST: InternAtom
sequence number: 549
only-if-exists: False
request length: 0006
length of name: 000d
name: "COMPOUND_TEXT"
..............REPLY: InternAtom
sequence number: 0225
reply length: 00000000
atom: ATM 000000e0 <COMPOUND_TEXT>
----------> Thread dump occurs here!!!!!!!!
=======================
Setup:
+--------+ +--------+ +-----------+
| Solaris| | SunOS | | NCD Xterm |
| beaver | | turtle | | russia185 |
| | | | | |
+---+----+ +---+----+ +-----+-----+
| | |
o--+-----------+-------------+-----o
If I run the "Howdy" program (see below) on the
Solaris machine and display it on the Xterm, it just
hangs.
However, if I load up an application that uses up most/all
of the colormap, the program works. It give this error
however just before the screen pops up:
beaver (hare) [21] % java Howdy
Warning:
Cannot allocate colormap entry for default background
The program I used to fill up the colormap was netscape.
The program only runs if netscape is up running first.
If I start netscape w/ the "-install" option, the "Howdy"
program just hangs.
The netscape program is being run from the SunOS machine.
Here's the program I was trying:
------------------------------------------------
import java.awt.*;
public class Howdy {
public Howdy() {
Frame f = new Frame();
Label l = new Label("Howdy Partner!");
f.add(l);
f.pack();
f.show();
}
public static void main(String s[]) {
Howdy h = new Howdy();
}
}
Name: joT67522 Date: 10/10/97
Enviornment:
FileServer: SunOS romulus.rutgers.edu 5.5.1 Generic_103640-12 sun4u sparc
Java version: JDK 1.1.3 & JDK 1.1.4
Workstation: NCD Xterm
Window manager: /usr/openwin/bin/twm
(it appears under the JDK 1.1.3 in solaris 2.6 as well)
(small tests with JDK 1.1.4 show the same behavior)
Overview:
Under certain conditions, Java programs with GUI can be made to
reproducably hang.
Impact:
CS111, a course of about 500 students, is being taught in Java
this semester. Students whose enviornment meets the conditions
below will be unable to run any Java program that contains GUI.
Conditions:
When on the right kind of terminal (NCD Xterminal) using the right
kind of window manager (tvtwm, twm) and while not running any other
interesting programs (netscape). Java containing GUI can be made to
reproducably hang.
Reproduce:
/usr/local/java/bin/appletviewer /usr/local/java/demo/Fractal/example1.html
Other information:
1) This only appears to happen on NCD Xterms. Running the
same program on a UNIX box even if it is an xterm should work.
2) This problem only appears to happen with the tvtwm, and twm
window managers (including /usr/openwin/bin/twm). Running a
window manager such as fvwm fixes the problem.
3) If netscape is running when the command is issued, it works
regardless of window manager or terminal.
#3 is probably the best clue as to what is going on, perhaps java is
not initializing some resource that it needs to.
DETAILS:
Appletview does not appear to have the "-v" option that java does.
This is the output of a simple java program that uses GUI that hangs
in the same way appletview does.
Script started on Thu Oct 09 11:59:45 1997
romulus> java -v MyGeometry Assignment_2.data
[Loaded java/lang/Thread.class from /usr/local/java/bin/../lib/classes.zip]
[Loaded java/lang/Object.class from /usr/local/java/bin/../lib/classes.zip]
[Loaded java/lang/Class.class from /usr/local/java/bin/../lib/classes.zip]
[Loaded java/lang/String.class from /usr/local/java/bin/../lib/classes.zip]
[Loaded java/io/Serializable.class from /usr/local/java/bin/../lib/classes.zip]
[Loaded java/lang/ThreadDeath.class from /usr/local/java/bin/../lib/classes.zip]
[Loaded java/lang/Error.class from /usr/local/java/bin/../lib/classes.zip]
[Loaded java/lang/Throwable.class from /usr/local/java/bin/../lib/classes.zip]
[Loaded java/lang/Exception.class from /usr/local/java/bin/../lib/classes.zip]
[Loaded java/lang/RuntimeException.class from /usr/local/java/bin/../lib/classes
.zip]
[Loaded java/lang/Cloneable.class from /usr/local/java/bin/../lib/classes.zip]
[Loaded java/lang/Runnable.class from /usr/local/java/bin/../lib/classes.zip]
[Loaded java/lang/ThreadGroup.class from /usr/local/java/bin/../lib/classes.zip]
[Loaded java/lang/StringBuffer.class from /usr/local/java/bin/../lib/classes.zip
]
[Loaded java/lang/System.class from /usr/local/java/bin/../lib/classes.zip]
[Loaded java/lang/Integer.class from /usr/local/java/bin/../lib/classes.zip]
[Loaded java/lang/Number.class from /usr/local/java/bin/../lib/classes.zip]
[Loaded java/lang/Character.class from /usr/local/java/bin/../lib/classes.zip]
[Loaded java/lang/NoClassDefFoundError.class from /usr/local/java/bin/../lib/cla
sses.zip]
[Loaded java/lang/LinkageError.class from /usr/local/java/bin/../lib/classes.zip
]
[Loaded java/lang/OutOfMemoryError.class from /usr/local/java/bin/../lib/classes
.zip]
[Loaded java/lang/VirtualMachineError.class from /usr/local/java/bin/../lib/clas
ses.zip]
[Loaded java/util/Properties.class from /usr/local/java/bin/../lib/classes.zip]
[Loaded java/util/Hashtable.class from /usr/local/java/bin/../lib/classes.zip]
[Loaded java/util/Dictionary.class from /usr/local/java/bin/../lib/classes.zip]
[Loaded java/util/HashtableEntry.class from /usr/local/java/bin/../lib/classes.z
ip]
[Loaded java/io/FileInputStream.class from /usr/local/java/bin/../lib/classes.zi
p]
[Loaded java/io/InputStream.class from /usr/local/java/bin/../lib/classes.zip]
[Loaded java/io/FileDescriptor.class from /usr/local/java/bin/../lib/classes.zip
]
[Loaded java/io/FileOutputStream.class from /usr/local/java/bin/../lib/classes.z
ip]
[Loaded java/io/OutputStream.class from /usr/local/java/bin/../lib/classes.zip]
[Loaded java/io/BufferedInputStream.class from /usr/local/java/bin/../lib/classe
s.zip]
[Loaded java/io/FilterInputStream.class from /usr/local/java/bin/../lib/classes.
zip]
[Loaded java/io/PrintStream.class from /usr/local/java/bin/../lib/classes.zip]
[Loaded java/io/FilterOutputStream.class from /usr/local/java/bin/../lib/classes
.zip]
[Loaded java/io/BufferedOutputStream.class from /usr/local/java/bin/../lib/class
es.zip]
[Loaded java/io/OutputStreamWriter.class from /usr/local/java/bin/../lib/classes
.zip]
[Loaded java/io/Writer.class from /usr/local/java/bin/../lib/classes.zip]
[Loaded sun/io/CharToByteConverter.class from /usr/local/java/bin/../lib/classes
.zip]
[Loaded sun/io/CharacterEncoding.class from /usr/local/java/bin/../lib/classes.z
ip]
[Loaded java/util/Locale.class from /usr/local/java/bin/../lib/classes.zip]
[Loaded sun/io/CharToByte8859_1.class from /usr/local/java/bin/../lib/classes.zi
p]
[Loaded java/io/BufferedWriter.class from /usr/local/java/bin/../lib/classes.zip
]
[Loaded java/lang/Compiler.class from /usr/local/java/bin/../lib/classes.zip]
[Loaded ./MyGeometry.class]
[Loaded /usr/local/class/cs111/packages/classes/cs111/Geometry/Screen.class]
[Loaded java/awt/Frame.class from /usr/local/java/bin/../lib/classes.zip]
[Loaded java/awt/Window.class from /usr/local/java/bin/../lib/classes.zip]
[Loaded java/awt/Container.class from /usr/local/java/bin/../lib/classes.zip]
[Loaded java/awt/Component.class from /usr/local/java/bin/../lib/classes.zip]
[Loaded java/awt/image/ImageObserver.class from /usr/local/java/bin/../lib/class
es.zip]
[Loaded java/awt/MenuContainer.class from /usr/local/java/bin/../lib/classes.zip
]
[Loaded java/awt/Font.class from /usr/local/java/bin/../lib/classes.zip]
[Loaded java/awt/Toolkit.class from /usr/local/java/bin/../lib/classes.zip]
[Loaded java/io/File.class from /usr/local/java/bin/../lib/classes.zip]
[Loaded java/lang/Runtime.class from /usr/local/java/bin/../lib/classes.zip]
[Loaded sun/awt/motif/MToolkit.class from /usr/local/java/bin/../lib/classes.zip
]
[Loaded sun/awt/SunToolkit.class from /usr/local/java/bin/../lib/classes.zip]
[Loaded java/awt/EventQueue.class from /usr/local/java/bin/../lib/classes.zip]
[Loaded java/awt/EventDispatchThread.class from /usr/local/java/bin/../lib/class
es.zip]
<----------------------------------------------------------------------------->
<----------------------------------------------------------------------------->
This appears to be the point at which it hangs indefinetly.
The output below this point was obtained by running the program with
the fvwm window manager.
<----------------------------------------------------------------------------->
<----------------------------------------------------------------------------->
[Loaded sun/awt/motif/InputThread.class from /usr/local/java/bin/../lib/classes.
zip]
[Loaded sun/awt/motif/MFontPeer.class from /usr/local/java/bin/../lib/classes.zi
p]
[Loaded sun/awt/PlatformFont.class from /usr/local/java/bin/../lib/classes.zip]
[Loaded java/awt/peer/FontPeer.class from /usr/local/java/bin/../lib/classes.zip
]
[Loaded java/util/Vector.class from /usr/local/java/bin/../lib/classes.zip]
[Loaded java/lang/ClassNotFoundException.class from /usr/local/java/bin/../lib/c
lasses.zip]
[Loaded sun/awt/FontDescriptor.class from /usr/local/java/bin/../lib/classes.zip
]
[Loaded java/awt/Cursor.class from /usr/local/java/bin/../lib/classes.zip]
[Loaded java/awt/FocusManager.class from /usr/local/java/bin/../lib/classes.zip]
[Loaded java/awt/BorderLayout.class from /usr/local/java/bin/../lib/classes.zip]
[Loaded java/awt/LayoutManager2.class from /usr/local/java/bin/../lib/classes.zi
p]
[Loaded java/awt/LayoutManager.class from /usr/local/java/bin/../lib/classes.zip
]
[Loaded java/awt/peer/FramePeer.class from /usr/local/java/bin/../lib/classes.zi
p]
[Loaded java/awt/peer/WindowPeer.class from /usr/local/java/bin/../lib/classes.z
ip]
[Loaded java/awt/peer/ContainerPeer.class from /usr/local/java/bin/../lib/classe
s.zip]
[Loaded java/awt/peer/ComponentPeer.class from /usr/local/java/bin/../lib/classe
s.zip]
[Loaded sun/awt/motif/MFramePeer.class from /usr/local/java/bin/../lib/classes.z
ip]
[Loaded sun/awt/motif/MPanelPeer.class from /usr/local/java/bin/../lib/classes.z
ip]
[Loaded sun/awt/motif/MCanvasPeer.class from /usr/local/java/bin/../lib/classes.
zip]
[Loaded sun/awt/motif/MComponentPeer.class from /usr/local/java/bin/../lib/class
es.zip]
[Loaded sun/awt/UpdateClient.class from /usr/local/java/bin/../lib/classes.zip]
[Loaded java/awt/peer/CanvasPeer.class from /usr/local/java/bin/../lib/classes.z
ip]
[Loaded sun/awt/DrawingSurface.class from /usr/local/java/bin/../lib/classes.zip
]
[Loaded java/awt/peer/PanelPeer.class from /usr/local/java/bin/../lib/classes.zi
p]
[Loaded java/awt/Insets.class from /usr/local/java/bin/../lib/classes.zip]
[Loaded sun/awt/EmbeddedFrame.class from /usr/local/java/bin/../lib/classes.zip]
[Loaded java/awt/Rectangle.class from /usr/local/java/bin/../lib/classes.zip]
[Loaded java/awt/Shape.class from /usr/local/java/bin/../lib/classes.zip]
[Loaded sun/awt/motif/CharToByteX11Dingbats.class from /usr/local/java/bin/../li
b/classes.zip]
[Loaded sun/awt/CharToByteSymbol.class from /usr/local/java/bin/../lib/classes.z
ip]
[Loaded java/awt/Color.class from /usr/local/java/bin/../lib/classes.zip]
[Loaded java/awt/peer/LightweightPeer.class from /usr/local/java/bin/../lib/clas
ses.zip]
[Loaded java/awt/LightweightDispatcher.class from /usr/local/java/bin/../lib/cla
sses.zip]
[Loaded sun/awt/motif/X11Graphics.class from /usr/local/java/bin/../lib/classes.
zip]
[Loaded java/awt/Graphics.class from /usr/local/java/bin/../lib/classes.zip]
[Loaded sun/awt/AWTFinalizeable.class from /usr/local/java/bin/../lib/classes.zi
p]
[Loaded java/awt/Dimension.class from /usr/local/java/bin/../lib/classes.zip]
[Loaded sun/awt/motif/X11FontMetrics.class from /usr/local/java/bin/../lib/class
es.zip]
[Loaded java/awt/FontMetrics.class from /usr/local/java/bin/../lib/classes.zip]
[Loaded sun/awt/CharsetString.class from /usr/local/java/bin/../lib/classes.zip]
[Loaded java/awt/event/ComponentEvent.class from /usr/local/java/bin/../lib/clas
ses.zip]
[Loaded java/awt/AWTEvent.class from /usr/local/java/bin/../lib/classes.zip]
[Loaded java/util/EventObject.class from /usr/local/java/bin/../lib/classes.zip]
[Loaded java/awt/EventQueueItem.class from /usr/local/java/bin/../lib/classes.zi
p]
[Loaded /usr/local/class/cs111/packages/classes/cs111/Geometry/Stream.class]
[Loaded sun/awt/ScreenUpdater.class from /usr/local/java/bin/../lib/classes.zip]
[Loaded java/io/BufferedReader.class from /usr/local/java/bin/../lib/classes.zip
]
[Loaded java/io/Reader.class from /usr/local/java/bin/../lib/classes.zip]
[Loaded java/io/InputStreamReader.class from /usr/local/java/bin/../lib/classes.
zip]
[Loaded sun/io/ByteToCharConverter.class from /usr/local/java/bin/../lib/classes
.zip]
[Loaded sun/io/ByteToChar8859_1.class from /usr/local/java/bin/../lib/classes.zi
p]
[Loaded ./MyPoint.class]
[Loaded /usr/local/class/cs111/packages/classes/cs111/Geometry/Point.class]
[Loaded java/lang/NoSuchMethodError.class from /usr/local/java/bin/../lib/classe
s.zip]
[Loaded java/lang/IncompatibleClassChangeError.class from /usr/local/java/bin/..
/lib/classes.zip]
java.lang.NoSuchMethodError: cs111.Geometry.Stream: method readPoint()Lcs111/Geo
metry/Point; not found
at MyGeometry.main(MyGeometry.java:24)
[Loaded sun/awt/ScreenUpdaterEntry.class from /usr/local/java/bin/../lib/classes
.zip]
[Loaded java/awt/event/MouseEvent.class from /usr/local/java/bin/../lib/classes.
zip]
[Loaded java/awt/event/InputEvent.class from /usr/local/java/bin/../lib/classes.
zip]
[Loaded java/awt/event/KeyEvent.class from /usr/local/java/bin/../lib/classes.zi
p]
[Loaded java/awt/event/PaintEvent.class from /usr/local/java/bin/../lib/classes.
zip]
[Loaded java/awt/Point.class from /usr/local/java/bin/../lib/classes.zip]
[Loaded java/awt/Event.class from /usr/local/java/bin/../lib/classes.zip]
[Loaded java/awt/event/FocusEvent.class from /usr/local/java/bin/../lib/classes.
zip]
[Loaded java/awt/event/WindowEvent.class from /usr/local/java/bin/../lib/classes
.zip]
[Loaded sun/awt/AWTFinalizer.class from /usr/local/java/bin/../lib/classes.zip]
script done on Thu Oct 09 12:02:28 1997
-----------
We've had reports but have not confirmed that people using PCXware are
experiencing similar problems
-----------
We have seen similar problems with MacX.
Rather than hang it segmentation faults.
Below is the output
Script started on Thu Oct 09 11:34:38 1997
romulus> appletviewer /usr/local/java/demo/Fractal/example1.html
SIGSEGV 11* segmentation violation
si_signo [11]: SIGSEGV 11* segmentation violation
si_errno [0]: Error 0
si_code [1]: SEGV_ACCERR [addr: 0x14]
stackbase=EFFFF978, stackpointer=EFFFE558
Full thread dump:
"AWT-Motif" (TID:0xee70dfb0, sys_thread_t:0xedf91de0, state:MW) prio=5
java.lang.Thread.run(Thread.java)
"AWT-Input" (TID:0xee70df90, sys_thread_t:0xedfc1de0, state:CW) prio=5
"AWT-EventQueue-0" (TID:0xee70df78, sys_thread_t:0xedff1de0, state:CW) prio=
5
java.lang.Object.wait(Object.java)
java.awt.EventQueue.getNextEvent(EventQueue.java:118)
java.awt.EventDispatchThread.run(EventDispatchThread.java:55)
"thread applet-CLSFractal.class" (TID:0xee70d208, sys_thread_t:0xee291de0, s
tate:CW) prio=4
java.lang.Object.wait(Object.java)
sun.applet.AppletPanel.getNextEvent(AppletPanel.java:220)
sun.applet.AppletPanel.run(AppletPanel.java:244)
java.lang.Thread.run(Thread.java)
"Finalizer thread" (TID:0xee700220, sys_thread_t:0xee2c1de0, state:CW) prio=
1
"Async Garbage Collector" (TID:0xee7001d8, sys_thread_t:0xee2f1de0, state:CW
) prio=1
"Idle thread" (TID:0xee700190, sys_thread_t:0xee3c1de0, state:R) prio=0
"Clock" (TID:0xee7000d0, sys_thread_t:0xee3f1de0, state:CW) prio=12
"main" (TID:0xee7000a8, sys_thread_t:0x40e20, state:R) prio=5 *current threa
d*
sun.awt.motif.MFramePeer.<init>(MFramePeer.java:59)
sun.awt.motif.MToolkit.createFrame(MToolkit.java:120)
java.awt.Frame.addNotify(Frame.java:139)
java.awt.Window.pack(Window.java:113)
sun.applet.AppletViewer.<init>(AppletViewer.java:202)
sun.applet.StdAppletViewerFactory.createAppletViewer(AppletViewer.java:8
7)
sun.applet.AppletViewer.parse(AppletViewer.java:934)
sun.applet.AppletViewer.parse(AppletViewer.java:900)
sun.applet.AppletViewer.main(AppletViewer.java:1077)
Monitor Cache Dump:
<unknown key> (0xee2f1de0): <unowned>
Waiting to be notifie
- duplicates
-
JDK-4068604 JDK problems when display set to NCD terminal, or other non-standard X server
-
- Closed
-