Debugging complex issues in web applications

Mark Thomas

English Session 2021-08-08 16:10 GMT+8  #webserverandtomcat

We have all seen issues that are hard track down. You probably have a few in your backlog at the moment. The issue appears in a seemingly random manner with no obvious pattern of inputs that triggers the problem. The effects of the issue are obvious but the root cause, or causes, are elusive. Is the root cause in the application? A library the application is using? Apache Tomcat? The JVM? The OS? A networking issue? Somewhere else? How can you tackle issues like this?

In this session we will use bug reports and user questions from the Apache Tomcat project to demonstrate the approach we have been using to successfully tackle complex issues like these. We will also discuss what you can do to increase your chances of getting some free help from the open source community.

While the examples in the session are focused on web applications, the techniques discussed are applicable to debugging complex issues in any application.


Mark Thomas: I have been an Apache Tomcat committer since November 2003. I initially worked on Tomcat in my free time but since August 2008 I have been employed by SpringSource (now part of VMware) to work on Apache Tomcat. I spend most of my time working on Tomcat but I also work on tc Server, VMware’s Servlet & JSP container based on Apache Tomcat.

I am the release manager Apache Tomcat 8.5, 9.0 and 10.0 where I try to release a new version every month or so. I am currently focused on Tomcat 10 development which supports Jakarta EE 9. I am a committer for Eclipse Servlet, Server Pages, Expression Language and WebSocket.

Elsewhere at the ASF, I am a member of the ASF security and infrastructure teams and I am also on the Commons PMC where I focus on Commons Pool and DBCP.

I am a member of the ASF and served as a Director from 2016 to 2019. I have held the position of VP, Brand Management since February 2018.