All software has bugs. Even if you could possibly write the perfect bug free software all the layers down have bugs. Even CPUs as can be seen with the recent Meltdown and Spectre bugs. This means unfortunately sometimes software will crash. When this happens it is useful to capture as much information as possible to try and stop it happening again.
One of the first things I did when coming back to work from the holiday break is code a new crash dump handler to be used in MariaDB ColumnStore. This will spit out a stack trace for the current thread into a file upon a crash. It is very useful for daemons to try and find the root cause of a problem without running through a debugger. Continue reading Coding and decoding crash dump handlers
Sometimes network protocols don’t entirely behave as documented. Other times there is no documentation at all beyond code. Either way you can sometimes find a need to sniff the traffic of a connection to find out what is really going on.
Continue reading Protocol reverse engineering with tcpdump
After my previous post about ack a Twitter follower, Nick Morrott, pointed out that there is a potentially better tool than ack.
Continue reading Linux tools: silver searcher
My day job requires me to spend a lot of time in Linux terminals, hammering away at MariaDB ColumnStore to write and test new code as well as finding and fixing bugs. I have decided to write about the tools I use to get the job done, especially newer ones I have discovered.
Continue reading Linux tools: ack and memleakx
There has been a lot of talk in the Open Source world about universal package formats. Specifically the big two, Flatpak and Snap packages. My current Linux desktop distro of choice, Solus, has recently announced support for them. Now, this has a lot of pros and cons and whilst I have seen and heard a lot of the positive points I want to put across what is probably my more unpopular point of view.
Continue reading My view on Flatpak/Snap packages