Craig Ringer

Senior Staff SDE

Craig Ringer is a Senior Staff SDE based out of Wellington in New Zealand. He was one of the early developers of the 2ndQuadrant BDR distributed multi-master replication software that later became EnterpriseDB Postgres Distributed. He is a recognised PostgreSQL contributor with contributions including libpq pipelining mode, logical replication improvements, and data protection fixes (reporting "FSyncgate").

 Craig's work touches many wildly varied areas, but he is currently focused on observability in Kubernetes-based cloud environments using technology including OpenTelemetry, Prometheus and Thanos. He enjoys solving complex problems that cross many layers and components. Contributing improvements, fixes, documentation and test cover to upstream projects are personal priorities, as he believes that it's important for companies to give back to open source projects. When not at a laptop, Craig enjoys building remote control aircraft, hiking, and visiting Wellington's beautiful beaches.

Read Blogs

Technical Blog
SELinux / SEPostgreSQL users: There are some proposed improvements in the 2013-01 commitfest that might go into PostgreSQL 9.3 – but only if you help. Interested users are needed to try out the following patches and report back with their experiences if you want to see these changes in 9.3: The patches are: Add a new event type of object_access_hook named OAT_POST_ALTER. This allows extensions to...
Technical Blog
I just confirmed the cause an extremely weird problem that’s been frustrating me for days. I want to share it so nobody else has to waste their time on this. It appears that – at least on my build machine, a Windows 7 SP1 x64 box with Windows SDK 7.1, Visual Studio 2010 Express SP1 and Visual Studio Express 2012 on it – vcregress check will hang indefinitely with a postgres.exe process sitting at...
Technical Blog
As part of some internal continuous integration and testing work, I’ve put together some scripts to simplify the compilation of PostgreSQL on Windows. PostgreSQL its self is pretty easy to compile on Windows. You download and install ActiveState Perl and Visual Studio or the Microsoft Windows SDK, unpack a PostgreSQL source tree, copy config_default.pl to src\tools\msvc\config.pl, edit it to...
Technical Blog
Today I ran into another strange issue with PostgreSQL installation on Windows. It turned out not to be a problem with the installer; instead it was a form of broken Windows installation that I hadn’t seen before, so I thought I’d write it up. The installer already contains checks for several kinds of broken Windows install. For example, it tests to make sure that %TEMP% is writeable, and to makes...
Technical Blog
Questions periodically come up on the PostgreSQL mailing list regarding Amazon EC2 and how to get PostgreSQL to perform well on it. The general feeling on the list appears to have been that EC2 performs very poorly for database workloads, at least with PostgreSQL, and it doesn’t seem to be taken particularly seriously as a platform. I certainly thought of it as a last resort myself, for when other...