<?xml version='1.0' encoding='utf-8' ?>
<iCalendar xmlns:pentabarf='http://pentabarf.org' xmlns:xCal='urn:ietf:params:xml:ns:xcal'>
    <vcalendar>
        <version>2.0</version>
        <prodid>-//Pentabarf//Schedule//EN</prodid>
        <x-wr-caldesc></x-wr-caldesc>
        <x-wr-calname></x-wr-calname>
        
        <vevent>
            <method>PUBLISH</method>
            <uid>HCKQAD@@cfp.p2d2.cz</uid>
            <pentabarf:event-id></pentabarf:event-id>
            <pentabarf:event-slug>-HCKQAD</pentabarf:event-slug>
            <pentabarf:title>PostgreSQL Query Optimization: How to Write Efficient Queries</pentabarf:title>
            <pentabarf:subtitle></pentabarf:subtitle>
            <pentabarf:language>en</pentabarf:language>
            <pentabarf:language-code>en</pentabarf:language-code>
            <dtstart>20260127T090000</dtstart>
            <dtend>20260127T123000</dtend>
            <duration>3.03000</duration>
            <summary>PostgreSQL Query Optimization: How to Write Efficient Queries</summary>
            <description>Upon workshop completion, the participants will learn to:
- Identify optimization goals in OLTP (Online Transaction Processing)
and OLAP (Online Analytical Processing) systems
- Read and understand PostgreSQL execution plans
- Identify indexes that will improve query performance
- Optimize full table scans
- Distinguish between long queries and short queries
- Choose the correct optimization technique for each query type
- We will conclude the workshop by presenting  the Ultimate Optimization Algorithm</description>
            <class>PUBLIC</class>
            <status>CONFIRMED</status>
            <category>Workshop (half-day)</category>
            <url>https://cfp.p2d2.cz/2026/talk/HCKQAD/</url>
            <location>T9:301</location>
            
            <attendee>Hettie Dombrovskaya</attendee>
            
        </vevent>
        
        <vevent>
            <method>PUBLISH</method>
            <uid>3TMCQN@@cfp.p2d2.cz</uid>
            <pentabarf:event-id></pentabarf:event-id>
            <pentabarf:event-slug>-3TMCQN</pentabarf:event-slug>
            <pentabarf:title>PgBouncer - Everything, Everywhere, All At Once about this tool</pentabarf:title>
            <pentabarf:subtitle></pentabarf:subtitle>
            <pentabarf:language>en</pentabarf:language>
            <pentabarf:language-code>en</pentabarf:language-code>
            <dtstart>20260127T133000</dtstart>
            <dtend>20260127T170000</dtend>
            <duration>3.03000</duration>
            <summary>PgBouncer - Everything, Everywhere, All At Once about this tool</summary>
            <description></description>
            <class>PUBLIC</class>
            <status>CONFIRMED</status>
            <category>Workshop (half-day)</category>
            <url>https://cfp.p2d2.cz/2026/talk/3TMCQN/</url>
            <location>T9:301</location>
            
            <attendee>Josef Machytka</attendee>
            
        </vevent>
        
        <vevent>
            <method>PUBLISH</method>
            <uid>AFFEUF@@cfp.p2d2.cz</uid>
            <pentabarf:event-id></pentabarf:event-id>
            <pentabarf:event-slug>-AFFEUF</pentabarf:event-slug>
            <pentabarf:title>Running PostgreSQL in Kubernetes with CloudNativePG</pentabarf:title>
            <pentabarf:subtitle></pentabarf:subtitle>
            <pentabarf:language>en</pentabarf:language>
            <pentabarf:language-code>en</pentabarf:language-code>
            <dtstart>20260127T090000</dtstart>
            <dtend>20260127T123000</dtend>
            <duration>3.03000</duration>
            <summary>Running PostgreSQL in Kubernetes with CloudNativePG</summary>
            <description>Following the instructions from the CNPG Playground project, anyone will create Kubernetes clusters on their own laptop using &quot;kind&quot;.

While the kind clusters will be created on each laptop, we will introduce the CNPG operator and basic concepts. We will walk the attendees to understand a bit of the Kubernetes world and the problems we are trying to solve with this PostgreSQL operator.

The course will cover the following points:

* Introduction to CloudNativePG (CNPG)
* Installation of the kubectl plugin for CNPG
* First deployment of a CNPG cluster
* PostgreSQL configuration, databases, and roles management
* Database import
* Setup and execution of the first backup
* PostgreSQL Extensions
* Incident simulation (failover showcase)
* Log reading
* Upgrade of the Operator and the PostgreSQL version (minor, and major)
* Restore from a backup.

To speed up the process, we will provide a link to download all the commands to actually follow the workshop in real time, without wasting precious minutes writing them or looking for typos in case of issues.

**Requirements**

To run the playground environment on their own laptops, participants only need to have one of the following installed:

* Docker Desktop
* Rancher Desktop

Either of these tools ensures that containers run consistently across all major operating systems—Windows, Linux, and macOS—without requiring any additional configuration.</description>
            <class>PUBLIC</class>
            <status>CONFIRMED</status>
            <category>Workshop (half-day)</category>
            <url>https://cfp.p2d2.cz/2026/talk/AFFEUF/</url>
            <location>T9:302</location>
            
            <attendee>Jonathan</attendee>
            
            <attendee>Danish</attendee>
            
        </vevent>
        
        <vevent>
            <method>PUBLISH</method>
            <uid>MDZLK7@@cfp.p2d2.cz</uid>
            <pentabarf:event-id></pentabarf:event-id>
            <pentabarf:event-slug>-MDZLK7</pentabarf:event-slug>
            <pentabarf:title>pgwatch: From Zero to Hero!</pentabarf:title>
            <pentabarf:subtitle></pentabarf:subtitle>
            <pentabarf:language>en</pentabarf:language>
            <pentabarf:language-code>en</pentabarf:language-code>
            <dtstart>20260127T133000</dtstart>
            <dtend>20260127T170000</dtend>
            <duration>3.03000</duration>
            <summary>pgwatch: From Zero to Hero!</summary>
            <description>In this hands-on workshop, attendees will learn how to set up and operate **pgwatch**, a powerful open-source monitoring system designed specifically for PostgreSQL. Starting from a clean environment, we will go step-by-step through deploying pgwatch, connecting monitored databases, and exploring built-in Grafana dashboards. Participants will also learn best practices for managing pgwatch efficiently in production environments—covering configuration, data retention, and performance considerations.

**Key topics covered:**

* Introduction to pgwatch architecture and components
* Installing pgwatch from scratch (Docker or native setup)
* Connecting PostgreSQL instances and collecting metrics
* Understanding key metrics and visualizations in Grafana
* Managing multiple clusters and optimizing data storage
* Practical tips for troubleshooting and maintenance

**Expected outcomes:**
By the end of the session, participants will have a fully functional monitoring setup for PostgreSQL and the knowledge to adapt pgwatch to their own environments.

**Prerequisites:**

* Basic familiarity with PostgreSQL administration
* Laptop with Docker or a PostgreSQL environment available (any OS is fine — pgwatch is cross-platform)</description>
            <class>PUBLIC</class>
            <status>CONFIRMED</status>
            <category>Workshop (half-day)</category>
            <url>https://cfp.p2d2.cz/2026/talk/MDZLK7/</url>
            <location>T9:302</location>
            
            <attendee>Pavlo Golub</attendee>
            
        </vevent>
        
        <vevent>
            <method>PUBLISH</method>
            <uid>BRPVYB@@cfp.p2d2.cz</uid>
            <pentabarf:event-id></pentabarf:event-id>
            <pentabarf:event-slug>-BRPVYB</pentabarf:event-slug>
            <pentabarf:title>Introduction to Postgres hacking</pentabarf:title>
            <pentabarf:subtitle></pentabarf:subtitle>
            <pentabarf:language>en</pentabarf:language>
            <pentabarf:language-code>en</pentabarf:language-code>
            <dtstart>20260127T090000</dtstart>
            <dtend>20260127T170000</dtend>
            <duration>8.00000</duration>
            <summary>Introduction to Postgres hacking</summary>
            <description>The planned agenda is roughly this:

* Brief introduction into the development process and how it’s organized (mailing lists, commit fests, patch submissions, buildfarm, tools used to organize all this). We might also discuss how this might evolve in the future.
* Walk through the source code, to explain how it’s organized, what are the basic modules, where to look for stuff, what tools are available, etc.
* Basic work with the code (cloning, using configure, running various types of tests).
* Advanced stuff (using github CI, ...)
* Postgres-specific infrastructure and coding idioms (Datum, SQL vs. C functions, memory contexts and palloc, error logging, ...).

We plan to do small exercises to get some practical experience with these topics, so bring your Linux laptop with a recent distribution (Fedora, Ubuntu, Debian, ...). You won’t need anything very special, just console, git, gcc, and your favorite editor to write C code (we’ll setup the environment in the first section).

We expect basic knowledge of C, but we don’t expect you to know the strange/unique C stuff in Postgres. That’s what the workshop is meant to address. Prior experience with autotools is an advantage, not a requirement. After the workshop you should be familiar with how the Postgres project is organized, and with the fundamental tools and infrastructure used by Postgres. You may not be able to understand every patch right away, but you should have the foundations to quickly learn.</description>
            <class>PUBLIC</class>
            <status>CONFIRMED</status>
            <category>Workshop (full-day)</category>
            <url>https://cfp.p2d2.cz/2026/talk/BRPVYB/</url>
            <location>T9:347</location>
            
            <attendee>Tomas Vondra</attendee>
            
            <attendee>Nazir Bilal Yavuz</attendee>
            
        </vevent>
        
        <vevent>
            <method>PUBLISH</method>
            <uid>WQX3FA@@cfp.p2d2.cz</uid>
            <pentabarf:event-id></pentabarf:event-id>
            <pentabarf:event-slug>-WQX3FA</pentabarf:event-slug>
            <pentabarf:title>The Art of Keeping PostgreSQL Clean: Internals, Autovacuum, and Controlled Deletion</pentabarf:title>
            <pentabarf:subtitle></pentabarf:subtitle>
            <pentabarf:language>en</pentabarf:language>
            <pentabarf:language-code>en</pentabarf:language-code>
            <dtstart>20260128T092000</dtstart>
            <dtend>20260128T101000</dtend>
            <duration>0.05000</duration>
            <summary>The Art of Keeping PostgreSQL Clean: Internals, Autovacuum, and Controlled Deletion</summary>
            <description></description>
            <class>PUBLIC</class>
            <status>CONFIRMED</status>
            <category>Talk</category>
            <url>https://cfp.p2d2.cz/2026/talk/WQX3FA/</url>
            <location>105</location>
            
            <attendee>Cagri Biroglu</attendee>
            
        </vevent>
        
        <vevent>
            <method>PUBLISH</method>
            <uid>HGLVLL@@cfp.p2d2.cz</uid>
            <pentabarf:event-id></pentabarf:event-id>
            <pentabarf:event-slug>-HGLVLL</pentabarf:event-slug>
            <pentabarf:title>SQL Injection Is Boring - Advanced Threats You’re Not Watching</pentabarf:title>
            <pentabarf:subtitle></pentabarf:subtitle>
            <pentabarf:language>en</pentabarf:language>
            <pentabarf:language-code>en</pentabarf:language-code>
            <dtstart>20260128T101500</dtstart>
            <dtend>20260128T110500</dtend>
            <duration>0.05000</duration>
            <summary>SQL Injection Is Boring - Advanced Threats You’re Not Watching</summary>
            <description></description>
            <class>PUBLIC</class>
            <status>CONFIRMED</status>
            <category>Talk</category>
            <url>https://cfp.p2d2.cz/2026/talk/HGLVLL/</url>
            <location>105</location>
            
            <attendee>Kranthi Kiran Burada</attendee>
            
            <attendee>Narendra Tawar</attendee>
            
        </vevent>
        
        <vevent>
            <method>PUBLISH</method>
            <uid>GDJ7SE@@cfp.p2d2.cz</uid>
            <pentabarf:event-id></pentabarf:event-id>
            <pentabarf:event-slug>-GDJ7SE</pentabarf:event-slug>
            <pentabarf:title>Why your PostgreSQL tuning guide might be wrong (and what to do about it)</pentabarf:title>
            <pentabarf:subtitle></pentabarf:subtitle>
            <pentabarf:language>en</pentabarf:language>
            <pentabarf:language-code>en</pentabarf:language-code>
            <dtstart>20260128T111000</dtstart>
            <dtend>20260128T120000</dtend>
            <duration>0.05000</duration>
            <summary>Why your PostgreSQL tuning guide might be wrong (and what to do about it)</summary>
            <description></description>
            <class>PUBLIC</class>
            <status>CONFIRMED</status>
            <category>Talk</category>
            <url>https://cfp.p2d2.cz/2026/talk/GDJ7SE/</url>
            <location>105</location>
            
            <attendee>Mohsin Ejaz</attendee>
            
        </vevent>
        
        <vevent>
            <method>PUBLISH</method>
            <uid>RHHJDT@@cfp.p2d2.cz</uid>
            <pentabarf:event-id></pentabarf:event-id>
            <pentabarf:event-slug>-RHHJDT</pentabarf:event-slug>
            <pentabarf:title>lightning talks</pentabarf:title>
            <pentabarf:subtitle></pentabarf:subtitle>
            <pentabarf:language>cs</pentabarf:language>
            <pentabarf:language-code>cs</pentabarf:language-code>
            <dtstart>20260128T131000</dtstart>
            <dtend>20260128T141000</dtend>
            <duration>1.00000</duration>
            <summary>lightning talks</summary>
            <description></description>
            <class>PUBLIC</class>
            <status>CONFIRMED</status>
            <category>Talk</category>
            <url>https://cfp.p2d2.cz/2026/talk/RHHJDT/</url>
            <location>105</location>
            
            <attendee>Pavlo Golub</attendee>
            
        </vevent>
        
        <vevent>
            <method>PUBLISH</method>
            <uid>B8QJAL@@cfp.p2d2.cz</uid>
            <pentabarf:event-id></pentabarf:event-id>
            <pentabarf:event-slug>-B8QJAL</pentabarf:event-slug>
            <pentabarf:title>What you should know about constraints in PostgreSQL (and what&#x27;s new in 18)</pentabarf:title>
            <pentabarf:subtitle></pentabarf:subtitle>
            <pentabarf:language>en</pentabarf:language>
            <pentabarf:language-code>en</pentabarf:language-code>
            <dtstart>20260128T141500</dtstart>
            <dtend>20260128T150500</dtend>
            <duration>0.05000</duration>
            <summary>What you should know about constraints in PostgreSQL (and what&#x27;s new in 18)</summary>
            <description></description>
            <class>PUBLIC</class>
            <status>CONFIRMED</status>
            <category>Talk</category>
            <url>https://cfp.p2d2.cz/2026/talk/B8QJAL/</url>
            <location>105</location>
            
            <attendee>Gulcin Yildirim Jelinek</attendee>
            
        </vevent>
        
        <vevent>
            <method>PUBLISH</method>
            <uid>GMZKNF@@cfp.p2d2.cz</uid>
            <pentabarf:event-id></pentabarf:event-id>
            <pentabarf:event-slug>-GMZKNF</pentabarf:event-slug>
            <pentabarf:title>Vacuuming Large Tables: How Recent Postgres Changes Further Enable Mission Critical Workloads</pentabarf:title>
            <pentabarf:subtitle></pentabarf:subtitle>
            <pentabarf:language>en</pentabarf:language>
            <pentabarf:language-code>en</pentabarf:language-code>
            <dtstart>20260128T153500</dtstart>
            <dtend>20260128T162500</dtend>
            <duration>0.05000</duration>
            <summary>Vacuuming Large Tables: How Recent Postgres Changes Further Enable Mission Critical Workloads</summary>
            <description>We have all heard about Postgres vacuum horror stories and tales of transaction wraparound disasters. Even if you&#x27;ve never been through one yourself, you may be concerned that you might someday experience it, or maybe you even know people who have avoided Postgres altogether due to fear of it happening to them. But it doesn&#x27;t have to be this way.

In this talk, we will explore this topic through a review of a real-world wraparound incident, walking through the challenges and hope offered by changes in the last several Postgres releases. We&#x27;ll explore the inner workings of the Postgres vacuum process, its dual purpose of managing both disk bloat and transaction IDs (XIDs), and how recent innovations have improved this process, particularly for large tables with heavy transaction loads. We&#x27;ll dive deep into key features like: - How index de-duplication minimizes vacuum workloads and improves efficiency. - How on/off index vacuuming gives you better control during maintenance windows. - Why one key autovacuum enhancement may be the key for eliminating XID wraparounds.

Beyond theory, we&#x27;ll revisit the real-world incident and see how each new Postgres feature could have helped mitigate the impact. While no single change is a silver bullet, the combined effect is significant. We&#x27;ll also explore how the radix tree implementation in Postgres 17 might be the possible final piece of the puzzle for providing a manageable solution to XID wraparound risks.

This talk equips DBAs with a deeper understanding of recent Postgres advancements and their practical application in managing high-transactional and/or mission-critical workloads. You&#x27;ll leave with actionable insights to optimize your Postgres environment and concrete arguments to convince management that it is worth the upgrade for the potential to minimize the risk of XID wraparound incidents.</description>
            <class>PUBLIC</class>
            <status>CONFIRMED</status>
            <category>Talk</category>
            <url>https://cfp.p2d2.cz/2026/talk/GMZKNF/</url>
            <location>105</location>
            
            <attendee>Robert Treat</attendee>
            
        </vevent>
        
        <vevent>
            <method>PUBLISH</method>
            <uid>KGNTVC@@cfp.p2d2.cz</uid>
            <pentabarf:event-id></pentabarf:event-id>
            <pentabarf:event-slug>-KGNTVC</pentabarf:event-slug>
            <pentabarf:title>PostgreSQL Query Performance Monitoring for the Absolute Beginner</pentabarf:title>
            <pentabarf:subtitle></pentabarf:subtitle>
            <pentabarf:language>en</pentabarf:language>
            <pentabarf:language-code>en</pentabarf:language-code>
            <dtstart>20260128T163000</dtstart>
            <dtend>20260128T172000</dtend>
            <duration>0.05000</duration>
            <summary>PostgreSQL Query Performance Monitoring for the Absolute Beginner</summary>
            <description></description>
            <class>PUBLIC</class>
            <status>CONFIRMED</status>
            <category>Talk</category>
            <url>https://cfp.p2d2.cz/2026/talk/KGNTVC/</url>
            <location>105</location>
            
            <attendee>Grant Fritchey</attendee>
            
        </vevent>
        
        <vevent>
            <method>PUBLISH</method>
            <uid>ZFWHEY@@cfp.p2d2.cz</uid>
            <pentabarf:event-id></pentabarf:event-id>
            <pentabarf:event-slug>-ZFWHEY</pentabarf:event-slug>
            <pentabarf:title>B-Tree Index Access Paths: Tuning Today and Tomorrow”</pentabarf:title>
            <pentabarf:subtitle></pentabarf:subtitle>
            <pentabarf:language>en</pentabarf:language>
            <pentabarf:language-code>en</pentabarf:language-code>
            <dtstart>20260128T092000</dtstart>
            <dtend>20260128T101000</dtend>
            <duration>0.05000</duration>
            <summary>B-Tree Index Access Paths: Tuning Today and Tomorrow”</summary>
            <description>Whatever will fit in 45 minutes:

-Index tuning introduction - fast, effective, impactful
-Table without any index
-B-Tree: the basic index
-Why does the B-Tree index work
-Index Seek
-Index Scan
-Index Skip Scan
-Real-life issues with the Skip Scan in Oracle
-How to avoid these issues in PotsgreSQL
-Automated indexing - DB Booster
-The future of the databases - self-tuning engines</description>
            <class>PUBLIC</class>
            <status>CONFIRMED</status>
            <category>Talk</category>
            <url>https://cfp.p2d2.cz/2026/talk/ZFWHEY/</url>
            <location>155</location>
            
            <attendee>Jakub Kuzela</attendee>
            
        </vevent>
        
        <vevent>
            <method>PUBLISH</method>
            <uid>A3ZQRJ@@cfp.p2d2.cz</uid>
            <pentabarf:event-id></pentabarf:event-id>
            <pentabarf:event-slug>-A3ZQRJ</pentabarf:event-slug>
            <pentabarf:title>What&#x27;s Missing in Postgres?</pentabarf:title>
            <pentabarf:subtitle></pentabarf:subtitle>
            <pentabarf:language>en</pentabarf:language>
            <pentabarf:language-code>en</pentabarf:language-code>
            <dtstart>20260128T101500</dtstart>
            <dtend>20260128T110500</dtend>
            <duration>0.05000</duration>
            <summary>What&#x27;s Missing in Postgres?</summary>
            <description></description>
            <class>PUBLIC</class>
            <status>CONFIRMED</status>
            <category>Talk</category>
            <url>https://cfp.p2d2.cz/2026/talk/A3ZQRJ/</url>
            <location>155</location>
            
            <attendee>Bruce Momjian</attendee>
            
        </vevent>
        
        <vevent>
            <method>PUBLISH</method>
            <uid>NFDMRG@@cfp.p2d2.cz</uid>
            <pentabarf:event-id></pentabarf:event-id>
            <pentabarf:event-slug>-NFDMRG</pentabarf:event-slug>
            <pentabarf:title>Do ORMs make you happy OR Mad?</pentabarf:title>
            <pentabarf:subtitle></pentabarf:subtitle>
            <pentabarf:language>cs</pentabarf:language>
            <pentabarf:language-code>cs</pentabarf:language-code>
            <dtstart>20260128T111000</dtstart>
            <dtend>20260128T120000</dtend>
            <duration>0.05000</duration>
            <summary>Do ORMs make you happy OR Mad?</summary>
            <description></description>
            <class>PUBLIC</class>
            <status>CONFIRMED</status>
            <category>Talk</category>
            <url>https://cfp.p2d2.cz/2026/talk/NFDMRG/</url>
            <location>155</location>
            
            <attendee>Petr Šmejkal</attendee>
            
        </vevent>
        
        <vevent>
            <method>PUBLISH</method>
            <uid>JD8TSM@@cfp.p2d2.cz</uid>
            <pentabarf:event-id></pentabarf:event-id>
            <pentabarf:event-slug>-JD8TSM</pentabarf:event-slug>
            <pentabarf:title>Operational hazards of managing PostgreSQL DBs over 100TB</pentabarf:title>
            <pentabarf:subtitle></pentabarf:subtitle>
            <pentabarf:language>en</pentabarf:language>
            <pentabarf:language-code>en</pentabarf:language-code>
            <dtstart>20260128T141500</dtstart>
            <dtend>20260128T150500</dtend>
            <duration>0.05000</duration>
            <summary>Operational hazards of managing PostgreSQL DBs over 100TB</summary>
            <description></description>
            <class>PUBLIC</class>
            <status>CONFIRMED</status>
            <category>Talk</category>
            <url>https://cfp.p2d2.cz/2026/talk/JD8TSM/</url>
            <location>155</location>
            
            <attendee>Teresa Lopes</attendee>
            
        </vevent>
        
        <vevent>
            <method>PUBLISH</method>
            <uid>YCZ9KL@@cfp.p2d2.cz</uid>
            <pentabarf:event-id></pentabarf:event-id>
            <pentabarf:event-slug>-YCZ9KL</pentabarf:event-slug>
            <pentabarf:title>A benchmark study on the impact of PostgreSQL server parameter tuning</pentabarf:title>
            <pentabarf:subtitle></pentabarf:subtitle>
            <pentabarf:language>en</pentabarf:language>
            <pentabarf:language-code>en</pentabarf:language-code>
            <dtstart>20260128T153500</dtstart>
            <dtend>20260128T162500</dtend>
            <duration>0.05000</duration>
            <summary>A benchmark study on the impact of PostgreSQL server parameter tuning</summary>
            <description></description>
            <class>PUBLIC</class>
            <status>CONFIRMED</status>
            <category>Talk</category>
            <url>https://cfp.p2d2.cz/2026/talk/YCZ9KL/</url>
            <location>155</location>
            
            <attendee>Luigi Nardi</attendee>
            
        </vevent>
        
        <vevent>
            <method>PUBLISH</method>
            <uid>Z9FU8V@@cfp.p2d2.cz</uid>
            <pentabarf:event-id></pentabarf:event-id>
            <pentabarf:event-slug>-Z9FU8V</pentabarf:event-slug>
            <pentabarf:title>It works on my database - Regression testing of SQL queries</pentabarf:title>
            <pentabarf:subtitle></pentabarf:subtitle>
            <pentabarf:language>en</pentabarf:language>
            <pentabarf:language-code>en</pentabarf:language-code>
            <dtstart>20260128T163000</dtstart>
            <dtend>20260128T172000</dtend>
            <duration>0.05000</duration>
            <summary>It works on my database - Regression testing of SQL queries</summary>
            <description>Target Audience:

- Application developers who work with PostgreSQL daily
- Teams struggling with SQL-related production incidents
- DBAs looking to improve query quality from development teams

While the talk introduces RegreSQL as an open source project, it&#x27;s meant to open discussion on the wider topics of improving developer experience and stability of production deployments in database applications backed by PostgreSQL.</description>
            <class>PUBLIC</class>
            <status>CONFIRMED</status>
            <category>Talk</category>
            <url>https://cfp.p2d2.cz/2026/talk/Z9FU8V/</url>
            <location>155</location>
            
            <attendee>Radim Marek</attendee>
            
        </vevent>
        
        <vevent>
            <method>PUBLISH</method>
            <uid>7GVFDS@@cfp.p2d2.cz</uid>
            <pentabarf:event-id></pentabarf:event-id>
            <pentabarf:event-slug>-7GVFDS</pentabarf:event-slug>
            <pentabarf:title>Rediscovering PgQ</pentabarf:title>
            <pentabarf:subtitle></pentabarf:subtitle>
            <pentabarf:language>en</pentabarf:language>
            <pentabarf:language-code>en</pentabarf:language-code>
            <dtstart>20260128T092000</dtstart>
            <dtend>20260128T101000</dtend>
            <duration>0.05000</duration>
            <summary>Rediscovering PgQ</summary>
            <description></description>
            <class>PUBLIC</class>
            <status>CONFIRMED</status>
            <category>Talk</category>
            <url>https://cfp.p2d2.cz/2026/talk/7GVFDS/</url>
            <location>107</location>
            
            <attendee>Alexander Kukushkin</attendee>
            
        </vevent>
        
        <vevent>
            <method>PUBLISH</method>
            <uid>CKPR7B@@cfp.p2d2.cz</uid>
            <pentabarf:event-id></pentabarf:event-id>
            <pentabarf:event-slug>-CKPR7B</pentabarf:event-slug>
            <pentabarf:title>Switching Me Softly: Zero-downtime Major PostrgreSQL Upgrades at Fresha</pentabarf:title>
            <pentabarf:subtitle></pentabarf:subtitle>
            <pentabarf:language>en</pentabarf:language>
            <pentabarf:language-code>en</pentabarf:language-code>
            <dtstart>20260128T101500</dtstart>
            <dtend>20260128T110500</dtend>
            <duration>0.05000</duration>
            <summary>Switching Me Softly: Zero-downtime Major PostrgreSQL Upgrades at Fresha</summary>
            <description>This talk expands on Fresha’s Switching Me Softly framework: a production-tested zero-downtime upgrade path from PostgreSQL 12 → 17.

It covers:

* Logical replication with WAL origin alignment

* Coordinating Debezium CDC and outbox connectors

* PgBouncer two-phase switchover (read-only → write)

* YAML-driven orchestration and dry-run safety modes


We upgraded dozens of databases, including multi-terabyte clusters, without a second of downtime.
The session focuses on real engineering trade-offs what worked, what didn’t, and how to make major PostgreSQL upgrades safe, reversible, and boring.</description>
            <class>PUBLIC</class>
            <status>CONFIRMED</status>
            <category>Talk</category>
            <url>https://cfp.p2d2.cz/2026/talk/CKPR7B/</url>
            <location>107</location>
            
            <attendee>Anton Borisov</attendee>
            
        </vevent>
        
        <vevent>
            <method>PUBLISH</method>
            <uid>WSQKUL@@cfp.p2d2.cz</uid>
            <pentabarf:event-id></pentabarf:event-id>
            <pentabarf:event-slug>-WSQKUL</pentabarf:event-slug>
            <pentabarf:title>TimescaleDB - collecting and visualizing IOT data</pentabarf:title>
            <pentabarf:subtitle></pentabarf:subtitle>
            <pentabarf:language>cs</pentabarf:language>
            <pentabarf:language-code>cs</pentabarf:language-code>
            <dtstart>20260128T111000</dtstart>
            <dtend>20260128T120000</dtend>
            <duration>0.05000</duration>
            <summary>TimescaleDB - collecting and visualizing IOT data</summary>
            <description></description>
            <class>PUBLIC</class>
            <status>CONFIRMED</status>
            <category>Talk</category>
            <url>https://cfp.p2d2.cz/2026/talk/WSQKUL/</url>
            <location>107</location>
            
            <attendee>Michal Bartak</attendee>
            
        </vevent>
        
        <vevent>
            <method>PUBLISH</method>
            <uid>UEBNWK@@cfp.p2d2.cz</uid>
            <pentabarf:event-id></pentabarf:event-id>
            <pentabarf:event-slug>-UEBNWK</pentabarf:event-slug>
            <pentabarf:title>Hey, I&#x27;m using that! Fixing lock contention in OLTP.</pentabarf:title>
            <pentabarf:subtitle></pentabarf:subtitle>
            <pentabarf:language>en</pentabarf:language>
            <pentabarf:language-code>en</pentabarf:language-code>
            <dtstart>20260128T141500</dtstart>
            <dtend>20260128T150500</dtend>
            <duration>0.05000</duration>
            <summary>Hey, I&#x27;m using that! Fixing lock contention in OLTP.</summary>
            <description></description>
            <class>PUBLIC</class>
            <status>CONFIRMED</status>
            <category>Talk</category>
            <url>https://cfp.p2d2.cz/2026/talk/UEBNWK/</url>
            <location>107</location>
            
            <attendee>Ants Aasma</attendee>
            
        </vevent>
        
        <vevent>
            <method>PUBLISH</method>
            <uid>Q7EWET@@cfp.p2d2.cz</uid>
            <pentabarf:event-id></pentabarf:event-id>
            <pentabarf:event-slug>-Q7EWET</pentabarf:event-slug>
            <pentabarf:title>Cloud-native Postgres observability: from client apps to underlying cloud resources</pentabarf:title>
            <pentabarf:subtitle></pentabarf:subtitle>
            <pentabarf:language>en</pentabarf:language>
            <pentabarf:language-code>en</pentabarf:language-code>
            <dtstart>20260128T153500</dtstart>
            <dtend>20260128T162500</dtend>
            <duration>0.05000</duration>
            <summary>Cloud-native Postgres observability: from client apps to underlying cloud resources</summary>
            <description></description>
            <class>PUBLIC</class>
            <status>CONFIRMED</status>
            <category>Talk</category>
            <url>https://cfp.p2d2.cz/2026/talk/Q7EWET/</url>
            <location>107</location>
            
            <attendee>Peter Zaitsev</attendee>
            
        </vevent>
        
        <vevent>
            <method>PUBLISH</method>
            <uid>9AHQ7F@@cfp.p2d2.cz</uid>
            <pentabarf:event-id></pentabarf:event-id>
            <pentabarf:event-slug>-9AHQ7F</pentabarf:event-slug>
            <pentabarf:title>Knocking at the Door: Fuzzing libpq and PgBouncer</pentabarf:title>
            <pentabarf:subtitle></pentabarf:subtitle>
            <pentabarf:language>en</pentabarf:language>
            <pentabarf:language-code>en</pentabarf:language-code>
            <dtstart>20260128T163000</dtstart>
            <dtend>20260128T172000</dtend>
            <duration>0.05000</duration>
            <summary>Knocking at the Door: Fuzzing libpq and PgBouncer</summary>
            <description>In this session you will learn:
* what fuzzing is and why it finds bugs other techniques miss
* which PostgreSQL surfaces make good fuzzing targets and why
* how to apply fuzzing to Postgres networking components (libpq, PgBouncer)

If you’re a PostgreSQL developer, this talk will add another tool for improving the stability and security of the projects you build.</description>
            <class>PUBLIC</class>
            <status>CONFIRMED</status>
            <category>Talk</category>
            <url>https://cfp.p2d2.cz/2026/talk/9AHQ7F/</url>
            <location>107</location>
            
            <attendee>Adam Wolk</attendee>
            
        </vevent>
        
    </vcalendar>
</iCalendar>
