Category: Pavlo Golub
Patroni Environment Setup: PostgreSQL High Availability for Windows
PostgreSQL High-Availability has been one of the most dominant topics in the field for a long time. While there are many different approaches out there, Patroni seems to have become one of the most dominant solutions currently in use out there. Many database clusters are running on Linux. However, we have seen some demand for […]
pg_timetable: asynchronous chain execution
Intro I wrote about the new pg_timetable 3 major release not so long ago. Three essential features were highlighted: new session locking implementation; new jackc/pgx Golang library used; exclusive chain execution. Meanwhile, two minor releases have come out, and the current version is v3.2. It focuses on the completely new and fantastic feature asynchronous control […]
PostgreSQL exclusive cron jobs using pg_timetable scheduler
I wrote about the new pg_timetable 3 major release not so long ago. Two essential features were highlighted: – new session locking implementation – new jackc/pgx Golang library used Today I want to reveal one more advanced feature! Fasten your seat belts! First, we need to distinguish exclusive client session mode from exclusive chain execution […]
pg_timetable v3 is out!
As you probably know, pg_timetable is the advanced PostgreSQL cron compatible scheduler already released! Usually, any major release introduces absolutely new functionality as well as some backward incompatibilities. However, the only backward incompatibility present in this release is that the base task SHELL changed its name to PROGRAM. Yes, that’s all. 🙂 Now, let’s check […]
pg_timetable: start-up improvements
¡Hola, queridos amigos! We’ve released several valuable features for pg_timetable in May. It’s summer already, and time is flying fast! I hope all of you are well and safe, as well as your families and friends. Here I want to introduce what’s new and how that is useful briefly. If you are unfamiliar with pg_timetable, […]
pg_timetable: Advanced PostgreSQL cron-like scheduler released!
pg_timetable: Advanced PostgreSQL cron-like scheduler released! Hello there, this is your developer speaking… I’m struggling with how to start this post, since I’ve procrastinated a lot. There should be at least 5 published posts on this topic already. But there is only one by Hans-Jürgen Schönig. I’m thanking him for trying to cover my back, […]
PSQL_EDITOR: Fighting with Sublime Text under Windows
This supposed to be just a short TIL entry about PSQL_EDITOR variable. While trying to figure out all possible pitfalls, I’ve decided to write a full blog post. You may skip to the summary though. All tests done on Windows 10 with PostgreSQL 12 installed. As you know, PostgreSQL ships with an interactive console tool […]
Building PostgreSQL (x86, x64) and OpenSSL using MSYS2 and MinGW under Windows
I’ve written already a blog post “Building PostgreSQL with MSYS2 and MinGW under Windows” a year ago. But this time I want to show you two important things: cross compiling (x86, x64) using the same run-time; compiling with the latest OpenSSL support. That’s true nowadays you won’t find binaries or installations of PostgreSQL without […]
1-to-1 relationship in PostgreSQL for real
Years ago Years ago I wrote this post describing how to implement 1-to-1 relationship in PostgreSQL. The trick was simple and obvious: You put a unique constraint on a referenced column and you’re fine. But then one of the readers noticed, that this is the 1-to-(0..1) relationship, not a true 1-to-1. And he was absolutely […]
Choose plpgsql variable names wisely
Pavel Stehule recently wrote the post “Don’t use SQL keywords as PLpgSQL variable names” describing the situation when internal stored routine variable names match PostgreSQL keywords. But the problem is not only in keywords but also for plpgsql variable names. Consider: Output: OK, at least we have no hidden error like in Pavel’s case. Let’s […]
Keyword mess
I once received a mail with question: Can you tell me why I can’t select the column `references`? Well, the quick answer will be: because REFERENCES is a keyword you should use double quotes around it, e.g. =# select references from v_table_relation; But why do you sometimes need to explicitly quote identifiers and sometimes […]
Building PostgreSQL with MSYS2 and MinGW under Windows
Preface There are several ways of building PostgreSQL under Windows. Official manual stands using Visual Studio is the simplest one, wiki describes how to use mingw and mingw-w64. As for me, using new MSYS2 building platform for Windows is a bless. With its help not only PostgreSQL sources are built smoothly, but even extensions are […]