Serial Datasource seems to timeout...
-
Hi Fox,
You are using a virtual serial server socket connected to a serial data source, yes?
It is very possible there is a lingering issue with the server socket, but that code hasn't changed much.
Offhand, I wonder what buffer size you have, and would you ever expect message bursts to be more than that buffer size?
I will try to look into this tomorrow, but if you could confirm / provide those details it may help.
You may also be able to get more information for us by,
- When it is happening, does a
nc -w 10 host port
timeout to the virtual serial server socket? - When it is happening, grab a thread dump from
/rest/v1/threads?asFile=true&stackDepth=40
- Does it unstick if you run (or just validate) this in a JavaScript console:
com.serotonin.m2m2.Common.runtimeManager.getRunningDataSoure("DS_XID").serialEvent( new com.infiniteautomation.serial.rt.SerialDataSourceRT.TimeoutSerialEvent(new Date().getTime()) );
?
- When it is happening, does a
-
Oh shoot, it's not just the virtual, this one I've had the latest error was connecting to the supplied
/dev/ttymUSB1
Your thread dump:
[ { "id" : 2, "priority" : 10, "name" : "Reference Handler", "cpuTime" : 4616465195, "userTime" : 2550000000, "lockInfo" : { "className" : "java.lang.ref.Reference$Lock", "identityHashCode" : 27663816 }, "lockOwnerId" : -1, "lockOwnerName" : null, "location" : [ { "methodName" : "wait", "fileName" : "Object.java", "lineNumber" : -2, "className" : "java.lang.Object", "nativeMethod" : true }, { "methodName" : "wait", "fileName" : "Object.java", "lineNumber" : 502, "className" : "java.lang.Object", "nativeMethod" : false }, { "methodName" : "tryHandlePending", "fileName" : "Reference.java", "lineNumber" : 191, "className" : "java.lang.ref.Reference", "nativeMethod" : false }, { "methodName" : "run", "fileName" : "Reference.java", "lineNumber" : 153, "className" : "java.lang.ref.Reference$ReferenceHandler", "nativeMethod" : false } ], "state" : "WAITING" }, { "id" : 3, "priority" : 8, "name" : "Finalizer", "cpuTime" : 2190251363, "userTime" : 2170000000, "lockInfo" : { "className" : "java.lang.ref.ReferenceQueue$Lock", "identityHashCode" : 1383578 }, "lockOwnerId" : -1, "lockOwnerName" : null, "location" : [ { "methodName" : "wait", "fileName" : "Object.java", "lineNumber" : -2, "className" : "java.lang.Object", "nativeMethod" : true }, { "methodName" : "remove", "fileName" : "ReferenceQueue.java", "lineNumber" : 143, "className" : "java.lang.ref.ReferenceQueue", "nativeMethod" : false }, { "methodName" : "remove", "fileName" : "ReferenceQueue.java", "lineNumber" : 164, "className" : "java.lang.ref.ReferenceQueue", "nativeMethod" : false }, { "methodName" : "run", "fileName" : "Finalizer.java", "lineNumber" : 209, "className" : "java.lang.ref.Finalizer$FinalizerThread", "nativeMethod" : false } ], "state" : "WAITING" }, { "id" : 4, "priority" : 9, "name" : "Signal Dispatcher", "cpuTime" : 168084, "userTime" : 0, "lockInfo" : null, "lockOwnerId" : -1, "lockOwnerName" : null, "location" : [ ], "state" : "RUNNABLE" }, { "id" : 18561, "priority" : 10, "name" : "Java2D Disposer", "cpuTime" : 720083, "userTime" : 0, "lockInfo" : { "className" : "java.lang.ref.ReferenceQueue$Lock", "identityHashCode" : 22024846 }, "lockOwnerId" : -1, "lockOwnerName" : null, "location" : [ { "methodName" : "wait", "fileName" : "Object.java", "lineNumber" : -2, "className" : "java.lang.Object", "nativeMethod" : true }, { "methodName" : "remove", "fileName" : "ReferenceQueue.java", "lineNumber" : 143, "className" : "java.lang.ref.ReferenceQueue", "nativeMethod" : false }, { "methodName" : "remove", "fileName" : "ReferenceQueue.java", "lineNumber" : 164, "className" : "java.lang.ref.ReferenceQueue", "nativeMethod" : false }, { "methodName" : "run", "fileName" : "Disposer.java", "lineNumber" : 148, "className" : "sun.java2d.Disposer", "nativeMethod" : false }, { "methodName" : "run", "fileName" : "Thread.java", "lineNumber" : 748, "className" : "java.lang.Thread", "nativeMethod" : false } ], "state" : "WAITING" }, { "id" : 9, "priority" : 5, "name" : "AsyncAppender-async", "cpuTime" : 753543329, "userTime" : 690000000, "lockInfo" : { "className" : "java.util.concurrent.locks.AbstractQueuedSynchronizer$ConditionObject", "identityHashCode" : 1206695 }, "lockOwnerId" : -1, "lockOwnerName" : null, "location" : [ { "methodName" : "park", "fileName" : "Unsafe.java", "lineNumber" : -2, "className" : "sun.misc.Unsafe", "nativeMethod" : true }, { "methodName" : "park", "fileName" : "LockSupport.java", "lineNumber" : 175, "className" : "java.util.concurrent.locks.LockSupport", "nativeMethod" : false }, { "methodName" : "await", "fileName" : "AbstractQueuedSynchronizer.java", "lineNumber" : 2039, "className" : "java.util.concurrent.locks.AbstractQueuedSynchronizer$ConditionObject", "nativeMethod" : false }, { "methodName" : "take", "fileName" : "ArrayBlockingQueue.java", "lineNumber" : 403, "className" : "java.util.concurrent.ArrayBlockingQueue", "nativeMethod" : false }, { "methodName" : "run", "fileName" : "AsyncAppender.java", "lineNumber" : 403, "className" : "org.apache.logging.log4j.core.appender.AsyncAppender$AsyncThread", "nativeMethod" : false } ], "state" : "WAITING" }, { "id" : 17, "priority" : 3, "name" : "qtp1360975-17-acceptor-0@14f080a-ServerConnector@188f413{HTTP/1.1,[http/1.1, h2c, h2c-17, h2c-16, h2c-15, h2c-14]}{0.0.0.0:80}", "cpuTime" : 58605495, "userTime" : 50000000, "lockInfo" : null, "lockOwnerId" : -1, "lockOwnerName" : null, "location" : [ { "methodName" : "accept0", "fileName" : "ServerSocketChannelImpl.java", "lineNumber" : -2, "className" : "sun.nio.ch.ServerSocketChannelImpl", "nativeMethod" : true }, { "methodName" : "accept", "fileName" : "ServerSocketChannelImpl.java", "lineNumber" : 422, "className" : "sun.nio.ch.ServerSocketChannelImpl", "nativeMethod" : false }, { "methodName" : "accept", "fileName" : "ServerSocketChannelImpl.java", "lineNumber" : 250, "className" : "sun.nio.ch.ServerSocketChannelImpl", "nativeMethod" : false }, { "methodName" : "accept", "fileName" : "ServerConnector.java", "lineNumber" : 397, "className" : "org.eclipse.jetty.server.ServerConnector", "nativeMethod" : false }, { "methodName" : "run", "fileName" : "AbstractConnector.java", "lineNumber" : 601, "className" : "org.eclipse.jetty.server.AbstractConnector$Acceptor", "nativeMethod" : false }, { "methodName" : "runJob", "fileName" : "QueuedThreadPool.java", "lineNumber" : 671, "className" : "org.eclipse.jetty.util.thread.QueuedThreadPool", "nativeMethod" : false }, { "methodName" : "run", "fileName" : "QueuedThreadPool.java", "lineNumber" : 589, "className" : "org.eclipse.jetty.util.thread.QueuedThreadPool$2", "nativeMethod" : false }, { "methodName" : "run", "fileName" : "Thread.java", "lineNumber" : 748, "className" : "java.lang.Thread", "nativeMethod" : false } ], "state" : "RUNNABLE" }, { "id" : 22, "priority" : 5, "name" : "qtp1360975-22", "cpuTime" : 99021203767, "userTime" : 89530000000, "lockInfo" : null, "lockOwnerId" : -1, "lockOwnerName" : null, "location" : [ { "methodName" : "epollWait", "fileName" : "EPollArrayWrapper.java", "lineNumber" : -2, "className" : "sun.nio.ch.EPollArrayWrapper", "nativeMethod" : true }, { "methodName" : "poll", "fileName" : "EPollArrayWrapper.java", "lineNumber" : 269, "className" : "sun.nio.ch.EPollArrayWrapper", "nativeMethod" : false }, { "methodName" : "doSelect", "fileName" : "EPollSelectorImpl.java", "lineNumber" : 93, "className" : "sun.nio.ch.EPollSelectorImpl", "nativeMethod" : false }, { "methodName" : "lockAndDoSelect", "fileName" : "SelectorImpl.java", "lineNumber" : 86, "className" : "sun.nio.ch.SelectorImpl", "nativeMethod" : false }, { "methodName" : "select", "fileName" : "SelectorImpl.java", "lineNumber" : 97, "className" : "sun.nio.ch.SelectorImpl", "nativeMethod" : false }, { "methodName" : "select", "fileName" : "SelectorImpl.java", "lineNumber" : 101, "className" : "sun.nio.ch.SelectorImpl", "nativeMethod" : false }, { "methodName" : "select", "fileName" : "ManagedSelector.java", "lineNumber" : 243, "className" : "org.eclipse.jetty.io.ManagedSelector$SelectorProducer", "nativeMethod" : false }, { "methodName" : "produce", "fileName" : "ManagedSelector.java", "lineNumber" : 191, "className" : "org.eclipse.jetty.io.ManagedSelector$SelectorProducer", "nativeMethod" : false }, { "methodName" : "executeProduceConsume", "fileName" : "ExecuteProduceConsume.java", "lineNumber" : 249, "className" : "org.eclipse.jetty.util.thread.strategy.ExecuteProduceConsume", "nativeMethod" : false }, { "methodName" : "produceConsume", "fileName" : "ExecuteProduceConsume.java", "lineNumber" : 148, "className" : "org.eclipse.jetty.util.thread.strategy.ExecuteProduceConsume", "nativeMethod" : false }, { "methodName" : "run", "fileName" : "ExecuteProduceConsume.java", "lineNumber" : 136, "className" : "org.eclipse.jetty.util.thread.strategy.ExecuteProduceConsume", "nativeMethod" : false }, { "methodName" : "runJob", "fileName" : "QueuedThreadPool.java", "lineNumber" : 671, "className" : "org.eclipse.jetty.util.thread.QueuedThreadPool", "nativeMethod" : false }, { "methodName" : "run", "fileName" : "QueuedThreadPool.java", "lineNumber" : 589, "className" : "org.eclipse.jetty.util.thread.QueuedThreadPool$2", "nativeMethod" : false }, { "methodName" : "run", "fileName" : "Thread.java", "lineNumber" : 748, "className" : "java.lang.Thread", "nativeMethod" : false } ], "state" : "RUNNABLE" }, { "id" : 23, "priority" : 10, "name" : "Ordered RealTime Timer", "cpuTime" : 759656028918, "userTime" : 514940000000, "lockInfo" : { "className" : "com.serotonin.timer.TaskQueue", "identityHashCode" : 23296560 }, "lockOwnerId" : -1, "lockOwnerName" : null, "location" : [ { "methodName" : "wait", "fileName" : "Object.java", "lineNumber" : -2, "className" : "java.lang.Object", "nativeMethod" : true }, { "methodName" : "mainLoop", "fileName" : "TimerThread.java", "lineNumber" : 124, "className" : "com.serotonin.timer.TimerThread", "nativeMethod" : false }, { "methodName" : "run", "fileName" : "TimerThread.java", "lineNumber" : 38, "className" : "com.serotonin.timer.TimerThread", "nativeMethod" : false } ], "state" : "TIMED_WAITING" }, { "id" : 24, "priority" : 10, "name" : "high-pool-2-thread-1 --> ProcessEPoll", "cpuTime" : 2637831, "userTime" : 0, "lockInfo" : { "className" : "com.serotonin.epoll.ProcessEPoll", "identityHashCode" : 25577034 }, "lockOwnerId" : -1, "lockOwnerName" : null, "location" : [ { "methodName" : "wait", "fileName" : "Object.java", "lineNumber" : -2, "className" : "java.lang.Object", "nativeMethod" : true }, { "methodName" : "wait", "fileName" : "Object.java", "lineNumber" : 502, "className" : "java.lang.Object", "nativeMethod" : false }, { "methodName" : "runImpl", "fileName" : "ProcessEPoll.java", "lineNumber" : 184, "className" : "com.serotonin.epoll.ProcessEPoll", "nativeMethod" : false }, { "methodName" : "run", "fileName" : "ProcessEPoll.java", "lineNumber" : 168, "className" : "com.serotonin.epoll.ProcessEPoll", "nativeMethod" : false }, { "methodName" : "runTask", "fileName" : "Task.java", "lineNumber" : 179, "className" : "com.serotonin.timer.Task", "nativeMethod" : false }, { "methodName" : "run", "fileName" : "TaskWrapper.java", "lineNumber" : 23, "className" : "com.serotonin.timer.TaskWrapper", "nativeMethod" : false }, { "methodName" : "runWorker", "fileName" : "ThreadPoolExecutor.java", "lineNumber" : 1142, "className" : "java.util.concurrent.ThreadPoolExecutor", "nativeMethod" : false }, { "methodName" : "run", "fileName" : "ThreadPoolExecutor.java", "lineNumber" : 617, "className" : "java.util.concurrent.ThreadPoolExecutor$Worker", "nativeMethod" : false }, { "methodName" : "run", "fileName" : "Thread.java", "lineNumber" : 748, "className" : "java.lang.Thread", "nativeMethod" : false } ], "state" : "WAITING" }, { "id" : 26, "priority" : 5, "name" : "Abandoned connection cleanup thread", "cpuTime" : 77803366794, "userTime" : 68210000000, "lockInfo" : { "className" : "java.lang.ref.ReferenceQueue$Lock", "identityHashCode" : 4186902 }, "lockOwnerId" : -1, "lockOwnerName" : null, "location" : [ { "methodName" : "wait", "fileName" : "Object.java", "lineNumber" : -2, "className" : "java.lang.Object", "nativeMethod" : true }, { "methodName" : "remove", "fileName" : "ReferenceQueue.java", "lineNumber" : 143, "className" : "java.lang.ref.ReferenceQueue", "nativeMethod" : false }, { "methodName" : "run", "fileName" : "AbandonedConnectionCleanupThread.java", "lineNumber" : 64, "className" : "com.mysql.jdbc.AbandonedConnectionCleanupThread", "nativeMethod" : false }, { "methodName" : "runWorker", "fileName" : "ThreadPoolExecutor.java", "lineNumber" : 1142, "className" : "java.util.concurrent.ThreadPoolExecutor", "nativeMethod" : false }, { "methodName" : "run", "fileName" : "ThreadPoolExecutor.java", "lineNumber" : 617, "className" : "java.util.concurrent.ThreadPoolExecutor$Worker", "nativeMethod" : false }, { "methodName" : "run", "fileName" : "Thread.java", "lineNumber" : 748, "className" : "java.lang.Thread", "nativeMethod" : false } ], "state" : "TIMED_WAITING" }, { "id" : 28, "priority" : 9, "name" : "H2 File Lock Watchdog /opt/mango/databases/mah2.lock.db", "cpuTime" : 196111050214, "userTime" : 138290000000, "lockInfo" : null, "lockOwnerId" : -1, "lockOwnerName" : null, "location" : [ { "methodName" : "sleep", "fileName" : "Thread.java", "lineNumber" : -2, "className" : "java.lang.Thread", "nativeMethod" : true }, { "methodName" : "run", "fileName" : "FileLock.java", "lineNumber" : 515, "className" : "org.h2.store.FileLock", "nativeMethod" : false }, { "methodName" : "run", "fileName" : "Thread.java", "lineNumber" : 748, "className" : "java.lang.Thread", "nativeMethod" : false } ], "state" : "TIMED_WAITING" }, { "id" : 29, "priority" : 5, "name" : "H2 Log Writer MAH2", "cpuTime" : 517252458348, "userTime" : 253130000000, "lockInfo" : { "className" : "org.h2.store.WriterThread", "identityHashCode" : 29614567 }, "lockOwnerId" : -1, "lockOwnerName" : null, "location" : [ { "methodName" : "wait", "fileName" : "Object.java", "lineNumber" : -2, "className" : "java.lang.Object", "nativeMethod" : true }, { "methodName" : "run", "fileName" : "WriterThread.java", "lineNumber" : 102, "className" : "org.h2.store.WriterThread", "nativeMethod" : false }, { "methodName" : "run", "fileName" : "Thread.java", "lineNumber" : 748, "className" : "java.lang.Thread", "nativeMethod" : false } ], "state" : "TIMED_WAITING" }, { "id" : 30, "priority" : 9, "name" : "IasTSDB Maintenance", "cpuTime" : 180142458971, "userTime" : 119600000000, "lockInfo" : { "className" : "com.infiniteautomation.tsdb.impl.Janitor", "identityHashCode" : 23310677 }, "lockOwnerId" : -1, "lockOwnerName" : null, "location" : [ { "methodName" : "wait", "fileName" : "Object.java", "lineNumber" : -2, "className" : "java.lang.Object", "nativeMethod" : true }, { "methodName" : "runImpl", "fileName" : "Janitor.java", "lineNumber" : 113, "className" : "com.infiniteautomation.tsdb.impl.Janitor", "nativeMethod" : false }, { "methodName" : "run", "fileName" : "Janitor.java", "lineNumber" : 93, "className" : "com.infiniteautomation.tsdb.impl.Janitor", "nativeMethod" : false }, { "methodName" : "run", "fileName" : "Thread.java", "lineNumber" : 748, "className" : "java.lang.Thread", "nativeMethod" : false } ], "state" : "TIMED_WAITING" }, { "id" : 31, "priority" : 9, "name" : "IasTSDB Maintenance", "cpuTime" : 172385694322, "userTime" : 112840000000, "lockInfo" : { "className" : "com.infiniteautomation.tsdb.impl.Janitor", "identityHashCode" : 16255269 }, "lockOwnerId" : -1, "lockOwnerName" : null, "location" : [ { "methodName" : "wait", "fileName" : "Object.java", "lineNumber" : -2, "className" : "java.lang.Object", "nativeMethod" : true }, { "methodName" : "runImpl", "fileName" : "Janitor.java", "lineNumber" : 113, "className" : "com.infiniteautomation.tsdb.impl.Janitor", "nativeMethod" : false }, { "methodName" : "run", "fileName" : "Janitor.java", "lineNumber" : 93, "className" : "com.infiniteautomation.tsdb.impl.Janitor", "nativeMethod" : false }, { "methodName" : "run", "fileName" : "Thread.java", "lineNumber" : 748, "className" : "java.lang.Thread", "nativeMethod" : false } ], "state" : "TIMED_WAITING" }, { "id" : 34, "priority" : 5, "name" : "SocketListener(mangoES3500)", "cpuTime" : 1391581448, "userTime" : 1360000000, "lockInfo" : null, "lockOwnerId" : -1, "lockOwnerName" : null, "location" : [ { "methodName" : "receive0", "fileName" : "PlainDatagramSocketImpl.java", "lineNumber" : -2, "className" : "java.net.PlainDatagramSocketImpl", "nativeMethod" : true }, { "methodName" : "receive", "fileName" : "AbstractPlainDatagramSocketImpl.java", "lineNumber" : 143, "className" : "java.net.AbstractPlainDatagramSocketImpl", "nativeMethod" : false }, { "methodName" : "receive", "fileName" : "DatagramSocket.java", "lineNumber" : 812, "className" : "java.net.DatagramSocket", "nativeMethod" : false }, { "methodName" : "run", "fileName" : "SocketListener.java", "lineNumber" : 41, "className" : "javax.jmdns.esconfig.impl.SocketListener", "nativeMethod" : false } ], "state" : "RUNNABLE" }, { "id" : 35, "priority" : 5, "name" : "JmDNS(mangoES3500).Timer", "cpuTime" : 24887120395, "userTime" : 21580000000, "lockInfo" : { "className" : "java.util.TaskQueue", "identityHashCode" : 20996799 }, "lockOwnerId" : -1, "lockOwnerName" : null, "location" : [ { "methodName" : "wait", "fileName" : "Object.java", "lineNumber" : -2, "className" : "java.lang.Object", "nativeMethod" : true }, { "methodName" : "mainLoop", "fileName" : "Timer.java", "lineNumber" : 552, "className" : "java.util.TimerThread", "nativeMethod" : false }, { "methodName" : "run", "fileName" : "Timer.java", "lineNumber" : 505, "className" : "java.util.TimerThread", "nativeMethod" : false } ], "state" : "TIMED_WAITING" }, { "id" : 36, "priority" : 5, "name" : "JmDNS(mangoES3500).State.Timer", "cpuTime" : 1711827889, "userTime" : 1570000000, "lockInfo" : { "className" : "java.util.TaskQueue", "identityHashCode" : 22051753 }, "lockOwnerId" : -1, "lockOwnerName" : null, "location" : [ { "methodName" : "wait", "fileName" : "Object.java", "lineNumber" : -2, "className" : "java.lang.Object", "nativeMethod" : true }, { "methodName" : "mainLoop", "fileName" : "Timer.java", "lineNumber" : 552, "className" : "java.util.TimerThread", "nativeMethod" : false }, { "methodName" : "run", "fileName" : "Timer.java", "lineNumber" : 505, "className" : "java.util.TimerThread", "nativeMethod" : false } ], "state" : "TIMED_WAITING" }, { "id" : 45, "priority" : 5, "name" : "org.eclipse.jetty.server.session.HashSessionManager@8cc9a2Timer", "cpuTime" : 11451682853, "userTime" : 10070000000, "lockInfo" : { "className" : "java.util.concurrent.locks.AbstractQueuedSynchronizer$ConditionObject", "identityHashCode" : 24484943 }, "lockOwnerId" : -1, "lockOwnerName" : null, "location" : [ { "methodName" : "park", "fileName" : "Unsafe.java", "lineNumber" : -2, "className" : "sun.misc.Unsafe", "nativeMethod" : true }, { "methodName" : "parkNanos", "fileName" : "LockSupport.java", "lineNumber" : 215, "className" : "java.util.concurrent.locks.LockSupport", "nativeMethod" : false }, { "methodName" : "awaitNanos", "fileName" : "AbstractQueuedSynchronizer.java", "lineNumber" : 2078, "className" : "java.util.concurrent.locks.AbstractQueuedSynchronizer$ConditionObject", "nativeMethod" : false }, { "methodName" : "take", "fileName" : "ScheduledThreadPoolExecutor.java", "lineNumber" : 1093, "className" : "java.util.concurrent.ScheduledThreadPoolExecutor$DelayedWorkQueue", "nativeMethod" : false }, { "methodName" : "take", "fileName" : "ScheduledThreadPoolExecutor.java", "lineNumber" : 809, "className" : "java.util.concurrent.ScheduledThreadPoolExecutor$DelayedWorkQueue", "nativeMethod" : false }, { "methodName" : "getTask", "fileName" : "ThreadPoolExecutor.java", "lineNumber" : 1067, "className" : "java.util.concurrent.ThreadPoolExecutor", "nativeMethod" : false }, { "methodName" : "runWorker", "fileName" : "ThreadPoolExecutor.java", "lineNumber" : 1127, "className" : "java.util.concurrent.ThreadPoolExecutor", "nativeMethod" : false }, { "methodName" : "run", "fileName" : "ThreadPoolExecutor.java", "lineNumber" : 617, "className" : "java.util.concurrent.ThreadPoolExecutor$Worker", "nativeMethod" : false }, { "methodName" : "run", "fileName" : "Thread.java", "lineNumber" : 748, "className" : "java.lang.Thread", "nativeMethod" : false } ], "state" : "TIMED_WAITING" }, { "id" : 46, "priority" : 5, "name" : "DestroyJavaVM", "cpuTime" : 51945728065, "userTime" : 48740000000, "lockInfo" : null, "lockOwnerId" : -1, "lockOwnerName" : null, "location" : [ ], "state" : "RUNNABLE" }, { "id" : 47, "priority" : 8, "name" : "medium-pool-3-thread-1", "cpuTime" : 30803477422, "userTime" : 28450000000, "lockInfo" : { "className" : "java.util.concurrent.locks.AbstractQueuedSynchronizer$ConditionObject", "identityHashCode" : 33161829 }, "lockOwnerId" : -1, "lockOwnerName" : null, "location" : [ { "methodName" : "park", "fileName" : "Unsafe.java", "lineNumber" : -2, "className" : "sun.misc.Unsafe", "nativeMethod" : true }, { "methodName" : "park", "fileName" : "LockSupport.java", "lineNumber" : 175, "className" : "java.util.concurrent.locks.LockSupport", "nativeMethod" : false }, { "methodName" : "await", "fileName" : "AbstractQueuedSynchronizer.java", "lineNumber" : 2039, "className" : "java.util.concurrent.locks.AbstractQueuedSynchronizer$ConditionObject", "nativeMethod" : false }, { "methodName" : "take", "fileName" : "LinkedBlockingQueue.java", "lineNumber" : 442, "className" : "java.util.concurrent.LinkedBlockingQueue", "nativeMethod" : false }, { "methodName" : "getTask", "fileName" : "ThreadPoolExecutor.java", "lineNumber" : 1067, "className" : "java.util.concurrent.ThreadPoolExecutor", "nativeMethod" : false }, { "methodName" : "runWorker", "fileName" : "ThreadPoolExecutor.java", "lineNumber" : 1127, "className" : "java.util.concurrent.ThreadPoolExecutor", "nativeMethod" : false }, { "methodName" : "run", "fileName" : "ThreadPoolExecutor.java", "lineNumber" : 617, "className" : "java.util.concurrent.ThreadPoolExecutor$Worker", "nativeMethod" : false }, { "methodName" : "run", "fileName" : "Thread.java", "lineNumber" : 748, "className" : "java.lang.Thread", "nativeMethod" : false } ], "state" : "WAITING" }, { "id" : 48, "priority" : 8, "name" : "medium-pool-3-thread-2", "cpuTime" : 29624722897, "userTime" : 27350000000, "lockInfo" : { "className" : "java.util.concurrent.locks.AbstractQueuedSynchronizer$ConditionObject", "identityHashCode" : 33161829 }, "lockOwnerId" : -1, "lockOwnerName" : null, "location" : [ { "methodName" : "park", "fileName" : "Unsafe.java", "lineNumber" : -2, "className" : "sun.misc.Unsafe", "nativeMethod" : true }, { "methodName" : "park", "fileName" : "LockSupport.java", "lineNumber" : 175, "className" : "java.util.concurrent.locks.LockSupport", "nativeMethod" : false }, { "methodName" : "await", "fileName" : "AbstractQueuedSynchronizer.java", "lineNumber" : 2039, "className" : "java.util.concurrent.locks.AbstractQueuedSynchronizer$ConditionObject", "nativeMethod" : false }, { "methodName" : "take", "fileName" : "LinkedBlockingQueue.java", "lineNumber" : 442, "className" : "java.util.concurrent.LinkedBlockingQueue", "nativeMethod" : false },
Sorry dont have file upload permissions...
@phildunlap said in Serial Datasource seems to timeout...:
Does it unstick if you run (or just validate) this in a JavaScript console:
com.serotonin.m2m2.Common.runtimeManager.getRunningDataSoure("DS_XID").serialEvent(
new com.infiniteautomation.serial.rt.SerialDataSourceRT.TimeoutSerialEvent(new Date().getTime())
);Is the DS_XID supposed to ba particular XID (I presume the serial ds xid is what you are referring to...) and is the chrome developer console sufficient? In the dev console all I got was undefined variable com
-
{ "methodName" : "getTask", "fileName" : "ThreadPoolExecutor.java", "lineNumber" : 1067, "className" : "java.util.concurrent.ThreadPoolExecutor", "nativeMethod" : false }, { "methodName" : "runWorker", "fileName" : "ThreadPoolExecutor.java", "lineNumber" : 1127, "className" : "java.util.concurrent.ThreadPoolExecutor", "nativeMethod" : false }, { "methodName" : "run", "fileName" : "ThreadPoolExecutor.java", "lineNumber" : 617, "className" : "java.util.concurrent.ThreadPoolExecutor$Worker", "nativeMethod" : false }, { "methodName" : "run", "fileName" : "Thread.java", "lineNumber" : 748, "className" : "java.lang.Thread", "nativeMethod" : false } ], "state" : "WAITING" }, { "id" : 60, "priority" : 8, "name" : "medium-pool-3-thread-3", "cpuTime" : 29874909089, "userTime" : 27530000000, "lockInfo" : { "className" : "java.util.concurrent.locks.AbstractQueuedSynchronizer$ConditionObject", "identityHashCode" : 33161829 }, "lockOwnerId" : -1, "lockOwnerName" : null, "location" : [ { "methodName" : "park", "fileName" : "Unsafe.java", "lineNumber" : -2, "className" : "sun.misc.Unsafe", "nativeMethod" : true }, { "methodName" : "park", "fileName" : "LockSupport.java", "lineNumber" : 175, "className" : "java.util.concurrent.locks.LockSupport", "nativeMethod" : false }, { "methodName" : "await", "fileName" : "AbstractQueuedSynchronizer.java", "lineNumber" : 2039, "className" : "java.util.concurrent.locks.AbstractQueuedSynchronizer$ConditionObject", "nativeMethod" : false }, { "methodName" : "take", "fileName" : "LinkedBlockingQueue.java", "lineNumber" : 442, "className" : "java.util.concurrent.LinkedBlockingQueue", "nativeMethod" : false }, { "methodName" : "getTask", "fileName" : "ThreadPoolExecutor.java", "lineNumber" : 1067, "className" : "java.util.concurrent.ThreadPoolExecutor", "nativeMethod" : false }, { "methodName" : "runWorker", "fileName" : "ThreadPoolExecutor.java", "lineNumber" : 1127, "className" : "java.util.concurrent.ThreadPoolExecutor", "nativeMethod" : false }, { "methodName" : "run", "fileName" : "ThreadPoolExecutor.java", "lineNumber" : 617, "className" : "java.util.concurrent.ThreadPoolExecutor$Worker", "nativeMethod" : false }, { "methodName" : "run", "fileName" : "Thread.java", "lineNumber" : 748, "className" : "java.lang.Thread", "nativeMethod" : false } ], "state" : "WAITING" }, { "id" : 6561, "priority" : 9, "name" : "IasTSDB Maintenance", "cpuTime" : 166936557525, "userTime" : 108940000000, "lockInfo" : { "className" : "com.infiniteautomation.tsdb.impl.Janitor", "identityHashCode" : 30262463 }, "lockOwnerId" : -1, "lockOwnerName" : null, "location" : [ { "methodName" : "wait", "fileName" : "Object.java", "lineNumber" : -2, "className" : "java.lang.Object", "nativeMethod" : true }, { "methodName" : "runImpl", "fileName" : "Janitor.java", "lineNumber" : 113, "className" : "com.infiniteautomation.tsdb.impl.Janitor", "nativeMethod" : false }, { "methodName" : "run", "fileName" : "Janitor.java", "lineNumber" : 93, "className" : "com.infiniteautomation.tsdb.impl.Janitor", "nativeMethod" : false }, { "methodName" : "run", "fileName" : "Thread.java", "lineNumber" : 748, "className" : "java.lang.Thread", "nativeMethod" : false } ], "state" : "TIMED_WAITING" }, { "id" : 18548, "priority" : 5, "name" : "Scheduler-28251408", "cpuTime" : 73122721, "userTime" : 50000000, "lockInfo" : { "className" : "java.util.concurrent.locks.AbstractQueuedSynchronizer$ConditionObject", "identityHashCode" : 25067420 }, "lockOwnerId" : -1, "lockOwnerName" : null, "location" : [ { "methodName" : "park", "fileName" : "Unsafe.java", "lineNumber" : -2, "className" : "sun.misc.Unsafe", "nativeMethod" : true }, { "methodName" : "parkNanos", "fileName" : "LockSupport.java", "lineNumber" : 215, "className" : "java.util.concurrent.locks.LockSupport", "nativeMethod" : false }, { "methodName" : "awaitNanos", "fileName" : "AbstractQueuedSynchronizer.java", "lineNumber" : 2078, "className" : "java.util.concurrent.locks.AbstractQueuedSynchronizer$ConditionObject", "nativeMethod" : false }, { "methodName" : "take", "fileName" : "ScheduledThreadPoolExecutor.java", "lineNumber" : 1093, "className" : "java.util.concurrent.ScheduledThreadPoolExecutor$DelayedWorkQueue", "nativeMethod" : false }, { "methodName" : "take", "fileName" : "ScheduledThreadPoolExecutor.java", "lineNumber" : 809, "className" : "java.util.concurrent.ScheduledThreadPoolExecutor$DelayedWorkQueue", "nativeMethod" : false }, { "methodName" : "getTask", "fileName" : "ThreadPoolExecutor.java", "lineNumber" : 1067, "className" : "java.util.concurrent.ThreadPoolExecutor", "nativeMethod" : false }, { "methodName" : "runWorker", "fileName" : "ThreadPoolExecutor.java", "lineNumber" : 1127, "className" : "java.util.concurrent.ThreadPoolExecutor", "nativeMethod" : false }, { "methodName" : "run", "fileName" : "ThreadPoolExecutor.java", "lineNumber" : 617, "className" : "java.util.concurrent.ThreadPoolExecutor$Worker", "nativeMethod" : false }, { "methodName" : "run", "fileName" : "Thread.java", "lineNumber" : 748, "className" : "java.lang.Thread", "nativeMethod" : false } ], "state" : "TIMED_WAITING" }, { "id" : 18572, "priority" : 5, "name" : "low-pool-4-thread-1", "cpuTime" : 75508541, "userTime" : 70000000, "lockInfo" : { "className" : "java.util.concurrent.locks.AbstractQueuedSynchronizer$ConditionObject", "identityHashCode" : 3411544 }, "lockOwnerId" : -1, "lockOwnerName" : null, "location" : [ { "methodName" : "park", "fileName" : "Unsafe.java", "lineNumber" : -2, "className" : "sun.misc.Unsafe", "nativeMethod" : true }, { "methodName" : "park", "fileName" : "LockSupport.java", "lineNumber" : 175, "className" : "java.util.concurrent.locks.LockSupport", "nativeMethod" : false }, { "methodName" : "await", "fileName" : "AbstractQueuedSynchronizer.java", "lineNumber" : 2039, "className" : "java.util.concurrent.locks.AbstractQueuedSynchronizer$ConditionObject", "nativeMethod" : false }, { "methodName" : "take", "fileName" : "LinkedBlockingQueue.java", "lineNumber" : 442, "className" : "java.util.concurrent.LinkedBlockingQueue", "nativeMethod" : false }, { "methodName" : "getTask", "fileName" : "ThreadPoolExecutor.java", "lineNumber" : 1067, "className" : "java.util.concurrent.ThreadPoolExecutor", "nativeMethod" : false }, { "methodName" : "runWorker", "fileName" : "ThreadPoolExecutor.java", "lineNumber" : 1127, "className" : "java.util.concurrent.ThreadPoolExecutor", "nativeMethod" : false }, { "methodName" : "run", "fileName" : "ThreadPoolExecutor.java", "lineNumber" : 617, "className" : "java.util.concurrent.ThreadPoolExecutor$Worker", "nativeMethod" : false }, { "methodName" : "run", "fileName" : "Thread.java", "lineNumber" : 748, "className" : "java.lang.Thread", "nativeMethod" : false } ], "state" : "WAITING" }, { "id" : 18576, "priority" : 5, "name" : "low-pool-4-thread-2", "cpuTime" : 243767000, "userTime" : 240000000, "lockInfo" : { "className" : "java.util.concurrent.locks.AbstractQueuedSynchronizer$ConditionObject", "identityHashCode" : 3411544 }, "lockOwnerId" : -1, "lockOwnerName" : null, "location" : [ { "methodName" : "park", "fileName" : "Unsafe.java", "lineNumber" : -2, "className" : "sun.misc.Unsafe", "nativeMethod" : true }, { "methodName" : "park", "fileName" : "LockSupport.java", "lineNumber" : 175, "className" : "java.util.concurrent.locks.LockSupport", "nativeMethod" : false }, { "methodName" : "await", "fileName" : "AbstractQueuedSynchronizer.java", "lineNumber" : 2039, "className" : "java.util.concurrent.locks.AbstractQueuedSynchronizer$ConditionObject", "nativeMethod" : false }, { "methodName" : "take", "fileName" : "LinkedBlockingQueue.java", "lineNumber" : 442, "className" : "java.util.concurrent.LinkedBlockingQueue", "nativeMethod" : false }, { "methodName" : "getTask", "fileName" : "ThreadPoolExecutor.java", "lineNumber" : 1067, "className" : "java.util.concurrent.ThreadPoolExecutor", "nativeMethod" : false }, { "methodName" : "runWorker", "fileName" : "ThreadPoolExecutor.java", "lineNumber" : 1127, "className" : "java.util.concurrent.ThreadPoolExecutor", "nativeMethod" : false }, { "methodName" : "run", "fileName" : "ThreadPoolExecutor.java", "lineNumber" : 617, "className" : "java.util.concurrent.ThreadPoolExecutor$Worker", "nativeMethod" : false }, { "methodName" : "run", "fileName" : "Thread.java", "lineNumber" : 748, "className" : "java.lang.Thread", "nativeMethod" : false } ], "state" : "WAITING" }, { "id" : 18577, "priority" : 5, "name" : "low-pool-4-thread-3", "cpuTime" : 33982834, "userTime" : 30000000, "lockInfo" : { "className" : "java.util.concurrent.locks.AbstractQueuedSynchronizer$ConditionObject", "identityHashCode" : 3411544 }, "lockOwnerId" : -1, "lockOwnerName" : null, "location" : [ { "methodName" : "park", "fileName" : "Unsafe.java", "lineNumber" : -2, "className" : "sun.misc.Unsafe", "nativeMethod" : true }, { "methodName" : "park", "fileName" : "LockSupport.java", "lineNumber" : 175, "className" : "java.util.concurrent.locks.LockSupport", "nativeMethod" : false }, { "methodName" : "await", "fileName" : "AbstractQueuedSynchronizer.java", "lineNumber" : 2039, "className" : "java.util.concurrent.locks.AbstractQueuedSynchronizer$ConditionObject", "nativeMethod" : false }, { "methodName" : "take", "fileName" : "LinkedBlockingQueue.java", "lineNumber" : 442, "className" : "java.util.concurrent.LinkedBlockingQueue", "nativeMethod" : false }, { "methodName" : "getTask", "fileName" : "ThreadPoolExecutor.java", "lineNumber" : 1067, "className" : "java.util.concurrent.ThreadPoolExecutor", "nativeMethod" : false }, { "methodName" : "runWorker", "fileName" : "ThreadPoolExecutor.java", "lineNumber" : 1127, "className" : "java.util.concurrent.ThreadPoolExecutor", "nativeMethod" : false }, { "methodName" : "run", "fileName" : "ThreadPoolExecutor.java", "lineNumber" : 617, "className" : "java.util.concurrent.ThreadPoolExecutor$Worker", "nativeMethod" : false }, { "methodName" : "run", "fileName" : "Thread.java", "lineNumber" : 748, "className" : "java.lang.Thread", "nativeMethod" : false } ], "state" : "WAITING" }, { "id" : 18602, "priority" : 5, "name" : "qtp1360975-18602", "cpuTime" : 12805799844, "userTime" : 9370000000, "lockInfo" : { "className" : "com.serotonin.m2m2.web.dwr.longPoll.LongPollRequest", "identityHashCode" : 21157073 }, "lockOwnerId" : -1, "lockOwnerName" : null, "location" : [ { "methodName" : "wait", "fileName" : "Object.java", "lineNumber" : -2, "className" : "java.lang.Object", "nativeMethod" : true }, { "methodName" : "doLongPoll", "fileName" : "BaseDwr.java", "lineNumber" : 638, "className" : "com.serotonin.m2m2.web.dwr.BaseDwr", "nativeMethod" : false }, { "methodName" : "invoke", "fileName" : null, "lineNumber" : -1, "className" : "sun.reflect.GeneratedMethodAccessor379", "nativeMethod" : false }, { "methodName" : "invoke", "fileName" : "DelegatingMethodAccessorImpl.java", "lineNumber" : 43, "className" : "sun.reflect.DelegatingMethodAccessorImpl", "nativeMethod" : false }, { "methodName" : "invoke", "fileName" : "Method.java", "lineNumber" : 498, "className" : "java.lang.reflect.Method", "nativeMethod" : false }, { "methodName" : "doFilter", "fileName" : "ExecuteAjaxFilter.java", "lineNumber" : 34, "className" : "org.directwebremoting.impl.ExecuteAjaxFilter", "nativeMethod" : false }, { "methodName" : "doFilter", "fileName" : "DefaultRemoter.java", "lineNumber" : 428, "className" : "org.directwebremoting.impl.DefaultRemoter$1", "nativeMethod" : false }, { "methodName" : "doFilter", "fileName" : "TranslationsFilter.java", "lineNumber" : 37, "className" : "com.serotonin.m2m2.web.dwr.util.TranslationsFilter", "nativeMethod" : false }, { "methodName" : "doFilter", "fileName" : "DefaultRemoter.java", "lineNumber" : 428, "className" : "org.directwebremoting.impl.DefaultRemoter$1", "nativeMethod" : false }, { "methodName" : "doFilter", "fileName" : "ExceptionDetectionFilter.java", "lineNumber" : 26, "className" : "com.serotonin.m2m2.web.dwr.util.ExceptionDetectionFilter", "nativeMethod" : false }, { "methodName" : "doFilter", "fileName" : "DefaultRemoter.java", "lineNumber" : 428, "className" : "org.directwebremoting.impl.DefaultRemoter$1", "nativeMethod" : false }, { "methodName" : "doFilter", "fileName" : "DwrPermissionFilter.java", "lineNumber" : 46, "className" : "com.serotonin.m2m2.web.dwr.util.DwrPermissionFilter", "nativeMethod" : false }, { "methodName" : "doFilter", "fileName" : "DefaultRemoter.java", "lineNumber" : 428, "className" : "org.directwebremoting.impl.DefaultRemoter$1", "nativeMethod" : false }, { "methodName" : "execute", "fileName" : "DefaultRemoter.java", "lineNumber" : 431, "className" : "org.directwebremoting.impl.DefaultRemoter", "nativeMethod" : false }, { "methodName" : "execute", "fileName" : "DefaultRemoter.java", "lineNumber" : 283, "className" : "org.directwebremoting.impl.DefaultRemoter", "nativeMethod" : false }, { "methodName" : "handle", "fileName" : "PlainCallHandler.java", "lineNumber" : 52, "className" : "org.directwebremoting.servlet.PlainCallHandler", "nativeMethod" : false }, { "methodName" : "handle", "fileName" : "UrlProcessor.java", "lineNumber" : 101, "className" : "org.directwebremoting.servlet.UrlProcessor", "nativeMethod" : false }, { "methodName" : "doPost", "fileName" : "DwrServlet.java", "lineNumber" : 146, "className" : "org.directwebremoting.servlet.DwrServlet", "nativeMethod" : false }, { "methodName" : "service", "fileName" : "HttpServlet.java", "lineNumber" : 707, "className" : "javax.servlet.http.HttpServlet", "nativeMethod" : false }, { "methodName" : "service", "fileName" : "HttpServlet.java", "lineNumber" : 790, "className" : "javax.servlet.http.HttpServlet", "nativeMethod" : false }, { "methodName" : "handle", "fileName" : "ServletHolder.java", "lineNumber" : 848, "className" : "org.eclipse.jetty.servlet.ServletHolder", "nativeMethod" : false }, { "methodName" : "doFilter", "fileName" : "ServletHandler.java", "lineNumber" : 1772, "className" : "org.eclipse.jetty.servlet.ServletHandler$CachedChain", "nativeMethod" : false }, { "methodName" : "doFilterInternal", "fileName" : "ShallowEtagHeaderFilter.java", "lineNumber" : 110, "className" : "org.springframework.web.filter.ShallowEtagHeaderFilter", "nativeMethod" : false }, { "methodName" : "doFilterInternal", "fileName" : "MangoShallowEtagHeaderFilter.java", "lineNumber" : 90, "className" : "com.serotonin.m2m2.web.filter.MangoShallowEtagHeaderFilter", "nativeMethod" : false }, { "methodName" : "doFilter", "fileName" : "OncePerRequestFilter.java", "lineNumber" : 107, "className" : "org.springframework.web.filter.OncePerRequestFilter", "nativeMethod" : false }, { "methodName" : "doFilter", "fileName" : "ServletHandler.java", "lineNumber" : 1759, "className" : "org.eclipse.jetty.servlet.ServletHandler$CachedChain", "nativeMethod" : false }, { "methodName" : "doFilter", "fileName" : "FilterChainProxy.java", "lineNumber" : 317, "className" : "org.springframework.security.web.FilterChainProxy$VirtualFilterChain", "nativeMethod" : false }, { "methodName" : "invoke", "fileName" : "FilterSecurityInterceptor.java", "lineNumber" : 127, "className" : "org.springframework.security.web.access.intercept.FilterSecurityInterceptor", "nativeMethod" : false }, { "methodName" : "doFilter", "fileName" : "FilterSecurityInterceptor.java", "lineNumber" : 91, "className" : "org.springframework.security.web.access.intercept.FilterSecurityInterceptor", "nativeMethod" : false }, { "methodName" : "doFilter", "fileName" : "FilterChainProxy.java", "lineNumber" : 331, "className" : "org.springframework.security.web.FilterChainProxy$VirtualFilterChain", "nativeMethod" : false }, { "methodName" : "doFilter", "fileName" : "PermissionExceptionFilter.java", "lineNumber" : 32, "className" : "com.serotonin.m2m2.web.mvc.spring.security.PermissionExceptionFilter", "nativeMethod" : false }, { "methodName" : "doFilter", "fileName" : "FilterChainProxy.java", "lineNumber" : 331, "className" : "org.springframework.security.web.FilterChainProxy$VirtualFilterChain", "nativeMethod" : false }, { "methodName" : "doFilter", "fileName" : "ExceptionTranslationFilter.java", "lineNumber" : 114, "className" : "org.springframework.security.web.access.ExceptionTranslationFilter", "nativeMethod" : false }, { "methodName" : "doFilter", "fileName" : "FilterChainProxy.java", "lineNumber" : 331, "className" : "org.springframework.security.web.FilterChainProxy$VirtualFilterChain", "nativeMethod" : false }, { "methodName" : "doFilter", "fileName" : "SessionManagementFilter.java", "lineNumber" : 137, "className" : "org.springframework.security.web.session.SessionManagementFilter", "nativeMethod" : false }, { "methodName" : "doFilter", "fileName" : "FilterChainProxy.java", "lineNumber" : 331, "className" : "org.springframework.security.web.FilterChainProxy$VirtualFilterChain", "nativeMethod" : false }, { "methodName" : "doFilter", "fileName" : "AnonymousAuthenticationFilter.java", "lineNumber" : 111, "className" : "org.springframework.security.web.authentication.AnonymousAuthenticationFilter", "nativeMethod" : false }, { "methodName" : "doFilter", "fileName" : "FilterChainProxy.java", "lineNumber" : 331, "className" : "org.springframework.security.web.FilterChainProxy$VirtualFilterChain", "nativeMethod" : false }, { "methodName" : "doFilter", "fileName" : "SecurityContextHolderAwareRequestFilter.java", "lineNumber" : 170, "className" : "org.springframework.security.web.servletapi.SecurityContextHolderAwareRequestFilter", "nativeMethod" : false }, { "methodName" : "doFilter", "fileName" : "FilterChainProxy.java", "lineNumber" : 331, "className" : "org.springframework.security.web.FilterChainProxy$VirtualFilterChain", "nativeMethod" : false } ], "state" : "TIMED_WAITING" }, { "id" : 18625, "priority" : 5, "name" : "qtp1360975-18625", "cpuTime" : 12424702031, "userTime" : 8840000000, "lockInfo" : null, "lockOwnerId" : -1, "lockOwnerName" : null, "location" : [ { "methodName" : "epollWait", "fileName" : "EPollArrayWrapper.java", "lineNumber" : -2, "className" : "sun.nio.ch.EPollArrayWrapper", "nativeMethod" : true }, { "methodName" : "poll", "fileName" : "EPollArrayWrapper.java", "lineNumber" : 269, "className" : "sun.nio.ch.EPollArrayWrapper", "nativeMethod" : false }, { "methodName" : "doSelect", "fileName" : "EPollSelectorImpl.java", "lineNumber" : 93, "className" : "sun.nio.ch.EPollSelectorImpl", "nativeMethod" : false }, { "methodName" : "lockAndDoSelect", "fileName" : "SelectorImpl.java", "lineNumber" : 86, "className" : "sun.nio.ch.SelectorImpl", "nativeMethod" : false }, { "methodName" : "select", "fileName" : "SelectorImpl.java", "lineNumber" : 97, "className" : "sun.nio.ch.SelectorImpl", "nativeMethod" : false }, { "methodName" : "select", "fileName" : "SelectorImpl.java", "lineNumber" : 101, "className" : "sun.nio.ch.SelectorImpl", "nativeMethod" : false }, { "methodName" : "select", "fileName" : "ManagedSelector.java", "lineNumber" : 243, "className" : "org.eclipse.jetty.io.ManagedSelector$SelectorProducer", "nativeMethod" : false }, { "methodName" : "produce", "fileName" : "ManagedSelector.java", "lineNumber" : 191, "className" : "org.eclipse.jetty.io.ManagedSelector$SelectorProducer", "nativeMethod" : false }, { "methodName" : "executeProduceConsume", "fileName" : "ExecuteProduceConsume.java", "lineNumber" : 249, "className" : "org.eclipse.jetty.util.thread.strategy.ExecuteProduceConsume", "nativeMethod" : false }, { "methodName" : "produceConsume", "fileName" : "ExecuteProduceConsume.java", "lineNumber" : 148, "className" : "org.eclipse.jetty.util.thread.strategy.ExecuteProduceConsume", "nativeMethod" : false }, { "methodName" : "run", "fileName" : "ExecuteProduceConsume.java", "lineNumber" : 136, "className" : "org.eclipse.jetty.util.thread.strategy.ExecuteProduceConsume", "nativeMethod" : false }, { "methodName" : "runJob", "fileName" : "QueuedThreadPool.java", "lineNumber" : 671, "className" : "org.eclipse.jetty.util.thread.QueuedThreadPool", "nativeMethod" : false }, { "methodName" : "run", "fileName" : "QueuedThreadPool.java", "lineNumber" : 589, "className" : "org.eclipse.jetty.util.thread.QueuedThreadPool$2", "nativeMethod" : false }, { "methodName" : "run", "fileName" : "Thread.java", "lineNumber" : 748, "className" : "java.lang.Thread", "nativeMethod" : false } ], "state" : "RUNNABLE" }, { "id" : 18628, "priority" : 5, "name" : "qtp1360975-18628", "cpuTime" : 15172068510, "userTime" : 11850000000, "lockInfo" : { "className" : "java.util.concurrent.locks.AbstractQueuedSynchronizer$ConditionObject", "identityHashCode" : 15272570 }, "lockOwnerId" : -1, "lockOwnerName" : null, "location" : [ { "methodName" : "park", "fileName" : "Unsafe.java", "lineNumber" : -2, "className" : "sun.misc.Unsafe", "nativeMethod" : true }, { "methodName" : "parkNanos", "fileName" : "LockSupport.java", "lineNumber" : 215, "className" : "java.util.concurrent.locks.LockSupport", "nativeMethod" : false }, { "methodName" : "awaitNanos", "fileName" : "AbstractQueuedSynchronizer.java", "lineNumber" : 2078, "className" : "java.util.concurrent.locks.AbstractQueuedSynchronizer$ConditionObject", "nativeMethod" : false }, { "methodName" : "poll", "fileName" : "ArrayBlockingQueue.java", "lineNumber" : 418, "className" : "java.util.concurrent.ArrayBlockingQueue", "nativeMethod" : false }, { "methodName" : "idleJobPoll", "fileName" : "QueuedThreadPool.java", "lineNumber" : 563, "className" : "org.eclipse.jetty.util.thread.QueuedThreadPool", "nativeMethod" : false }, { "methodName" : "access$800", "fileName" : "QueuedThreadPool.java", "lineNumber" : 48, "className" : "org.eclipse.jetty.util.thread.QueuedThreadPool", "nativeMethod" : false }, { "methodName" : "run", "fileName" : "QueuedThreadPool.java", "lineNumber" : 626, "className" : "org.eclipse.jetty.util.thread.QueuedThreadPool$2", "nativeMethod" : false }, { "methodName" : "run", "fileName" : "Thread.java", "lineNumber" : 748, "className" : "java.lang.Thread", "nativeMethod" : false } ], "state" : "TIMED_WAITING" }, { "id" : 18657, "priority" : 5, "name" : "PersistentSenderRT.SendThread", "cpuTime" : 3541818904737, "userTime" : 2189640000000, "lockInfo" : { "className" : "com.serotonin.m2m2.persistent.pub.PersistentSendThread", "identityHashCode" : 4135095 }, "lockOwnerId" : -1, "lockOwnerName" : null, "location" : [ { "methodName" : "wait", "fileName" : "Object.java", "lineNumber" : -2, "className" : "java.lang.Object", "nativeMethod" : true }, { "methodName" : "waitImpl", "fileName" : "SendThread.java", "lineNumber" : 66, "className" : "com.serotonin.m2m2.rt.publish.SendThread", "nativeMethod" : false }, { "methodName" : "runImpl", "fileName" : "PersistentSendThread.java", "lineNumber" : 336, "className" : "com.serotonin.m2m2.persistent.pub.PersistentSendThread", "nativeMethod" : false }, { "methodName" : "run", "fileName" : "SendThread.java", "lineNumber" : 56, "className" : "com.serotonin.m2m2.rt.publish.SendThread", "nativeMethod" : false } ], "state" : "TIMED_WAITING" }, { "id" : 18697, "priority" : 5, "name" : "qtp1360975-18697", "cpuTime" : 11202234345, "userTime" : 7440000000, "lockInfo" : null, "lockOwnerId" : -1, "lockOwnerName" : null, "location" : [ { "methodName" : "epollWait", "fileName" : "EPollArrayWrapper.java", "lineNumber" : -2, "className" : "sun.nio.ch.EPollArrayWrapper", "nativeMethod" : true }, { "methodName" : "poll", "fileName" : "EPollArrayWrapper.java", "lineNumber" : 269, "className" : "sun.nio.ch.EPollArrayWrapper", "nativeMethod" : false }, { "methodName" : "doSelect", "fileName" : "EPollSelectorImpl.java", "lineNumber" : 93, "className" : "sun.nio.ch.EPollSelectorImpl", "nativeMethod" : false }, { "methodName" : "lockAndDoSelect", "fileName" : "SelectorImpl.java", "lineNumber" : 86, "className" : "sun.nio.ch.SelectorImpl", "nativeMethod" : false }, { "methodName" : "select", "fileName" : "SelectorImpl.java", "lineNumber" : 97, "className" : "sun.nio.ch.SelectorImpl", "nativeMethod" : false }, { "methodName" : "select", "fileName" : "SelectorImpl.java", "lineNumber" : 101, "className" : "sun.nio.ch.SelectorImpl", "nativeMethod" : false }, { "methodName" : "select", "fileName" : "ManagedSelector.java", "lineNumber" : 243, "className" : "org.eclipse.jetty.io.ManagedSelector$SelectorProducer", "nativeMethod" : false }, { "methodName" : "produce", "fileName" : "ManagedSelector.java", "lineNumber" : 191, "className" : "org.eclipse.jetty.io.ManagedSelector$SelectorProducer", "nativeMethod" : false }, { "methodName" : "executeProduceConsume", "fileName" : "ExecuteProduceConsume.java", "lineNumber" : 249, "className" : "org.eclipse.jetty.util.thread.strategy.ExecuteProduceConsume", "nativeMethod" : false }, { "methodName" : "produceConsume", "fileName" : "ExecuteProduceConsume.java", "lineNumber" : 148, "className" : "org.eclipse.jetty.util.thread.strategy.ExecuteProduceConsume", "nativeMethod" : false }, { "methodName" : "run", "fileName" : "ExecuteProduceConsume.java", "lineNumber" : 136, "className" : "org.eclipse.jetty.util.thread.strategy.ExecuteProduceConsume", "nativeMethod" : false }, { "methodName" : "runJob", "fileName" : "QueuedThreadPool.java", "lineNumber" : 671, "className" : "org.eclipse.jetty.util.thread.QueuedThreadPool", "nativeMethod" : false }, { "methodName" : "run", "fileName" : "QueuedThreadPool.java", "lineNumber" : 589, "className" : "org.eclipse.jetty.util.thread.QueuedThreadPool$2", "nativeMethod" : false }, { "methodName" : "run", "fileName" : "Thread.java", "lineNumber" : 748, "className" : "java.lang.Thread", "nativeMethod" : false } ], "state" : "RUNNABLE" }, { "id" : 27230, "priority" : 10, "name" : "high-pool-2-thread-23429 --> NoSQL Batch Writer 0", "cpuTime" : 292528599867, "userTime" : 208170000000, "lockInfo" : null, "lockOwnerId" : -1, "lockOwnerName" : null, "location" : [ { "methodName" : "sleep", "fileName" : "Thread.java", "lineNumber" : -2, "className" : "java.lang.Thread", "nativeMethod" : true }, { "methodName" : "execute", "fileName" : "MangoNoSqlBatchWriteBehind.java", "lineNumber" : 99, "className" : "com.infiniteautomation.nosql.MangoNoSqlBatchWriteBehind", "nativeMethod" : false }, { "methodName" : "run", "fileName" : "BackgroundProcessingImpl.java", "lineNumber" : 632, "className" : "com.serotonin.m2m2.rt.maint.BackgroundProcessingImpl$RejectableWorkItemRunnable", "nativeMethod" : false }, { "methodName" : "runTask", "fileName" : "Task.java", "lineNumber" : 179, "className" : "com.serotonin.timer.Task", "nativeMethod" : false }, { "methodName" : "run", "fileName" : "TaskWrapper.java", "lineNumber" : 23, "className" : "com.serotonin.timer.TaskWrapper", "nativeMethod" : false }, { "methodName" : "run", "fileName" : "OrderedThreadPoolExecutor.java", "lineNumber" : 336, "className" : "com.serotonin.timer.OrderedThreadPoolExecutor$OrderedTaskCollection", "nativeMethod" : false }, { "methodName" : "runWorker", "fileName" : "ThreadPoolExecutor.java", "lineNumber" : 1142, "className" : "java.util.concurrent.ThreadPoolExecutor", "nativeMethod" : false }, { "methodName" : "run", "fileName" : "ThreadPoolExecutor.java", "lineNumber" : 617, "className" : "java.util.concurrent.ThreadPoolExecutor$Worker", "nativeMethod" : false }, { "methodName" : "run", "fileName" : "Thread.java", "lineNumber" : 748, "className" : "java.lang.Thread", "nativeMethod" : false } ], "state" : "TIMED_WAITING" }, { "id" : 185172, "priority" : 5, "name" : "qtp1360975-185172", "cpuTime" : 1820595249, "userTime" : 1760000000, "lockInfo" : { "className" : "java.util.concurrent.locks.AbstractQueuedSynchronizer$ConditionObject", "identityHashCode" : 15272570 }, "lockOwnerId" : -1, "lockOwnerName" : null, "location" : [ { "methodName" : "park", "fileName" : "Unsafe.java", "lineNumber" : -2, "className" : "sun.misc.Unsafe", "nativeMethod" : true }, { "methodName" : "parkNanos", "fileName" : "LockSupport.java", "lineNumber" : 215, "className" : "java.util.concurrent.locks.LockSupport", "nativeMethod" : false }, { "methodName" : "awaitNanos", "fileName" : "AbstractQueuedSynchronizer.java", "lineNumber" : 2078, "className" : "java.util.concurrent.locks.AbstractQueuedSynchronizer$ConditionObject", "nativeMethod" : false }, { "methodName" : "poll", "fileName" : "ArrayBlockingQueue.java", "lineNumber" : 418, "className" : "java.util.concurrent.ArrayBlockingQueue", "nativeMethod" : false }, { "methodName" : "idleJobPoll", "fileName" : "QueuedThreadPool.java", "lineNumber" : 563, "className" : "org.eclipse.jetty.util.thread.QueuedThreadPool", "nativeMethod" : false }, { "methodName" : "access$800", "fileName" : "QueuedThreadPool.java", "lineNumber" : 48, "className" : "org.eclipse.jetty.util.thread.QueuedThreadPool", "nativeMethod" : false }, { "methodName" : "run", "fileName" : "QueuedThreadPool.java", "lineNumber" : 626, "className" : "org.eclipse.jetty.util.thread.QueuedThreadPool$2", "nativeMethod" : false },
-
{ "methodName" : "run", "fileName" : "Thread.java", "lineNumber" : 748, "className" : "java.lang.Thread", "nativeMethod" : false } ], "state" : "TIMED_WAITING" }, { "id" : 185186, "priority" : 5, "name" : "qtp1360975-185186", "cpuTime" : 991550018, "userTime" : 960000000, "lockInfo" : null, "lockOwnerId" : -1, "lockOwnerName" : null, "location" : [ { "methodName" : "getThreadInfo1", "fileName" : "ThreadImpl.java", "lineNumber" : -2, "className" : "sun.management.ThreadImpl", "nativeMethod" : true }, { "methodName" : "getThreadInfo", "fileName" : "ThreadImpl.java", "lineNumber" : 178, "className" : "sun.management.ThreadImpl", "nativeMethod" : false }, { "methodName" : "getThreadInfo", "fileName" : "ThreadImpl.java", "lineNumber" : 139, "className" : "sun.management.ThreadImpl", "nativeMethod" : false }, { "methodName" : "getThreads", "fileName" : "ThreadMonitorRestController.java", "lineNumber" : 78, "className" : "com.serotonin.m2m2.web.mvc.rest.v1.ThreadMonitorRestController", "nativeMethod" : false }, { "methodName" : "invoke0", "fileName" : "NativeMethodAccessorImpl.java", "lineNumber" : -2, "className" : "sun.reflect.NativeMethodAccessorImpl", "nativeMethod" : true }, { "methodName" : "invoke", "fileName" : "NativeMethodAccessorImpl.java", "lineNumber" : 62, "className" : "sun.reflect.NativeMethodAccessorImpl", "nativeMethod" : false }, { "methodName" : "invoke", "fileName" : "DelegatingMethodAccessorImpl.java", "lineNumber" : 43, "className" : "sun.reflect.DelegatingMethodAccessorImpl", "nativeMethod" : false }, { "methodName" : "invoke", "fileName" : "Method.java", "lineNumber" : 498, "className" : "java.lang.reflect.Method", "nativeMethod" : false }, { "methodName" : "doInvoke", "fileName" : "InvocableHandlerMethod.java", "lineNumber" : 205, "className" : "org.springframework.web.method.support.InvocableHandlerMethod", "nativeMethod" : false }, { "methodName" : "invokeForRequest", "fileName" : "InvocableHandlerMethod.java", "lineNumber" : 133, "className" : "org.springframework.web.method.support.InvocableHandlerMethod", "nativeMethod" : false }, { "methodName" : "invokeAndHandle", "fileName" : "ServletInvocableHandlerMethod.java", "lineNumber" : 97, "className" : "org.springframework.web.servlet.mvc.method.annotation.ServletInvocableHandlerMethod", "nativeMethod" : false }, { "methodName" : "invokeHandlerMethod", "fileName" : "RequestMappingHandlerAdapter.java", "lineNumber" : 827, "className" : "org.springframework.web.servlet.mvc.method.annotation.RequestMappingHandlerAdapter", "nativeMethod" : false }, { "methodName" : "handleInternal", "fileName" : "RequestMappingHandlerAdapter.java", "lineNumber" : 738, "className" : "org.springframework.web.servlet.mvc.method.annotation.RequestMappingHandlerAdapter", "nativeMethod" : false }, { "methodName" : "handle", "fileName" : "AbstractHandlerMethodAdapter.java", "lineNumber" : 85, "className" : "org.springframework.web.servlet.mvc.method.AbstractHandlerMethodAdapter", "nativeMethod" : false }, { "methodName" : "doDispatch", "fileName" : "DispatcherServlet.java", "lineNumber" : 967, "className" : "org.springframework.web.servlet.DispatcherServlet", "nativeMethod" : false }, { "methodName" : "doService", "fileName" : "DispatcherServlet.java", "lineNumber" : 901, "className" : "org.springframework.web.servlet.DispatcherServlet", "nativeMethod" : false }, { "methodName" : "processRequest", "fileName" : "FrameworkServlet.java", "lineNumber" : 970, "className" : "org.springframework.web.servlet.FrameworkServlet", "nativeMethod" : false }, { "methodName" : "doGet", "fileName" : "FrameworkServlet.java", "lineNumber" : 861, "className" : "org.springframework.web.servlet.FrameworkServlet", "nativeMethod" : false }, { "methodName" : "service", "fileName" : "HttpServlet.java", "lineNumber" : 687, "className" : "javax.servlet.http.HttpServlet", "nativeMethod" : false }, { "methodName" : "service", "fileName" : "FrameworkServlet.java", "lineNumber" : 846, "className" : "org.springframework.web.servlet.FrameworkServlet", "nativeMethod" : false }, { "methodName" : "service", "fileName" : "HttpServlet.java", "lineNumber" : 790, "className" : "javax.servlet.http.HttpServlet", "nativeMethod" : false }, { "methodName" : "handle", "fileName" : "ServletHolder.java", "lineNumber" : 848, "className" : "org.eclipse.jetty.servlet.ServletHolder", "nativeMethod" : false }, { "methodName" : "doFilter", "fileName" : "ServletHandler.java", "lineNumber" : 1772, "className" : "org.eclipse.jetty.servlet.ServletHandler$CachedChain", "nativeMethod" : false }, { "methodName" : "doFilterInternal", "fileName" : "CharacterEncodingFilter.java", "lineNumber" : 197, "className" : "org.springframework.web.filter.CharacterEncodingFilter", "nativeMethod" : false }, { "methodName" : "doFilter", "fileName" : "OncePerRequestFilter.java", "lineNumber" : 107, "className" : "org.springframework.web.filter.OncePerRequestFilter", "nativeMethod" : false }, { "methodName" : "doFilter", "fileName" : "ServletHandler.java", "lineNumber" : 1759, "className" : "org.eclipse.jetty.servlet.ServletHandler$CachedChain", "nativeMethod" : false }, { "methodName" : "doFilterInternal", "fileName" : "ShallowEtagHeaderFilter.java", "lineNumber" : 110, "className" : "org.springframework.web.filter.ShallowEtagHeaderFilter", "nativeMethod" : false }, { "methodName" : "doFilterInternal", "fileName" : "MangoShallowEtagHeaderFilter.java", "lineNumber" : 90, "className" : "com.serotonin.m2m2.web.filter.MangoShallowEtagHeaderFilter", "nativeMethod" : false }, { "methodName" : "doFilter", "fileName" : "OncePerRequestFilter.java", "lineNumber" : 107, "className" : "org.springframework.web.filter.OncePerRequestFilter", "nativeMethod" : false }, { "methodName" : "doFilter", "fileName" : "ServletHandler.java", "lineNumber" : 1759, "className" : "org.eclipse.jetty.servlet.ServletHandler$CachedChain", "nativeMethod" : false }, { "methodName" : "doFilter", "fileName" : "FilterChainProxy.java", "lineNumber" : 317, "className" : "org.springframework.security.web.FilterChainProxy$VirtualFilterChain", "nativeMethod" : false }, { "methodName" : "doFilter", "fileName" : "SwitchUserFilter.java", "lineNumber" : 197, "className" : "org.springframework.security.web.authentication.switchuser.SwitchUserFilter", "nativeMethod" : false }, { "methodName" : "doFilter", "fileName" : "FilterChainProxy.java", "lineNumber" : 331, "className" : "org.springframework.security.web.FilterChainProxy$VirtualFilterChain", "nativeMethod" : false }, { "methodName" : "invoke", "fileName" : "FilterSecurityInterceptor.java", "lineNumber" : 127, "className" : "org.springframework.security.web.access.intercept.FilterSecurityInterceptor", "nativeMethod" : false }, { "methodName" : "doFilter", "fileName" : "FilterSecurityInterceptor.java", "lineNumber" : 91, "className" : "org.springframework.security.web.access.intercept.FilterSecurityInterceptor", "nativeMethod" : false }, { "methodName" : "doFilter", "fileName" : "FilterChainProxy.java", "lineNumber" : 331, "className" : "org.springframework.security.web.FilterChainProxy$VirtualFilterChain", "nativeMethod" : false }, { "methodName" : "doFilterInternal", "fileName" : "RateLimitingFilter.java", "lineNumber" : 79, "className" : "com.serotonin.m2m2.web.mvc.spring.security.RateLimitingFilter", "nativeMethod" : false }, { "methodName" : "doFilter", "fileName" : "OncePerRequestFilter.java", "lineNumber" : 107, "className" : "org.springframework.web.filter.OncePerRequestFilter", "nativeMethod" : false }, { "methodName" : "doFilter", "fileName" : "FilterChainProxy.java", "lineNumber" : 331, "className" : "org.springframework.security.web.FilterChainProxy$VirtualFilterChain", "nativeMethod" : false }, { "methodName" : "doFilter", "fileName" : "PermissionExceptionFilter.java", "lineNumber" : 32, "className" : "com.serotonin.m2m2.web.mvc.spring.security.PermissionExceptionFilter", "nativeMethod" : false } ], "state" : "RUNNABLE" }, { "id" : 185188, "priority" : 5, "name" : "qtp1360975-185188", "cpuTime" : 2070828039, "userTime" : 2010000000, "lockInfo" : null, "lockOwnerId" : -1, "lockOwnerName" : null, "location" : [ { "methodName" : "epollWait", "fileName" : "EPollArrayWrapper.java", "lineNumber" : -2, "className" : "sun.nio.ch.EPollArrayWrapper", "nativeMethod" : true }, { "methodName" : "poll", "fileName" : "EPollArrayWrapper.java", "lineNumber" : 269, "className" : "sun.nio.ch.EPollArrayWrapper", "nativeMethod" : false }, { "methodName" : "doSelect", "fileName" : "EPollSelectorImpl.java", "lineNumber" : 93, "className" : "sun.nio.ch.EPollSelectorImpl", "nativeMethod" : false }, { "methodName" : "lockAndDoSelect", "fileName" : "SelectorImpl.java", "lineNumber" : 86, "className" : "sun.nio.ch.SelectorImpl", "nativeMethod" : false }, { "methodName" : "select", "fileName" : "SelectorImpl.java", "lineNumber" : 97, "className" : "sun.nio.ch.SelectorImpl", "nativeMethod" : false }, { "methodName" : "select", "fileName" : "SelectorImpl.java", "lineNumber" : 101, "className" : "sun.nio.ch.SelectorImpl", "nativeMethod" : false }, { "methodName" : "select", "fileName" : "ManagedSelector.java", "lineNumber" : 243, "className" : "org.eclipse.jetty.io.ManagedSelector$SelectorProducer", "nativeMethod" : false }, { "methodName" : "produce", "fileName" : "ManagedSelector.java", "lineNumber" : 191, "className" : "org.eclipse.jetty.io.ManagedSelector$SelectorProducer", "nativeMethod" : false }, { "methodName" : "executeProduceConsume", "fileName" : "ExecuteProduceConsume.java", "lineNumber" : 249, "className" : "org.eclipse.jetty.util.thread.strategy.ExecuteProduceConsume", "nativeMethod" : false }, { "methodName" : "produceConsume", "fileName" : "ExecuteProduceConsume.java", "lineNumber" : 148, "className" : "org.eclipse.jetty.util.thread.strategy.ExecuteProduceConsume", "nativeMethod" : false }, { "methodName" : "run", "fileName" : "ExecuteProduceConsume.java", "lineNumber" : 136, "className" : "org.eclipse.jetty.util.thread.strategy.ExecuteProduceConsume", "nativeMethod" : false }, { "methodName" : "runJob", "fileName" : "QueuedThreadPool.java", "lineNumber" : 671, "className" : "org.eclipse.jetty.util.thread.QueuedThreadPool", "nativeMethod" : false }, { "methodName" : "run", "fileName" : "QueuedThreadPool.java", "lineNumber" : 589, "className" : "org.eclipse.jetty.util.thread.QueuedThreadPool$2", "nativeMethod" : false }, { "methodName" : "run", "fileName" : "Thread.java", "lineNumber" : 748, "className" : "java.lang.Thread", "nativeMethod" : false } ], "state" : "RUNNABLE" }, { "id" : 185195, "priority" : 5, "name" : "EventThread /dev/ttymUSB1", "cpuTime" : 134391050918, "userTime" : 49810000000, "lockInfo" : null, "lockOwnerId" : -1, "lockOwnerName" : null, "location" : [ { "methodName" : "sleep", "fileName" : "Thread.java", "lineNumber" : -2, "className" : "java.lang.Thread", "nativeMethod" : true }, { "methodName" : "sleep", "fileName" : "Thread.java", "lineNumber" : 340, "className" : "java.lang.Thread", "nativeMethod" : false }, { "methodName" : "run", "fileName" : "SerialPort.java", "lineNumber" : 1305, "className" : "jssc.SerialPort$LinuxEventThread", "nativeMethod" : false } ], "state" : "TIMED_WAITING" }, { "id" : 185402, "priority" : 10, "name" : "high-pool-2-thread-162191", "cpuTime" : 42599288, "userTime" : 0, "lockInfo" : { "className" : "java.util.concurrent.SynchronousQueue$TransferStack", "identityHashCode" : 9114916 }, "lockOwnerId" : -1, "lockOwnerName" : null, "location" : [ { "methodName" : "park", "fileName" : "Unsafe.java", "lineNumber" : -2, "className" : "sun.misc.Unsafe", "nativeMethod" : true }, { "methodName" : "parkNanos", "fileName" : "LockSupport.java", "lineNumber" : 215, "className" : "java.util.concurrent.locks.LockSupport", "nativeMethod" : false }, { "methodName" : "awaitFulfill", "fileName" : "SynchronousQueue.java", "lineNumber" : 460, "className" : "java.util.concurrent.SynchronousQueue$TransferStack", "nativeMethod" : false }, { "methodName" : "transfer", "fileName" : "SynchronousQueue.java", "lineNumber" : 362, "className" : "java.util.concurrent.SynchronousQueue$TransferStack", "nativeMethod" : false }, { "methodName" : "poll", "fileName" : "SynchronousQueue.java", "lineNumber" : 941, "className" : "java.util.concurrent.SynchronousQueue", "nativeMethod" : false }, { "methodName" : "getTask", "fileName" : "ThreadPoolExecutor.java", "lineNumber" : 1066, "className" : "java.util.concurrent.ThreadPoolExecutor", "nativeMethod" : false }, { "methodName" : "runWorker", "fileName" : "ThreadPoolExecutor.java", "lineNumber" : 1127, "className" : "java.util.concurrent.ThreadPoolExecutor", "nativeMethod" : false }, { "methodName" : "run", "fileName" : "ThreadPoolExecutor.java", "lineNumber" : 617, "className" : "java.util.concurrent.ThreadPoolExecutor$Worker", "nativeMethod" : false }, { "methodName" : "run", "fileName" : "Thread.java", "lineNumber" : 748, "className" : "java.lang.Thread", "nativeMethod" : false } ], "state" : "TIMED_WAITING" }, { "id" : 185406, "priority" : 10, "name" : "high-pool-2-thread-162195", "cpuTime" : 25843380, "userTime" : 20000000, "lockInfo" : { "className" : "java.util.concurrent.SynchronousQueue$TransferStack", "identityHashCode" : 9114916 }, "lockOwnerId" : -1, "lockOwnerName" : null, "location" : [ { "methodName" : "park", "fileName" : "Unsafe.java", "lineNumber" : -2, "className" : "sun.misc.Unsafe", "nativeMethod" : true }, { "methodName" : "parkNanos", "fileName" : "LockSupport.java", "lineNumber" : 215, "className" : "java.util.concurrent.locks.LockSupport", "nativeMethod" : false }, { "methodName" : "awaitFulfill", "fileName" : "SynchronousQueue.java", "lineNumber" : 460, "className" : "java.util.concurrent.SynchronousQueue$TransferStack", "nativeMethod" : false }, { "methodName" : "transfer", "fileName" : "SynchronousQueue.java", "lineNumber" : 362, "className" : "java.util.concurrent.SynchronousQueue$TransferStack", "nativeMethod" : false }, { "methodName" : "poll", "fileName" : "SynchronousQueue.java", "lineNumber" : 941, "className" : "java.util.concurrent.SynchronousQueue", "nativeMethod" : false }, { "methodName" : "getTask", "fileName" : "ThreadPoolExecutor.java", "lineNumber" : 1066, "className" : "java.util.concurrent.ThreadPoolExecutor", "nativeMethod" : false }, { "methodName" : "runWorker", "fileName" : "ThreadPoolExecutor.java", "lineNumber" : 1127, "className" : "java.util.concurrent.ThreadPoolExecutor", "nativeMethod" : false }, { "methodName" : "run", "fileName" : "ThreadPoolExecutor.java", "lineNumber" : 617, "className" : "java.util.concurrent.ThreadPoolExecutor$Worker", "nativeMethod" : false }, { "methodName" : "run", "fileName" : "Thread.java", "lineNumber" : 748, "className" : "java.lang.Thread", "nativeMethod" : false } ], "state" : "TIMED_WAITING" }, { "id" : 185409, "priority" : 5, "name" : "qtp1360975-185409", "cpuTime" : 85153122, "userTime" : 80000000, "lockInfo" : { "className" : "java.util.concurrent.locks.AbstractQueuedSynchronizer$ConditionObject", "identityHashCode" : 15272570 }, "lockOwnerId" : -1, "lockOwnerName" : null, "location" : [ { "methodName" : "park", "fileName" : "Unsafe.java", "lineNumber" : -2, "className" : "sun.misc.Unsafe", "nativeMethod" : true }, { "methodName" : "parkNanos", "fileName" : "LockSupport.java", "lineNumber" : 215, "className" : "java.util.concurrent.locks.LockSupport", "nativeMethod" : false }, { "methodName" : "awaitNanos", "fileName" : "AbstractQueuedSynchronizer.java", "lineNumber" : 2078, "className" : "java.util.concurrent.locks.AbstractQueuedSynchronizer$ConditionObject", "nativeMethod" : false }, { "methodName" : "poll", "fileName" : "ArrayBlockingQueue.java", "lineNumber" : 418, "className" : "java.util.concurrent.ArrayBlockingQueue", "nativeMethod" : false }, { "methodName" : "idleJobPoll", "fileName" : "QueuedThreadPool.java", "lineNumber" : 563, "className" : "org.eclipse.jetty.util.thread.QueuedThreadPool", "nativeMethod" : false }, { "methodName" : "access$800", "fileName" : "QueuedThreadPool.java", "lineNumber" : 48, "className" : "org.eclipse.jetty.util.thread.QueuedThreadPool", "nativeMethod" : false }, { "methodName" : "run", "fileName" : "QueuedThreadPool.java", "lineNumber" : 626, "className" : "org.eclipse.jetty.util.thread.QueuedThreadPool$2", "nativeMethod" : false }, { "methodName" : "run", "fileName" : "Thread.java", "lineNumber" : 748, "className" : "java.lang.Thread", "nativeMethod" : false } ], "state" : "TIMED_WAITING" }, { "id" : 185410, "priority" : 5, "name" : "qtp1360975-185410", "cpuTime" : 128133958, "userTime" : 110000000, "lockInfo" : { "className" : "java.util.concurrent.locks.AbstractQueuedSynchronizer$ConditionObject", "identityHashCode" : 15272570 }, "lockOwnerId" : -1, "lockOwnerName" : null, "location" : [ { "methodName" : "park", "fileName" : "Unsafe.java", "lineNumber" : -2, "className" : "sun.misc.Unsafe", "nativeMethod" : true }, { "methodName" : "parkNanos", "fileName" : "LockSupport.java", "lineNumber" : 215, "className" : "java.util.concurrent.locks.LockSupport", "nativeMethod" : false }, { "methodName" : "awaitNanos", "fileName" : "AbstractQueuedSynchronizer.java", "lineNumber" : 2078, "className" : "java.util.concurrent.locks.AbstractQueuedSynchronizer$ConditionObject", "nativeMethod" : false }, { "methodName" : "poll", "fileName" : "ArrayBlockingQueue.java", "lineNumber" : 418, "className" : "java.util.concurrent.ArrayBlockingQueue", "nativeMethod" : false }, { "methodName" : "idleJobPoll", "fileName" : "QueuedThreadPool.java", "lineNumber" : 563, "className" : "org.eclipse.jetty.util.thread.QueuedThreadPool", "nativeMethod" : false }, { "methodName" : "access$800", "fileName" : "QueuedThreadPool.java", "lineNumber" : 48, "className" : "org.eclipse.jetty.util.thread.QueuedThreadPool", "nativeMethod" : false }, { "methodName" : "run", "fileName" : "QueuedThreadPool.java", "lineNumber" : 626, "className" : "org.eclipse.jetty.util.thread.QueuedThreadPool$2", "nativeMethod" : false }, { "methodName" : "run", "fileName" : "Thread.java", "lineNumber" : 748, "className" : "java.lang.Thread", "nativeMethod" : false } ], "state" : "TIMED_WAITING" }, { "id" : 185411, "priority" : 5, "name" : "qtp1360975-185411", "cpuTime" : 801791, "userTime" : 0, "lockInfo" : { "className" : "java.util.concurrent.locks.AbstractQueuedSynchronizer$ConditionObject", "identityHashCode" : 15272570 }, "lockOwnerId" : -1, "lockOwnerName" : null, "location" : [ { "methodName" : "park", "fileName" : "Unsafe.java", "lineNumber" : -2, "className" : "sun.misc.Unsafe", "nativeMethod" : true }, { "methodName" : "parkNanos", "fileName" : "LockSupport.java", "lineNumber" : 215, "className" : "java.util.concurrent.locks.LockSupport", "nativeMethod" : false }, { "methodName" : "awaitNanos", "fileName" : "AbstractQueuedSynchronizer.java", "lineNumber" : 2078, "className" : "java.util.concurrent.locks.AbstractQueuedSynchronizer$ConditionObject", "nativeMethod" : false }, { "methodName" : "poll", "fileName" : "ArrayBlockingQueue.java", "lineNumber" : 418, "className" : "java.util.concurrent.ArrayBlockingQueue", "nativeMethod" : false }, { "methodName" : "idleJobPoll", "fileName" : "QueuedThreadPool.java", "lineNumber" : 563, "className" : "org.eclipse.jetty.util.thread.QueuedThreadPool", "nativeMethod" : false }, { "methodName" : "access$800", "fileName" : "QueuedThreadPool.java", "lineNumber" : 48, "className" : "org.eclipse.jetty.util.thread.QueuedThreadPool", "nativeMethod" : false }, { "methodName" : "run", "fileName" : "QueuedThreadPool.java", "lineNumber" : 626, "className" : "org.eclipse.jetty.util.thread.QueuedThreadPool$2", "nativeMethod" : false }, { "methodName" : "run", "fileName" : "Thread.java", "lineNumber" : 748, "className" : "java.lang.Thread", "nativeMethod" : false } ], "state" : "TIMED_WAITING" } ]
-
Is the DS_XID supposed to ba particular XID (I presume the serial ds xid is what you are referring to...) and is the chrome developer console sufficient? In the dev console all I got was undefined variable com
It was supposed to be the data source XID of your serial data source. It was also to be run in a Mango JavaScript context. I probably shouldn't have said JavaScript console, that's not really what those are. Mango could use a JavaScript console...
Oh shoot, it's not just the virtual, this one I've had the latest error was connecting to the supplied /dev/ttymUSB1
My advisements were definitely for a virtual port! Although, you could try logging I/O and running that code in a Mango JavaScript context, still. The thread dump (which you could have emailed to support@infiniteautomation.com and I would have parsed the JSON using this script to look for either stuck threads or threads that were running for a very long time: https://github.com/infiniteautomation/ma-devtools/blob/master/PythonUtilities/Administration/parseThreads.py
As it is though, with a real serial port, the thread dump isn't going to help us, it wouldn't seem. The handling of the serial port would be done in native code by the JSSC library and it would just hand events into Java. That would lead me to wonder if the connection with the serial device is spotty. You could check that by seeing if the port is getting re-enumerated or disconnecting by checking the dmesg output over SSH for the USB registration events. I would also wonder if the converter itself didn't have the issue, since we would be talking about a USB to 485 converter, or something, right?
-
@phildunlap said in Serial Datasource seems to timeout...:
My advisements were definitely for a virtual port!
Sorry about that Phil...
@phildunlap said in Serial Datasource seems to timeout...:
I would also wonder if the converter itself didn't have the issue, since we would be talking about a USB to 485 converter, or something, right?
Yes a RS232 but it's the same chip we've be using it for quite some time. It's only recently with the newer versions of mango we've been having these issues with the serial still being connected, but the data doesn't enter the datasource. Disabling and re-enabling it fixes the issue...
@phildunlap said in Serial Datasource seems to timeout...:
You could check that by seeing if the port is getting re-enumerated or disconnecting by checking the dmesg output over SSH for the USB registration events.
Thanks I'll give it a go and will see what I can find.
Fox
-
Yes a RS232 but it's the same chip we've be using it for quite some time. It's only recently with the newer versions of mango we've been having these issues with the serial still being connected, but the data doesn't enter the datasource. Disabling and re-enabling it fixes the issue...
So you are experiencing the same issue on multiple MangoES units all using the same USB-232 converter? Hmm...
Offhand I can't really recall anything changing that should have affected that, but once again I'll have to say I'll look into it tomorrow (at least I'll be cogitating on the right thing this time!). What version are you upgrading these from? 3.3.4 ? The last change i'm aware of was in 3.3.3 to attempt to open ports even if unknown to the serial port manager. Other than that nothing would have changed AFAIK in quite a long while.
Disabling and re-enabling it fixes the issue...
The timeout event may help unstick it, but I suspect the port is getting reconnected, so I'll be curious to see the result of checking the dmesg log for one experiencing the issue.
-
@phildunlap said in Serial Datasource seems to timeout...:
What version are you upgrading these from?
Some of these were in the early 3.3's to 3.4.5 so I'm running the latest mango software. I'll email the dmesg output stuff for you. Hmm looks like it's being tossed around... but that's my opinion.
-
We'll see! Knowing that it's an ES (and assuming it's a V3 ES) and a real port brings to mind that the USB port directly adjacent to the ethernet port is on the base board, while the other USB port (beside the RS485 port) is on the daughter board and has a jumper board to the base board. That jumper board has caused issues before by being too loose, which could definitely result in the port getting disconnected momentarily and then rediscovered by the OS. I can tell by the symlink, ttymUSB1, that you are connected through the jumper board.
-
Upon a screenshare with Fox, we discovered there were \n and null characters in the incoming bytes that were not being matched and consumed by the serial data source, which caused the data source to seize up when these characters started clogging the buffer. A combination of rewriting the regex and preventing the nulls from transmitting brought this issue resolution!
Edit: A similar issue happened again after I proclaimed resolution. This led me to a concurrency bug in the virtual serial server socket.