Merge branch 'jetty-9.4.x-3550-QueuedThreadPool-stalled' into jetty-9.4.x-3550-QueuedThreadPool-cleanup
This commit is contained in:
commit
ad40ba36a8
|
@ -211,7 +211,22 @@
|
||||||
</dependency>
|
</dependency>
|
||||||
<dependency>
|
<dependency>
|
||||||
<groupId>org.eclipse.jetty</groupId>
|
<groupId>org.eclipse.jetty</groupId>
|
||||||
<artifactId>jetty-infinispan</artifactId>
|
<artifactId>infinispan-remote</artifactId>
|
||||||
|
<version>9.4.17-SNAPSHOT</version>
|
||||||
|
</dependency>
|
||||||
|
<dependency>
|
||||||
|
<groupId>org.eclipse.jetty</groupId>
|
||||||
|
<artifactId>infinispan-remote-query</artifactId>
|
||||||
|
<version>9.4.17-SNAPSHOT</version>
|
||||||
|
</dependency>
|
||||||
|
<dependency>
|
||||||
|
<groupId>org.eclipse.jetty</groupId>
|
||||||
|
<artifactId>infinispan-embedded</artifactId>
|
||||||
|
<version>9.4.17-SNAPSHOT</version>
|
||||||
|
</dependency>
|
||||||
|
<dependency>
|
||||||
|
<groupId>org.eclipse.jetty</groupId>
|
||||||
|
<artifactId>infinispan-embedded-query</artifactId>
|
||||||
<version>9.4.17-SNAPSHOT</version>
|
<version>9.4.17-SNAPSHOT</version>
|
||||||
</dependency>
|
</dependency>
|
||||||
<dependency>
|
<dependency>
|
||||||
|
|
|
@ -53,7 +53,7 @@ public class DumpableCollection implements Dumpable
|
||||||
@Override
|
@Override
|
||||||
public void dump(Appendable out, String indent) throws IOException
|
public void dump(Appendable out, String indent) throws IOException
|
||||||
{
|
{
|
||||||
Object[] array = _collection.toArray();
|
Object[] array = (_collection == null ? null : _collection.toArray());
|
||||||
Dumpable.dumpObjects(out,indent,_name + " size="+array.length, array);
|
Dumpable.dumpObjects(out,indent,_name + " size="+(array == null ? 0 : array.length), array);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
|
@ -600,7 +600,7 @@ public class QueuedThreadPool extends ContainerLifeCycle implements SizedThreadP
|
||||||
String knownMethod = "";
|
String knownMethod = "";
|
||||||
for (StackTraceElement t : trace)
|
for (StackTraceElement t : trace)
|
||||||
{
|
{
|
||||||
if ("idleJobPoll".equals(t.getMethodName()) && t.getClassName().endsWith("QueuedThreadPool$Runner"))
|
if ("idleJobPoll".equals(t.getMethodName()) && t.getClassName().equals(Runner.class.getName()))
|
||||||
{
|
{
|
||||||
knownMethod = "IDLE ";
|
knownMethod = "IDLE ";
|
||||||
break;
|
break;
|
||||||
|
|
|
@ -0,0 +1,54 @@
|
||||||
|
//
|
||||||
|
// ========================================================================
|
||||||
|
// Copyright (c) 1995-2019 Mort Bay Consulting Pty. Ltd.
|
||||||
|
// ------------------------------------------------------------------------
|
||||||
|
// All rights reserved. This program and the accompanying materials
|
||||||
|
// are made available under the terms of the Eclipse Public License v1.0
|
||||||
|
// and Apache License v2.0 which accompanies this distribution.
|
||||||
|
//
|
||||||
|
// The Eclipse Public License is available at
|
||||||
|
// http://www.eclipse.org/legal/epl-v10.html
|
||||||
|
//
|
||||||
|
// The Apache License v2.0 is available at
|
||||||
|
// http://www.opensource.org/licenses/apache2.0.php
|
||||||
|
//
|
||||||
|
// You may elect to redistribute this code under either of these licenses.
|
||||||
|
// ========================================================================
|
||||||
|
//
|
||||||
|
|
||||||
|
package org.eclipse.jetty.util.component;
|
||||||
|
|
||||||
|
import static org.hamcrest.MatcherAssert.assertThat;
|
||||||
|
|
||||||
|
import java.util.ArrayList;
|
||||||
|
import java.util.Collection;
|
||||||
|
|
||||||
|
import org.hamcrest.Matchers;
|
||||||
|
import org.junit.jupiter.api.Test;
|
||||||
|
|
||||||
|
public class DumpableCollectionTest
|
||||||
|
{
|
||||||
|
|
||||||
|
@Test
|
||||||
|
public void testNullDumpableCollection () throws Exception
|
||||||
|
{
|
||||||
|
DumpableCollection dc = new DumpableCollection("null test", null);
|
||||||
|
String dump = dc.dump();
|
||||||
|
assertThat(dump, Matchers.containsString("size=0"));
|
||||||
|
}
|
||||||
|
|
||||||
|
@Test
|
||||||
|
public void testNonNullDumpableCollection () throws Exception
|
||||||
|
{
|
||||||
|
Collection<String> collection = new ArrayList<>();
|
||||||
|
collection.add("one");
|
||||||
|
collection.add("two");
|
||||||
|
collection.add("three");
|
||||||
|
|
||||||
|
DumpableCollection dc = new DumpableCollection("non null test", collection);
|
||||||
|
String dump = dc.dump();
|
||||||
|
assertThat(dump, Matchers.containsString("one"));
|
||||||
|
assertThat(dump, Matchers.containsString("two"));
|
||||||
|
assertThat(dump, Matchers.containsString("three"));
|
||||||
|
}
|
||||||
|
}
|
Loading…
Reference in New Issue