FastThread Tool Review

(Reviews written by the users after using the tool)

Star Ratings

730 Ratings

4.74 out of 5 stars

5 star
82.9%
4 star
11.6%
3 star
3.2%
2 star
0.8%
1 star
1.5%

User Comments


2017-10-09
By 1121894033, qq

my web server was broken,com.mysql.jdbc.exceptions.jdbc4.MySQLNonTransientConnectionException: No operations allowed after connection closed. at sun.reflect.NativeConstructorAccessorImpl.newInstance0(Native Method) ~[?:1.8.0_144] at sun.reflect.NativeConstructorAccessorImpl.newInstance(NativeConstructorAccessorImpl.java:62) ~[?:1.8.0_144] at sun.reflect.DelegatingConstructorAccessorImpl.newInstance(DelegatingConstructorAccessorImpl.java:45) ~[?:1.8.0_144] at java.lang.reflect.Constructor.newInstance(Constructor.java:423) ~[?:1.8.0_144] at com.mysql.jdbc.Util.handleNewInstance(Util.java:425) ~[mysql-connector-java-5.1.42-bin.jar:5.1.42] at com.mysql.jdbc.Util.getInstance(Util.java:408) ~[mysql-connector-java-5.1.42-bin.jar:5.1.42] at com.mysql.jdbc.SQLError.createSQLException(SQLError.java:918) ~[mysql-connector-java-5.1.42-bin.jar:5.1.42] at com.mysql.jdbc.SQLError.createSQLException(SQLError.java:897) ~[mysql-connector-java-5.1.42-bin.jar:5.1.42] at com.mysql.jdbc.SQLError.createSQLException(SQLError.java:886) ~[mysql-connector-java-5.1.42-bin.jar:5.1.42] at com.mysql.jdbc.SQLError.createSQLException(SQLError.java:860) ~[mysql-connector-java-5.1.42-bin.jar:5.1.42] at com.mysql.jdbc.ConnectionImpl.throwConnectionClosedException(ConnectionImpl.java:1187) ~[mysql-connector-java-5.1.42-bin.jar:5.1.42] at com.mysql.jdbc.ConnectionImpl.checkClosed(ConnectionImpl.java:1182) ~[mysql-connector-java-5.1.42-bin.jar:5.1.42] at com.mysql.jdbc.ConnectionImpl.prepareStatement(ConnectionImpl.java:4035) ~[mysql-connector-java-5.1.42-bin.jar:5.1.42] at com.mysql.jdbc.ConnectionImpl.prepareStatement(ConnectionImpl.java:4004) ~[mysql-connector-java-5.1.42-bin.jar:5.1.42] at com.xmd.model.db.WebServerDBHelper.loadAllOrders(WebServerDBHelper.java:909) [license.jar:?] at com.xmd.license.controller.OrderMgtController.doProcess(OrderMgtController.java:29) [license.jar:?] at com.xmd.license.service.OrderMgtProcessor.doGet(OrderMgtProcessor.java:24) [license.jar:?] at javax.servlet.http.HttpServlet.service(HttpServlet.java:120) [javaee-16.jar:?] at javax.servlet.http.HttpServlet.service(HttpServlet.java:97) [javaee-16.jar:?] at com.caucho.server.dispatch.ServletFilterChain.doFilter(ServletFilterChain.java:109) [resin.jar:4.0.53] at com.xmd.license.service.AuthInterceptor.doFilter(AuthInterceptor.java:138) [license.jar:?] at com.caucho.server.dispatch.FilterFilterChain.doFilter(FilterFilterChain.java:89) [resin.jar:4.0.53] at org.apache.logging.log4j.web.Log4jServletFilter.doFilter(Log4jServletFilter.java:71) [log4j-web-2.9.0.jar:2.9.0] at com.caucho.server.dispatch.FilterFilterChain.doFilter(FilterFilterChain.java:89) [resin.jar:4.0.53] at com.caucho.server.webapp.WebAppListenerFilterChain.doFilter(WebAppListenerFilterChain.java:114) [resin.jar:4.0.53] at com.caucho.server.httpcache.ProxyCacheFilterChain.doRequestCacheable(ProxyCacheFilterChain.java:252) [pro.jar:4.0.53] at com.caucho.server.httpcache.ProxyCacheFilterChain.doFilter(ProxyCacheFilterChain.java:193) [pro.jar:4.0.53] at com.caucho.server.webapp.WebAppFilterChain.doFilter(WebAppFilterChain.java:156) [resin.jar:4.0.53] at com.caucho.server.webapp.AccessLogFilterChain.doFilter(AccessLogFilterChain.java:95) [resin.jar:4.0.53] at com.caucho.server.dispatch.ServletInvocation.service(ServletInvocation.java:290) [resin.jar:4.0.53] at com.caucho.server.http.HttpRequest.handleRequest(HttpRequest.java:838) [resin.jar:4.0.53] at com.caucho.network.listen.TcpSocketLink.dispatchRequest(TcpSocketLink.java:1353) [resin.jar:3.2.0] at com.caucho.network.listen.TcpSocketLink.handleRequest(TcpSocketLink.java:1309) [resin.jar:3.2.0] at com.caucho.network.listen.TcpSocketLink.handleRequestsImpl(TcpSocketLink.java:1293) [resin.jar:3.2.0] at com.caucho.network.listen.TcpSocketLink.handleRequests(TcpSocketLink.java:1201) [resin.jar:3.2.0] at com.caucho.network.listen.TcpSocketLink.handleAcceptTaskImpl(TcpSocketLink.java:997) [resin.jar:3.2.0] at com.caucho.network.listen.TcpSocketLink.handleAcceptTask(TcpSocketLink.java:949) [resin.jar:3.2.0] at com.caucho.network.listen.ConnectionTask.runThread(ConnectionTask.java:114) [resin.jar:3.2.0] at com.caucho.network.listen.ConnectionTask.run(ConnectionTask.java:93) [resin.jar:3.2.0] at com.caucho.network.listen.SocketLinkThreadLauncher.handleTasks(SocketLinkThreadLauncher.java:169) [resin.jar:3.2.0] at com.caucho.network.listen.TcpSocketResumeThread.run(TcpSocketResumeThread.java:62) [resin.jar:3.2.0] at com.caucho.env.thread2.ResinThread2.runTasks(ResinThread2.java:173) [resin.jar:4.0.53] at com.caucho.env.thread2.ResinThread2.run(ResinThread2.java:118) [resin.jar:4.0.53] Caused by: com.mysql.jdbc.exceptions.jdbc4.CommunicationsException: The last packet successfully received from the server was 59,602,822 milliseconds ago. The last packet sent successfully to the server was 59,602,825 milliseconds ago. is longer than the server configured value of 'wait_timeout'. You should consider either expiring and/or testing connection validity before use in your application, increasing the server configured values for client timeouts, or using the Connector/J connection property 'autoReconnect=true' to avoid this problem. at sun.reflect.NativeConstructorAccessorImpl.newInstance0(Native Method) ~[?:1.8.0_144] at sun.reflect.NativeConstructorAccessorImpl.newInstance(NativeConstructorAccessorImpl.java:62) ~[?:1.8.0_144] at sun.reflect.DelegatingConstructorAccessorImpl.newInstance(DelegatingConstructorAccessorImpl.java:45) ~[?:1.8.0_144] at java.lang.reflect.Constructor.newInstance(Constructor.java:423) ~[?:1.8.0_144] at com.mysql.jdbc.Util.handleNewInstance(Util.java:425) ~[mysql-connector-java-5.1.42-bin.jar:5.1.42] at com.mysql.jdbc.SQLError.createCommunicationsException(SQLError.java:989) ~[mysql-connector-java-5.1.42-bin.jar:5.1.42] at com.mysql.jdbc.MysqlIO.send(MysqlIO.java:3746) ~[mysql-connector-java-5.1.42-bin.jar:5.1.42] at com.mysql.jdbc.MysqlIO.sendCommand(MysqlIO.java:2509) ~[mys


2017-10-05

awsome


2017-10-05

Within seconds I know whether I got real problems or not.


2017-10-05
By davy.de.durpel, isencia

There actually is a problem with this thread dump that is not discovered by your otherwise fantastic tool ;-) I don't know if you still have the zip file (otherwise I'll resend it through email), but if you look at the zip file, there is one thread (pool-3-thread-188) that is in all 3 dumps in RUNNABLE state. In fact based on the timestamps, you can see that an Oracle query is 'busy' for more than 90 seconds. Often this is a sign of db related issues. (which is the case here) I know it's hard to write an algorithm to detect such cases as in most cases it's a (daemon) thread just listening on a socket. But it could be interesting to have a separate page where one could see all these lonely wolves with some filtering so that it's easy to exclude daemon and/or known long running threads. Now these kind of threads are nowhere visible and gives the visitor of your site a false positive signal while a false negative would be more appropriate.


2017-09-29

Please build heap dump analysis tool


2017-09-28
By manjeetduhan.gurgaon

This is awesome guys .keep up the good work


2017-09-23

awesome..


2017-09-21

Good report with lot of insightful information


2017-09-20

Lot of info given here, each section should be explained also for new starters.


2017-09-19

its very easy to analyze the dump on very less amount of time.. thank you team


page 2 of 14  Previous1 2 3 4 5 6 7 8 9 10Next