Skip to content

Open source Team

Posts published under the Open source Team account are collective contributions by the dbi services open infrastructure consultants. The practice covers open-source databases and platforms, PostgreSQL first of all, along with MySQL, MariaDB, and Linux, from architecture, replication, and high availability to performance tuning and operations under service level agreements, and contributes actively to the PostgreSQL community.

721 posts since September 2011

Building PostgreSQL with Meson

Last year, around this time, there started a thread on hackers which was about building PostgreSQL with meson. I didn’t know anything about Meson at this time, and don’t know much more right now, but as it seems to be related to build times and times to get test results I though I’ll have a look (there are more, and… 

PostgreSQL from packages on NetBSD

The last flavor of BSD we’ll look at is NetBSD. We already had FreeBSD (here and here) and OpenBSD (here and here). If you want to learn more about the history of NetBSD and the goals of the project, head over to the about page on the official website. We’ll use the same structure as in the other BSD related… 

PostgreSQL from source on OpenBSD

In the last post we’ve seen that it is quite easy to get started with PostgreSQL on OpenBSD when you install from the provided packages. The downside of this was, that not the latest version of PostgreSQL was provided, 14.2 instead of 14.5, which is the current version as of today. If you want to stay more up to date,… 

PostgreSQL from packages on OpenBSD

Almost all of our customers run PostgreSQL on one of the distributions of Linux, either installed from packages or from source code. But there is not only Linux, there a various flavors of BSD you can also run PostgreSQL on. So, if you want to have something more UNIX like, OpenBSD can be an option. This flavor of BSD is… 

How to contribute to YaK

Some days ago we officially launched YaK, which is our open source tool for deploying infrastructures everywhere. Because the core component of Yak is open source, can you contribute if you want. Contributions are more than welcome, the project is hosted on GitLab. If you are already familiar with Git, forks and merge requests there is not much you can… 

Be careful with “public” in PostgreSQL

PostgreSQL comes with the “public” schema by default and we always recommend to drop it for PostgreSQL versions up to 14. The reason is, that everybody who is able to connect to a database, by default, can create objects in the public schema. This will not anymore be possible starting with PostgreSQL 15. You can check the release notes for… 

Do you really need varchar(n) in PostgreSQL?

PostgreSQL comes with three data types for storing characters. char, varchar and text. What we often see at our customers is, that varchar(n) is used when they want to store characters and limit the amount of characters which are allowed to store into the field/column. Before we go into the details: The only reason you might want to use char… 

TOASTing in PostgreSQL, let’s see it in action

The last two posts introduced TOASTing strategies and how TOAST tables look like. Have a look at those posts if you are not yet familiar with TOAST in PostgreSQL. In this post we’ll look a bit under the hood to understand how TOASTing really works. We’ll use the same table as in the last post, which is still there but… 

TOASTing in PostgreSQL, TOAST tables

Make sure that you read the last post about TOASTing strategies in PostgreSQL before you continue with this one, at least if you are not familiar with the previous topic. The strategies we looked at are one important implementation detail you need to be aware of when it comes to TOASTing. What we didn’t look at until know, is how… 

TOASTing strategies in PostgreSQL

In Oracle a single row can span more than one block, which is called row chaining. As PostgreSQL does not allow a row to span multiple blocks, there needs to be a way to work around that. The default block size in PostgreSQL is 8kB (same as in Oracle), so something needs to happen when a row comes in which… 

PostgreSQL Cluster using repmgr

With this blog I describe the installation of a PostgreSQL Cluster using repmgr instead of Patroni. Repmgr was originally developed by 2ndQuadrant which is now part of EDB and EDB decided for the 2ndQuadrant tools for the future, barman as backup solution from 2ndQ survives, Bart is canceled by EDB. At first I do a setup of three virtual machines… 

PostgreSQL on 80 core ARM Server

This Blog is about intallation and testing PostgreSQL 14 latest on an ARM based 80 core Server using Rocky Linux 8.6. Many thanks to Happyware for providing the machine used for this Blog. https://happyware.com/ The machine used for this Blog is a Gigabyte R272-P30 with Ampere Altra Q80-30 CPU, 80 cores at 3GHz. https://happyware.com/gigabyte/arm-server-ampere-altra-r272-p30-q80-30/6nr272p30mr-00 Very nice IPMI: CPU Invetory within…