CYBERTEC Logo

Patroni Contributors Meeting 2024 in Munich

04.2024 / Category: / Tags: |

The day before pgconf.de 2024 in Munich, a few of the Patroni project's contributors met to discuss the past, present and future of this framework for PostgreSQL HA. Various people and companies support and benefit from Patroni. Ants Aasma and I attended the meeting on behalf of CYBERTEC.

Patroni is one of the leading solutions for enabling highly available PostgreSQL database clusters, can be used in both simple and complex architectures, with small or large databases, on various operating systems.
While Patroni was initially created at online retailer Zalando, the project is now developed in coordination by engineers from multiple companies.
As Patroni is an open-source project that is used in many important and even critical deployments, an active, dedicated, purposeful development and agreement among key contributors and users is crucial to its continued usage and success.

The past

Semantic Versioning and Support

One crucial change established in the past year was the introduction of semantic versioning.
Since Version 3.1.0 the least significant digit in the version number is dedicated to bugfix releases, the second least significant digit denotes minor updates.
Finally, the most significant digit indicates major upgrades that introduce substantial changes. These upgrade will require cautious planning and might break compatibility with previous releases.

In the future, development will happen on the master branch. Bugfixes are then cherry-picked and applied to branches dedicated to minor releases, such as REL_3_1 or REL_3_2.
At the moment, there is no specific schedule for bugfix, minor, or major releases. Such updates will be issued as necessary and appropriate.
There are currently no plans to provide LTS releases - Patroni has a track record of being a reliable and dependable software - however, if individuals or organizations are interested in the maintenance of such releases, they are welcome to do so.
Typically, existing Patroni clusters do not have strict quirements to stick to a certain minor version, and such updates are usually trivial to apply. New clusters can mostly use the latest Patroni version safely, and it might even be required to do so when support for the newest PostgreSQL releases is needed.

Code Quality

Another change that has been implemented recently is the introduction of type annotations into all Patroni source code. Combined with close to complete code coverage in tests, this underlines the quality standards set for Patroni development.

The future

Wording Consistency

Next on the agenda are plans for the next major version of Patroni to replace all occurrences of the word "master" with "primary". This is in accordance with how the PostgreSQL project refers to the roles of database instances in binary streaming replication clusters.

New Features

There have been further discussions on proposed feature additions to Patroni, development goals and long term purpose of the project.
CYBERTEC is excited to be part of the journey and is happy to have contributed to this meeting.

For instance, CYBERTEC is actively developing and exploring different approaches to enabling replication and automatic failover with Patroni across multiple data centers. While users usually want to stick to one data center as long as possible, they do not want to discount their availability by making the switchover a manual operation.

5 1 vote
Article Rating
Subscribe
Notify of
guest
0 Comments
Inline Feedbacks
View all comments
CYBERTEC Logo white
CYBERTEC PostgreSQL International GmbH
Römerstraße 19
2752 Wöllersdorf
Austria

+43 (0) 2622 93022-0
office@cybertec.at

Get the newest PostgreSQL Info & Tools


    This site is protected by reCAPTCHA and the Google Privacy Policy & Terms of Service apply.

    ©
    2024
    CYBERTEC PostgreSQL International GmbH
    phone-handsetmagnifiercrosscross-circle
    0
    Would love your thoughts, please comment.x
    ()
    x
    linkedin facebook pinterest youtube rss twitter instagram facebook-blank rss-blank linkedin-blank pinterest youtube twitter instagram