Mailing list - Entries of 2006


[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

[qftestJUI] Apparent deadlock with Qftest and SUT


  • Subject: [qftestJUI] Apparent deadlock with Qftest and SUT
  • From: "Paul Bindels" <paul.bindels@?.com>
  • Date: Mon, 13 Mar 2006 16:56:57 -0800

We have encountered a problem when we run our product using the Qftest
application. When we attempt a delete action manually through Qftest the SUT
GUI freezes. When we perform the same action not under Qftest it works fine.
If we attempt to record this same action in Qftest, both the SUT and the
Qftest application freeze up (I then kill the SUT window and Qftest responds
with "Nothing recorded").

In an attempt to debug the problem we opened the terminal window of the
product client in Qftest and attempted to enter a "ctrl-|" ( control pipe)
to see the thread status. It does not respond ( even though we did not
launch the SUT in the background with "&" ) with the thread status as can be
seen when starting from a regular terminal client.

Have you seen this type of behavior before (SUT/Qft freezing)?

Is there a way we can see if there is a deadlock when running within Qftest?


Can we interact with the terminal session once it is started?

Can jconsole be used to debug this? If so are there any tricks to launching
it within FTSE?


Here is the response in the product using ctrl-| (when not run under qftest)
just prior to pressing the OK button (to the dialog box which performs the
delete action) causing the gui to freeze:

Thank you,
Paul

^\Full thread dump Java HotSpot(TM) Server VM (1.5.0_01-b08 mixed mode):

"pool-1-thread-4" prio=10 tid=0x0043e9f8 nid=0x5e waiting on condition
[0xb20ff000..0xb20ffb10]
        at sun.misc.Unsafe.park(Native Method)
        at java.util.concurrent.locks.LockSupport.park(LockSupport.java:118)
        at
java.util.concurrent.locks.AbstractQueuedSynchronizer$ConditionObject.await(
AbstractQueuedSynchronizer.java:1772)
        at
java.util.concurrent.LinkedBlockingQueue.take(LinkedBlockingQueue.java:359)
        at
java.util.concurrent.ThreadPoolExecutor.getTask(ThreadPoolExecutor.java:470)
        at
java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:6
74)
        at java.lang.Thread.run(Thread.java:595)

"pool-1-thread-3" prio=10 tid=0x00facd98 nid=0x5d waiting on condition
[0xb28ff000..0xb28ffa90]
        at sun.misc.Unsafe.park(Native Method)
        at java.util.concurrent.locks.LockSupport.park(LockSupport.java:118)
        at
java.util.concurrent.locks.AbstractQueuedSynchronizer$ConditionObject.await(
AbstractQueuedSynchronizer.java:1772)
        at
java.util.concurrent.LinkedBlockingQueue.take(LinkedBlockingQueue.java:359)
        at
java.util.concurrent.ThreadPoolExecutor.getTask(ThreadPoolExecutor.java:470)
        at
java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:6
74)
        at java.lang.Thread.run(Thread.java:595)

"RMI ConnectionExpiration-[10.128.1.233:49111]" daemon prio=10
tid=0x0043d1e0 nid=0x5c waiting on condition [0xb21ff000..0xb21ffa10]
        at java.lang.Thread.sleep(Native Method)
        at sun.rmi.transport.tcp.TCPChannel$Reaper.run(TCPChannel.java:447)
        at java.lang.Thread.run(Thread.java:595)

"pool-1-thread-2" prio=10 tid=0x0136e620 nid=0x2d waiting on condition
[0xb2bff000..0xb2bffa90]
        at sun.misc.Unsafe.park(Native Method)
        at java.util.concurrent.locks.LockSupport.park(LockSupport.java:118)
        at
java.util.concurrent.locks.AbstractQueuedSynchronizer$ConditionObject.await(
AbstractQueuedSynchronizer.java:1772)
        at
java.util.concurrent.LinkedBlockingQueue.take(LinkedBlockingQueue.java:359)
        at
java.util.concurrent.ThreadPoolExecutor.getTask(ThreadPoolExecutor.java:470)
        at
java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:6
74)
        at java.lang.Thread.run(Thread.java:595)

"pool-1-thread-1" prio=10 tid=0x0059ad60 nid=0x2c waiting on condition
[0xb2cff000..0xb2cffa10]
        at sun.misc.Unsafe.park(Native Method)
        at java.util.concurrent.locks.LockSupport.park(LockSupport.java:118)
        at
java.util.concurrent.locks.AbstractQueuedSynchronizer$ConditionObject.await(
AbstractQueuedSynchronizer.java:1772)
        at
java.util.concurrent.LinkedBlockingQueue.take(LinkedBlockingQueue.java:359)
        at
java.util.concurrent.ThreadPoolExecutor.getTask(ThreadPoolExecutor.java:470)
        at
java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:6
74)
        at java.lang.Thread.run(Thread.java:595)

"DestroyJavaVM" prio=10 tid=0x00038960 nid=0x1 waiting on condition
[0x00000000..0xffbede90]

"Model-EventDispatcher" prio=10 tid=0x00f22470 nid=0x23 waiting on condition
[0xb22ff000..0xb22ff990]
        at java.lang.Thread.sleep(Native Method)
        at
com.alcatel.ams.platform.client.model.EventDispatcher$1.run(EventDispatcher.
java:81)

"ConnectorKeepAlive" prio=10 tid=0x00fb0190 nid=0x22 waiting on condition
[0xb23ff000..0xb23ff910]
        at java.lang.Thread.sleep(Native Method)
        at
com.alcatel.ams.platform.client.connector.KeepAliveThread.run(JMXRMIConnecto
rImpl.java:831)
        at java.lang.Thread.run(Thread.java:595)

"ConnectorEventMediation" prio=10 tid=0x00457798 nid=0x21 waiting on
condition [0xb24ff000..0xb24ffc90]
        at sun.misc.Unsafe.park(Native Method)
        at java.util.concurrent.locks.LockSupport.park(LockSupport.java:118)
        at
java.util.concurrent.locks.AbstractQueuedSynchronizer$ConditionObject.await(
AbstractQueuedSynchronizer.java:1772)
        at
java.util.concurrent.LinkedBlockingQueue.take(LinkedBlockingQueue.java:359)
        at
com.alcatel.ams.platform.client.connector.EventMediator.run(EventMediator.ja
va:93)
        at java.lang.Thread.run(Thread.java:595)

"Thread-4" daemon prio=10 tid=0x0043cf98 nid=0x20 runnable
[0xb25ff000..0xb25ffc10]
        at java.net.SocketInputStream.socketRead0(Native Method)
        at java.net.SocketInputStream.read(SocketInputStream.java:129)
        at java.io.BufferedInputStream.fill(BufferedInputStream.java:218)
        at java.io.BufferedInputStream.read(BufferedInputStream.java:235)
        - locked <0xb9798228> (a java.io.BufferedInputStream)
        at java.io.DataInputStream.readByte(DataInputStream.java:241)
        at
sun.rmi.transport.StreamRemoteCall.executeCall(StreamRemoteCall.java:189)
        at sun.rmi.server.UnicastRef.invoke(UnicastRef.java:126)
        at com.sun.jmx.remote.internal.PRef.invoke(Unknown Source)
        at
javax.management.remote.rmi.RMIConnectionImpl_Stub.fetchNotifications(Unknow
n Source)
        at
javax.management.remote.rmi.RMIConnector$RMINotifClient.fetchNotifs(RMIConne
ctor.java:1282)
        at
com.sun.jmx.remote.internal.ClientNotifForwarder$NotifFetcher.fetchNotifs(Cl
ientNotifForwarder.java:420)
        at
com.sun.jmx.remote.internal.ClientNotifForwarder$NotifFetcher.run(ClientNoti
fForwarder.java:318)
        at java.lang.Thread.run(Thread.java:595)

"Thread-3" daemon prio=10 tid=0x00c188a8 nid=0x1f waiting on condition
[0xb26ff000..0xb26ffb90]
        at java.lang.Thread.sleep(Native Method)
        at
com.sun.jmx.remote.internal.ClientCommunicatorAdmin$Checker.run(ClientCommun
icatorAdmin.java:154)
        at java.lang.Thread.run(Thread.java:595)

"Timer-1" daemon prio=10 tid=0x00c0ef50 nid=0x1e in Object.wait()
[0xb27ff000..0xb27ffb10]
        at java.lang.Object.wait(Native Method)
        - waiting on <0xb932c130> (a java.util.TaskQueue)
        at java.lang.Object.wait(Object.java:474)
        at java.util.TimerThread.mainLoop(Timer.java:483)
        - locked <0xb932c130> (a java.util.TaskQueue)
        at java.util.TimerThread.run(Timer.java:462)

"GC Daemon" daemon prio=2 tid=0x0029c500 nid=0x1c in Object.wait()
[0xb29ff000..0xb29ffa10]
        at java.lang.Object.wait(Native Method)
        - waiting on <0xb8c00070> (a sun.misc.GC$LatencyLock)
        at sun.misc.GC$Daemon.run(GC.java:100)
        - locked <0xb8c00070> (a sun.misc.GC$LatencyLock)

"RMI RenewClean-[10.128.1.233:49111]" daemon prio=10 tid=0x0036d598 nid=0x1b
in Object.wait() [0xb2aff000..0xb2aff990]
        at java.lang.Object.wait(Native Method)
        - waiting on <0xb8c0ab20> (a java.lang.ref.ReferenceQueue$Lock)
        at java.lang.ref.ReferenceQueue.remove(ReferenceQueue.java:116)
        - locked <0xb8c0ab20> (a java.lang.ref.ReferenceQueue$Lock)
        at
sun.rmi.transport.DGCClient$EndpointEntry$RenewCleanThread.run(DGCClient.jav
a:500)
        at java.lang.Thread.run(Thread.java:595)

"AWT-EventQueue-0" prio=10 tid=0x00342740 nid=0x18 in Object.wait()
[0xb2dff000..0xb2dffc10]
        at java.lang.Object.wait(Native Method)
        - waiting on <0xb8c10290> (a java.awt.EventQueue)
        at java.lang.Object.wait(Object.java:474)
        at java.awt.EventQueue.getNextEvent(EventQueue.java:345)
        - locked <0xb8c10290> (a java.awt.EventQueue)
        at
java.awt.EventDispatchThread.pumpOneEventForHierarchy(EventDispatchThread.ja
va:189)
        at
java.awt.EventDispatchThread.pumpEventsForHierarchy(EventDispatchThread.java
:163)
        at
java.awt.EventDispatchThread.pumpEventsForHierarchy(EventDispatchThread.java
:153)
        at java.awt.Dialog$1.run(Dialog.java:515)
        at java.awt.Dialog.show(Dialog.java:536)
        at java.awt.Component.show(Component.java:1300)
        at java.awt.Component.setVisible(Component.java:1253)
        at
com.alcatel.ams.platform.client.gui.action.DeleteDomainActionHandler.run(Del
eteDomainActionHandler.java:54)
        at
com.alcatel.ams.platform.client.gui.action.AbstractClientActionHandler.actio
nPerformed(AbstractClientActionHandler.java:91)
        at
com.alcatel.ams.platform.client.gui.action.ClientAction$1.run(ClientAction.j
ava:279)
        at java.awt.event.InvocationEvent.dispatch(InvocationEvent.java:209)
        at java.awt.EventQueue.dispatchEvent(EventQueue.java:461)
        at
java.awt.EventDispatchThread.pumpOneEventForHierarchy(EventDispatchThread.ja
va:234)
        at
java.awt.EventDispatchThread.pumpEventsForHierarchy(EventDispatchThread.java
:163)
        at
java.awt.EventDispatchThread.pumpEvents(EventDispatchThread.java:157)
        at
java.awt.EventDispatchThread.pumpEvents(EventDispatchThread.java:149)
        at java.awt.EventDispatchThread.run(EventDispatchThread.java:110)

"Timer-0" prio=10 tid=0x006f8248 nid=0x17 in Object.wait()
[0xb2eff000..0xb2effb90]
        at java.lang.Object.wait(Native Method)
        - waiting on <0xb8c10320> (a java.util.TaskQueue)
        at java.lang.Object.wait(Object.java:474)
        at java.util.TimerThread.mainLoop(Timer.java:483)
        - locked <0xb8c10320> (a java.util.TaskQueue)
        at java.util.TimerThread.run(Timer.java:462)

"AWT-Motif" daemon prio=10 tid=0x003416a8 nid=0x16 runnable
[0xb2fff000..0xb2fffb10]
        at sun.awt.motif.MToolkit.run(Native Method)
        at java.lang.Thread.run(Thread.java:595)

"AWT-Shutdown" prio=10 tid=0x00341188 nid=0x15 in Object.wait()
[0xb30ff000..0xb30ffa90]
        at java.lang.Object.wait(Native Method)
        - waiting on <0xb8c12a10> (a java.lang.Object)
        at java.lang.Object.wait(Object.java:474)
        at sun.awt.AWTAutoShutdown.run(AWTAutoShutdown.java:259)
        - locked <0xb8c12a10> (a java.lang.Object)
        at java.lang.Thread.run(Thread.java:595)

"Java2D Disposer" daemon prio=10 tid=0x0069da60 nid=0x14 in Object.wait()
[0xb31ff000..0xb31ffa10]
        at java.lang.Object.wait(Native Method)
        - waiting on <0xb8c1a240> (a java.lang.ref.ReferenceQueue$Lock)
        at java.lang.ref.ReferenceQueue.remove(ReferenceQueue.java:116)
        - locked <0xb8c1a240> (a java.lang.ref.ReferenceQueue$Lock)
        at java.lang.ref.ReferenceQueue.remove(ReferenceQueue.java:132)
        at sun.java2d.Disposer.run(Disposer.java:107)
        at java.lang.Thread.run(Thread.java:595)

"TimerQueue" daemon prio=10 tid=0x004c51e8 nid=0x13 in Object.wait()
[0xb337f000..0xb337f990]
        at java.lang.Object.wait(Native Method)
        - waiting on <0xb8c08098> (a javax.swing.TimerQueue)
        at javax.swing.TimerQueue.run(TimerQueue.java:233)
        - locked <0xb8c08098> (a javax.swing.TimerQueue)
        at java.lang.Thread.run(Thread.java:595)

"Low Memory Detector" daemon prio=10 tid=0x001965e0 nid=0x11 runnable
[0x00000000..0x00000000]

"CompilerThread1" daemon prio=10 tid=0x00195538 nid=0x10 waiting on
condition [0x00000000..0xb437ecc8]

"CompilerThread0" daemon prio=10 tid=0x001946d0 nid=0xf waiting on condition
[0x00000000..0xb447ec50]

"AdapterThread" daemon prio=10 tid=0x00193868 nid=0xe waiting on condition
[0x00000000..0x00000000]

"Signal Dispatcher" daemon prio=10 tid=0x00192af8 nid=0xd waiting on
condition [0x00000000..0x00000000]

"Finalizer" daemon prio=10 tid=0x00189318 nid=0xc in Object.wait()
[0xb477f000..0xb477fa10]
        at java.lang.Object.wait(Native Method)
        - waiting on <0xb8c13118> (a java.lang.ref.ReferenceQueue$Lock)
        at java.lang.ref.ReferenceQueue.remove(ReferenceQueue.java:116)
        - locked <0xb8c13118> (a java.lang.ref.ReferenceQueue$Lock)
        at java.lang.ref.ReferenceQueue.remove(ReferenceQueue.java:132)
        at java.lang.ref.Finalizer$FinalizerThread.run(Finalizer.java:159)

"Reference Handler" daemon prio=10 tid=0x001873d0 nid=0xb in Object.wait()
[0xb487f000..0xb487f990]
        at java.lang.Object.wait(Native Method)
        - waiting on <0xb8c00060> (a java.lang.ref.Reference$Lock)
        at java.lang.Object.wait(Object.java:474)
        at java.lang.ref.Reference$ReferenceHandler.run(Reference.java:116)
        - locked <0xb8c00060> (a java.lang.ref.Reference$Lock)

"VM Thread" prio=10 tid=0x00184b20 nid=0xa runnable 

"GC task thread#0 (ParallelGC)" prio=10 tid=0x001377f8 nid=0x2 runnable 

"GC task thread#1 (ParallelGC)" prio=10 tid=0x00137a38 nid=0x3 runnable 

"GC task thread#2 (ParallelGC)" prio=10 tid=0x00137c78 nid=0x4 runnable 

"GC task thread#3 (ParallelGC)" prio=10 tid=0x001382b8 nid=0x5 runnable 

"GC task thread#4 (ParallelGC)" prio=10 tid=0x00138cf8 nid=0x6 runnable 

"GC task thread#5 (ParallelGC)" prio=10 tid=0x00139738 nid=0x7 runnable 

"GC task thread#6 (ParallelGC)" prio=10 tid=0x0013a178 nid=0x8 runnable 

"GC task thread#7 (ParallelGC)" prio=10 tid=0x0013abb8 nid=0x9 runnable 

"VM Periodic Task Thread" prio=10 tid=0x00198268 nid=0x12 waiting on
condition 




Videos Downloads Documentation Buy Free Trial