Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Expand / Collapse all buttons #1

Closed
wants to merge 2,522 commits into from
Closed

Conversation

captrespect
Copy link

Here's some expand/collapse all buttons.

milamberspace and others added 30 commits November 27, 2010 13:13
git-svn-id: https://svn.apache.org/repos/asf/jakarta/jmeter/trunk@1039675 13f79535-47bb-0310-9956-ffa450edef68
git-svn-id: https://svn.apache.org/repos/asf/jakarta/jmeter/trunk@1039686 13f79535-47bb-0310-9956-ffa450edef68
git-svn-id: https://svn.apache.org/repos/asf/jakarta/jmeter/trunk@1040339 13f79535-47bb-0310-9956-ffa450edef68
git-svn-id: https://svn.apache.org/repos/asf/jakarta/jmeter/trunk@1040765 13f79535-47bb-0310-9956-ffa450edef68
git-svn-id: https://svn.apache.org/repos/asf/jakarta/jmeter/trunk@1041403 13f79535-47bb-0310-9956-ffa450edef68
TODO - update to non-beta version when available

git-svn-id: https://svn.apache.org/repos/asf/jakarta/jmeter/trunk@1041513 13f79535-47bb-0310-9956-ffa450edef68
sebbASF and others added 26 commits April 6, 2011 12:25
git-svn-id: https://svn.apache.org/repos/asf/jakarta/jmeter/trunk@1089702 13f79535-47bb-0310-9956-ffa450edef68
…mmons IO) View Results Tree - Add new size fields: response headers and response body (in bytes) - derived from Bug 43363 Size Assertion - Add response size scope (full, headers, body, code, message) - derived from Bug 43363

git-svn-id: https://svn.apache.org/repos/asf/jakarta/jmeter/trunk@1091965 13f79535-47bb-0310-9956-ffa450edef68
…s the header byte count - it can be larger if the socket returns a larger chunk - so calculate header size from the response headers.

git-svn-id: https://svn.apache.org/repos/asf/jakarta/jmeter/trunk@1095243 13f79535-47bb-0310-9956-ffa450edef68
…ault parameters, not an instance that is then abandoned!

git-svn-id: https://svn.apache.org/repos/asf/jakarta/jmeter/trunk@1095588 13f79535-47bb-0310-9956-ffa450edef68
@asfgit asfgit closed this in 0ccfd10 Feb 9, 2014
vlsi added a commit that referenced this pull request Sep 28, 2019
Here's a stacktrace:

"main" #1 prio=5 os_prio=0 tid=0x00007f507400c800 nid=0x33d2 runnable [0x00007f507aaa0000]
   java.lang.Thread.State: RUNNABLE
	at java.io.FileInputStream.readBytes(Native Method)
	at java.io.FileInputStream.read(FileInputStream.java:255)
	at sun.security.provider.NativePRNG$RandomIO.readFully(NativePRNG.java:424)
	at sun.security.provider.NativePRNG$RandomIO.implGenerateSeed(NativePRNG.java:441)
	- locked <0x00000000ffb11238> (a java.lang.Object)
	at sun.security.provider.NativePRNG$RandomIO.access$500(NativePRNG.java:331)
	at sun.security.provider.NativePRNG.engineGenerateSeed(NativePRNG.java:226)
	at java.security.SecureRandom.generateSeed(SecureRandom.java:533)
	at org.apache.jorphan.util.JOrphanUtils.<clinit>(JOrphanUtils.java:52)
	at org.apache.jmeter.util.JMeterUtils.loadJMeterProperties(JMeterUtils.java:213)
	at org.apache.jmeter.JMeter.initializeProperties(JMeter.java:788)
	at org.apache.jmeter.JMeter.start(JMeter.java:461)
	at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
	at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62)
	at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
	at java.lang.reflect.Method.invoke(Method.java:498)
	at org.apache.jmeter.NewDriver.main(NewDriver.java:253)
FSchumacher referenced this pull request in FSchumacher/jmeter Apr 29, 2023
When running locally, I observed the following deadlock:

"AWT-EventQueue-1" apache#23 prio=6 os_prio=0 tid=0x00007f3de9bf6800 nid=0x722b2 waiting for monitor entry [0x00007f3dcb4ee000]
   java.lang.Thread.State: BLOCKED (on object monitor)
	at java.awt.Component$AccessibleAWTComponent.getLocationOnScreen(Component.java:9494)
	- waiting to lock <0x00000000e0653ef0> (a java.awt.Component$AWTTreeLock)
	at javax.swing.JComponent$AccessibleJComponent.getLocationOnScreen(JComponent.java:3663)
	at javax.swing.text.JTextComponent$AccessibleJTextComponent.<init>(JTextComponent.java:2516)
	at javax.swing.JEditorPane$AccessibleJEditorPane.<init>(JEditorPane.java:1644)
	at javax.swing.JEditorPane$JEditorPaneAccessibleHypertextSupport.<init>(JEditorPane.java:1971)
	at javax.swing.JEditorPane$AccessibleJEditorPaneHTML.getAccessibleText(JEditorPane.java:1703)
	at org.GNOME.Accessibility.AtkObject.lambda$getTFlagFromObj$0(AtkObject.java:70)
	at org.GNOME.Accessibility.AtkObject$$Lambda$317/331870887.call(Unknown Source)
	at org.GNOME.Accessibility.AtkUtil.invokeInSwing(AtkUtil.java:58)
	at org.GNOME.Accessibility.AtkObject.getTFlagFromObj(AtkObject.java:55)
	at org.GNOME.Accessibility.AtkWrapper.boundsChanged(Native Method)
	at org.GNOME.Accessibility.AtkWrapper$3.componentResized(AtkWrapper.java:235)
	at java.awt.AWTEventMulticaster.componentResized(AWTEventMulticaster.java:159)
	at java.awt.Component.processComponentEvent(Component.java:6365)
	at java.awt.Component.processEvent(Component.java:6319)
	at java.awt.Container.processEvent(Container.java:2239)
	at java.awt.Component.dispatchEventImpl(Component.java:4889)
	at java.awt.Container.dispatchEventImpl(Container.java:2297)
	at java.awt.Component.dispatchEvent(Component.java:4711)
	at java.awt.EventQueue.dispatchEventImpl(EventQueue.java:760)
	at java.awt.EventQueue.access$500(EventQueue.java:97)
	at java.awt.EventQueue$3.run(EventQueue.java:709)
	at java.awt.EventQueue$3.run(EventQueue.java:703)
	at java.security.AccessController.doPrivileged(Native Method)
	at java.security.ProtectionDomain$JavaSecurityAccessImpl.doIntersectionPrivilege(ProtectionDomain.java:74)
	at java.security.ProtectionDomain$JavaSecurityAccessImpl.doIntersectionPrivilege(ProtectionDomain.java:84)
	at java.awt.EventQueue$4.run(EventQueue.java:733)
	at java.awt.EventQueue$4.run(EventQueue.java:731)
	at java.security.AccessController.doPrivileged(Native Method)
	at java.security.ProtectionDomain$JavaSecurityAccessImpl.doIntersectionPrivilege(ProtectionDomain.java:74)
	at java.awt.EventQueue.dispatchEvent(EventQueue.java:730)
	at org.GNOME.Accessibility.AtkWrapper$6.dispatchEvent(AtkWrapper.java:717)
	at java.awt.EventDispatchThread.pumpOneEventForFilters(EventDispatchThread.java:205)
	at java.awt.EventDispatchThread.pumpEventsForFilter(EventDispatchThread.java:116)
	at java.awt.EventDispatchThread.pumpEventsForHierarchy(EventDispatchThread.java:105)
	at java.awt.EventDispatchThread.pumpEvents(EventDispatchThread.java:101)
	at java.awt.EventDispatchThread.pumpEvents(EventDispatchThread.java:93)
	at java.awt.EventDispatchThread.run(EventDispatchThread.java:82)

"Test worker" #1 prio=5 os_prio=0 tid=0x00007f3de8012000 nid=0x7228f waiting on condition [0x00007f3def695000]
   java.lang.Thread.State: WAITING (parking)
	at sun.misc.Unsafe.park(Native Method)
	- parking to wait for  <0x00000000f80386a8> (a java.util.concurrent.FutureTask)
	at java.util.concurrent.locks.LockSupport.park(LockSupport.java:175)
	at java.util.concurrent.FutureTask.awaitDone(FutureTask.java:429)
	at java.util.concurrent.FutureTask.get(FutureTask.java:191)
	at org.GNOME.Accessibility.AtkUtil.invokeInSwing(AtkUtil.java:68)
	at org.GNOME.Accessibility.AtkObject.hashCode(AtkObject.java:234)
	at org.GNOME.Accessibility.AtkWrapper.emitSignal(Native Method)
	at org.GNOME.Accessibility.AtkWrapper$5.propertyChange(AtkWrapper.java:557)
	at java.beans.PropertyChangeSupport.fire(PropertyChangeSupport.java:335)
	at java.beans.PropertyChangeSupport.firePropertyChange(PropertyChangeSupport.java:327)
	at java.beans.PropertyChangeSupport.firePropertyChange(PropertyChangeSupport.java:263)
	at javax.accessibility.AccessibleContext.firePropertyChange(AccessibleContext.java:768)
	at javax.swing.JScrollPane$AccessibleJScrollPane.stateChanged(JScrollPane.java:1506)
	at javax.swing.JViewport.fireStateChanged(JViewport.java:1369)
	at javax.swing.JViewport.reshape(JViewport.java:839)
	at java.awt.Component.setBounds(Component.java:2261)
	at java.awt.Component.setBounds(Component.java:2405)
	at javax.swing.ScrollPaneLayout.layoutContainer(ScrollPaneLayout.java:890)
	at java.awt.Container.layout(Container.java:1513)
	at java.awt.Container.doLayout(Container.java:1502)
	at java.awt.Container.validateTree(Container.java:1698)
	at java.awt.Container.validateTree(Container.java:1707)
	at java.awt.Container.validateTree(Container.java:1707)
	at java.awt.Container.validateTree(Container.java:1707)
	at java.awt.Container.validateTree(Container.java:1707)
	at java.awt.Container.validate(Container.java:1633)
	- locked <0x00000000e0653ef0> (a java.awt.Component$AWTTreeLock)
	at org.apache.jorphan.gui.ComponentUtil.centerComponentInWindow(ComponentUtil.java:67)
	at org.apache.jorphan.gui.ComponentUtil.centerComponentInWindow(ComponentUtil.java:54)
	at org.apache.jmeter.gui.action.SelectTemplatesDialog.init(SelectTemplatesDialog.java:263)
	at org.apache.jmeter.gui.action.SelectTemplatesDialog.<init>(SelectTemplatesDialog.java:105)
	at sun.reflect.NativeConstructorAccessorImpl.newInstance0(Native Method)
	at sun.reflect.NativeConstructorAccessorImpl.newInstance(NativeConstructorAccessorImpl.java:62)
	at sun.reflect.DelegatingConstructorAccessorImpl.newInstance(DelegatingConstructorAccessorImpl.java:45)
	at java.lang.reflect.Constructor.newInstance(Constructor.java:423)
	at org.apache.jmeter.junit.JMeterTest.instantiateClass(JMeterTest.java:512)
	at org.apache.jmeter.junit.JMeterTest.getObjects(JMeterTest.java:474)
	at org.apache.jmeter.junit.JMeterTest.suiteSerializableElements(JMeterTest.java:407)
	at org.apache.jmeter.junit.JMeterTest.suite(JMeterTest.java:149)
	at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
	at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62)
	at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
	at java.lang.reflect.Method.invoke(Method.java:498)
	at org.junit.internal.runners.SuiteMethod.testFromSuiteMethod(SuiteMethod.java:35)

I hope to get rid of this by placing the code to center the newly created dialog
in the AWT thread.

I believe the deadlock happens only in our test code, when the dialog is created
and instantaneously destroyed.
FSchumacher added a commit that referenced this pull request May 1, 2023
When running locally, I observed the following deadlock:

"AWT-EventQueue-1" #23 prio=6 os_prio=0 tid=0x00007f3de9bf6800 nid=0x722b2 waiting for monitor entry [0x00007f3dcb4ee000]
   java.lang.Thread.State: BLOCKED (on object monitor)
	at java.awt.Component$AccessibleAWTComponent.getLocationOnScreen(Component.java:9494)
	- waiting to lock <0x00000000e0653ef0> (a java.awt.Component$AWTTreeLock)
	at javax.swing.JComponent$AccessibleJComponent.getLocationOnScreen(JComponent.java:3663)
	at javax.swing.text.JTextComponent$AccessibleJTextComponent.<init>(JTextComponent.java:2516)
	at javax.swing.JEditorPane$AccessibleJEditorPane.<init>(JEditorPane.java:1644)
	at javax.swing.JEditorPane$JEditorPaneAccessibleHypertextSupport.<init>(JEditorPane.java:1971)
	at javax.swing.JEditorPane$AccessibleJEditorPaneHTML.getAccessibleText(JEditorPane.java:1703)
	at org.GNOME.Accessibility.AtkObject.lambda$getTFlagFromObj$0(AtkObject.java:70)
	at org.GNOME.Accessibility.AtkObject$$Lambda$317/331870887.call(Unknown Source)
	at org.GNOME.Accessibility.AtkUtil.invokeInSwing(AtkUtil.java:58)
	at org.GNOME.Accessibility.AtkObject.getTFlagFromObj(AtkObject.java:55)
	at org.GNOME.Accessibility.AtkWrapper.boundsChanged(Native Method)
	at org.GNOME.Accessibility.AtkWrapper$3.componentResized(AtkWrapper.java:235)
	at java.awt.AWTEventMulticaster.componentResized(AWTEventMulticaster.java:159)
	at java.awt.Component.processComponentEvent(Component.java:6365)
	at java.awt.Component.processEvent(Component.java:6319)
	at java.awt.Container.processEvent(Container.java:2239)
	at java.awt.Component.dispatchEventImpl(Component.java:4889)
	at java.awt.Container.dispatchEventImpl(Container.java:2297)
	at java.awt.Component.dispatchEvent(Component.java:4711)
	at java.awt.EventQueue.dispatchEventImpl(EventQueue.java:760)
	at java.awt.EventQueue.access$500(EventQueue.java:97)
	at java.awt.EventQueue$3.run(EventQueue.java:709)
	at java.awt.EventQueue$3.run(EventQueue.java:703)
	at java.security.AccessController.doPrivileged(Native Method)
	at java.security.ProtectionDomain$JavaSecurityAccessImpl.doIntersectionPrivilege(ProtectionDomain.java:74)
	at java.security.ProtectionDomain$JavaSecurityAccessImpl.doIntersectionPrivilege(ProtectionDomain.java:84)
	at java.awt.EventQueue$4.run(EventQueue.java:733)
	at java.awt.EventQueue$4.run(EventQueue.java:731)
	at java.security.AccessController.doPrivileged(Native Method)
	at java.security.ProtectionDomain$JavaSecurityAccessImpl.doIntersectionPrivilege(ProtectionDomain.java:74)
	at java.awt.EventQueue.dispatchEvent(EventQueue.java:730)
	at org.GNOME.Accessibility.AtkWrapper$6.dispatchEvent(AtkWrapper.java:717)
	at java.awt.EventDispatchThread.pumpOneEventForFilters(EventDispatchThread.java:205)
	at java.awt.EventDispatchThread.pumpEventsForFilter(EventDispatchThread.java:116)
	at java.awt.EventDispatchThread.pumpEventsForHierarchy(EventDispatchThread.java:105)
	at java.awt.EventDispatchThread.pumpEvents(EventDispatchThread.java:101)
	at java.awt.EventDispatchThread.pumpEvents(EventDispatchThread.java:93)
	at java.awt.EventDispatchThread.run(EventDispatchThread.java:82)

"Test worker" #1 prio=5 os_prio=0 tid=0x00007f3de8012000 nid=0x7228f waiting on condition [0x00007f3def695000]
   java.lang.Thread.State: WAITING (parking)
	at sun.misc.Unsafe.park(Native Method)
	- parking to wait for  <0x00000000f80386a8> (a java.util.concurrent.FutureTask)
	at java.util.concurrent.locks.LockSupport.park(LockSupport.java:175)
	at java.util.concurrent.FutureTask.awaitDone(FutureTask.java:429)
	at java.util.concurrent.FutureTask.get(FutureTask.java:191)
	at org.GNOME.Accessibility.AtkUtil.invokeInSwing(AtkUtil.java:68)
	at org.GNOME.Accessibility.AtkObject.hashCode(AtkObject.java:234)
	at org.GNOME.Accessibility.AtkWrapper.emitSignal(Native Method)
	at org.GNOME.Accessibility.AtkWrapper$5.propertyChange(AtkWrapper.java:557)
	at java.beans.PropertyChangeSupport.fire(PropertyChangeSupport.java:335)
	at java.beans.PropertyChangeSupport.firePropertyChange(PropertyChangeSupport.java:327)
	at java.beans.PropertyChangeSupport.firePropertyChange(PropertyChangeSupport.java:263)
	at javax.accessibility.AccessibleContext.firePropertyChange(AccessibleContext.java:768)
	at javax.swing.JScrollPane$AccessibleJScrollPane.stateChanged(JScrollPane.java:1506)
	at javax.swing.JViewport.fireStateChanged(JViewport.java:1369)
	at javax.swing.JViewport.reshape(JViewport.java:839)
	at java.awt.Component.setBounds(Component.java:2261)
	at java.awt.Component.setBounds(Component.java:2405)
	at javax.swing.ScrollPaneLayout.layoutContainer(ScrollPaneLayout.java:890)
	at java.awt.Container.layout(Container.java:1513)
	at java.awt.Container.doLayout(Container.java:1502)
	at java.awt.Container.validateTree(Container.java:1698)
	at java.awt.Container.validateTree(Container.java:1707)
	at java.awt.Container.validateTree(Container.java:1707)
	at java.awt.Container.validateTree(Container.java:1707)
	at java.awt.Container.validateTree(Container.java:1707)
	at java.awt.Container.validate(Container.java:1633)
	- locked <0x00000000e0653ef0> (a java.awt.Component$AWTTreeLock)
	at org.apache.jorphan.gui.ComponentUtil.centerComponentInWindow(ComponentUtil.java:67)
	at org.apache.jorphan.gui.ComponentUtil.centerComponentInWindow(ComponentUtil.java:54)
	at org.apache.jmeter.gui.action.SelectTemplatesDialog.init(SelectTemplatesDialog.java:263)
	at org.apache.jmeter.gui.action.SelectTemplatesDialog.<init>(SelectTemplatesDialog.java:105)
	at sun.reflect.NativeConstructorAccessorImpl.newInstance0(Native Method)
	at sun.reflect.NativeConstructorAccessorImpl.newInstance(NativeConstructorAccessorImpl.java:62)
	at sun.reflect.DelegatingConstructorAccessorImpl.newInstance(DelegatingConstructorAccessorImpl.java:45)
	at java.lang.reflect.Constructor.newInstance(Constructor.java:423)
	at org.apache.jmeter.junit.JMeterTest.instantiateClass(JMeterTest.java:512)
	at org.apache.jmeter.junit.JMeterTest.getObjects(JMeterTest.java:474)
	at org.apache.jmeter.junit.JMeterTest.suiteSerializableElements(JMeterTest.java:407)
	at org.apache.jmeter.junit.JMeterTest.suite(JMeterTest.java:149)
	at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
	at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62)
	at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
	at java.lang.reflect.Method.invoke(Method.java:498)
	at org.junit.internal.runners.SuiteMethod.testFromSuiteMethod(SuiteMethod.java:35)

I hope to get rid of this by placing the code to center the newly created dialog
in the AWT thread.

I believe the deadlock happens only in our test code, when the dialog is created
and instantaneously destroyed.
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

3 participants