My first post on this blog will be a short introduction along with an explanation of what I hope to achieve by blogging here.
My name is Brian Peacock and I work at the IBM Hursley Development Lab in the UK. This is my 25th year being an IBMer, the first 8 of which were spent in the IBM UK Software Support Centre where I learnt a core fact, one that I hope to pass on here.
A dump (or core file) is your friend
Back in the early 1990's I spent many a happy hour flicking through piles of 1-part paper looking at hex. The dump became my friend and some very smart colleagues (to whom I owe a lot) taught me how to interpret the seemingly random characters to determine the cause of the failure. These were mainframe dumps, from VM, VSE and MVS.
In the latter part of the 1990's I moved to the IBM Hursley Software Development Lab and joined a team working on a new language called Java. Specifically, I joined the team that developed the first Java runtime on MVS – now known as Z/OS. Various other jobs followed within the IBM Java Technology Center including spending the last few years working on tooling used to monitor running Java applications and analyze artifacts produced by Java, including dumps.
I'm now the Java Current Release Technical lead but still have an interest in debugging Java problems from dumps. Therefore, I intend blogging here the processes I go through whenever a new Java dump appears on my desk, showing how I use the tools, and highlighting new things that we add into the tools in order to solve these problems.
The standard caveat is that all the thoughts and ideas I write here are my own and there is no guarantee that any code snippets I show here will make their way into the Java dump analysis tooling.