Episódios

  • pg_wait_tracer
    Apr 24 2026

    Nik and Michael are joined by Dmitry Fomin to discuss his new tool pg_wait_tracer, as well as changes that could be made to core to allow wait event tracing with lower overhead, and on managed services.

    Here are some links to things they mentioned:

    • Dmitry Fomin https://postgres.fm/people/dmitry-fomin
    • pg_wait_tracer https://github.com/DmitryNFomin/pg_wait_tracer
    • pg_wait_sampling https://github.com/postgrespro/pg_wait_sampling
    • pg_10046 https://github.com/DmitryNFomin/pg_10046
    • Jeremy Schneider reply on LinkedIn https://www.linkedin.com/feed/update/urn:li:activity:7414966981847748608
    • RDS for PostgreSQL wait event docs https://docs.aws.amazon.com/AmazonRDS/latest/UserGuide/PostgreSQL.Tuning.concepts.summary.html
    • Custom wait events for extensions (added in PostgreSQL 17) https://www.postgresql.org/docs/current/xfunc-c.html#XFUNC-ADDIN-WAIT-EVENTS
    • Hacking Postgres with Dmitry, Kirk, and Nik (Part 1) https://www.youtube.com/watch?v=3Gtuc2lnnsE
    • Hacking Postgres with Dmitry, Kirk, and Nik (Part 2) https://www.youtube.com/watch?v=6kqpjnpl5Gc
    • Tanel Poder https://tanelpoder.com/about/
    • USDT static tracepoints for wait event tracing (proof of concept by Nik) https://github.com/NikolayS/postgres/pull/18
    • Add wait_event_timing: Oracle-style wait event instrumentation (patch by Dmitry) https://github.com/DmitryNFomin/postgres/pull/1
    • PgQue benchmarks https://github.com/NikolayS/pgque/blob/main/docs/benchmarks.md
    • The Art of Computer Systems Performance Analysis Techniques for Experimental Design, Measurement, Simulation and Modeling (by Raj K. Jain) https://www.researchgate.net/publication/259310412_The_Art_of_Computer_Systems_Performance_Analysis_Techniques_For_Experimental_Design_Measurement_Simulation_and_Modeling_NY_Wiley
    • Performance modeling and design of computer systems queueing theory in action (by Prof. Mor Harchol-Balter) https://www.cs.cmu.edu/~harchol/PerformanceModeling/book.html
    • Oracle Performance Firefighting (by Craig_Shallahamer) https://www.abebooks.co.uk/9780984102303/Oracle-Performance-Firefighting-Craig-Shallahamer-0984102302/plp
    • Process Mining: Data Science in Action (by Wil van der Aalst) https://link.springer.com/book/10.1007/978-3-662-49851-4


    ~~~

    What did you like or not like? What should we discuss next time? Let us know via a YouTube comment, on social media, or by commenting on our Google doc!


    ~~~

    Postgres FM is produced by:

    • Michael Christofides, founder of pgMustard
    • Nikolay Samokhvalov, founder of Postgres.ai


    With credit to:

    • Jessie Draws for the elephant artwork
    Exibir mais Exibir menos
    44 minutos
  • Schema design checklist
    Apr 17 2026

    Nik and Michael discuss a list of things to check when designing new schema in Postgres.

    Here are some links to things they mentioned:

    • Use BIGINT in Postgres (blog post by Ryan Lambert) https://blog.rustprooflabs.com/2021/06/postgres-bigint-by-default
    • Postgres 18 and UUIDv7 (blog post by Gwen Shapira) https://www.thenile.dev/blog/uuidv7
    • How to use UUID (how-to guide by Nik) https://postgres.ai/docs/postgres-howtos/schema-design/data-types/how-to-use-uuid
    • Our episode on constraints https://postgres.fm/episodes/constraints
    • Our episode on NULLs https://postgres.fm/episodes/nulls-the-good-the-bad-the-ugly-and-the-unknown
    • MultiXact member space exhaustion episode (with Metronome) https://postgres.fm/episodes/multixact-member-space-exhaustion
    • Our Column Tetris episode https://postgres.fm/episodes/column-tetris
    • Saving Space Basically for Free (blog post by James Coleman from Braintree) https://medium.com/paypal-tech/postgresql-at-scale-saving-space-basically-for-free-d94483d9ed9a
    • Over-indexing episode https://postgres.fm/episodes/over-indexing
    • Under-indexing episode https://postgres.fm/episodes/under-indexing
    • Gadget's use of Postgres https://postgres.fm/episodes/gadgets-use-of-postgres
    • Partitioning episode https://postgres.fm/episodes/partitioning
    • RLS vs performance episode https://postgres.fm/episodes/rls-vs-performance


    ~~~

    What did you like or not like? What should we discuss next time? Let us know via a YouTube comment, on social media, or by commenting on our Google doc!


    ~~~

    Postgres FM is produced by:

    • Michael Christofides, founder of pgMustard
    • Nikolay Samokhvalov, founder of Postgres.ai


    With credit to:

    • Jessie Draws for the elephant artwork
    Exibir mais Exibir menos
    45 minutos
  • What’s Missing in Postgres?
    Apr 3 2026

    Nik and Michael are joined by Bruce Momjian to discuss his new talk "What’s Missing in Postgres?"

    Here are some links to things they mentioned:

    • Bruce Momjian https://postgres.fm/people/bruce-momjian
    • EDB https://www.enterprisedb.com
    • What’s Missing in Postgres? (Bruce’s slides) https://momjian.us/main/writings/pgsql/missing.pdf
    • The Wonderful World of WAL (Bruce’s slides) https://momjian.us/main/writings/pgsql/wal.pdf
    • Getting started with benchmarking (our episode with Melanie Plageman) https://postgres.fm/episodes/getting-started-with-benchmarking
    • Myths and Truths about Synchronous Replication in Postgres (talk by Alexander Kukushkin) https://www.youtube.com/watch?v=PFn9qRGzTMc
    • The Future of Postgres Sharding (Bruce’s slides) https://momjian.us/main/writings/pgsql/sharding.pdf
    • MultiXact member space exhaustion https://postgres.fm/episodes/multixact-member-space-exhaustion


    ~~~

    What did you like or not like? What should we discuss next time? Let us know via a YouTube comment, on social media, or by commenting on our Google doc!


    ~~~

    Postgres FM is produced by:

    • Michael Christofides, founder of pgMustard
    • Nikolay Samokhvalov, founder of Postgres.ai


    With credit to:

    • Jessie Draws for the elephant artwork
    Exibir mais Exibir menos
    44 minutos
  • Long-running transactions
    Mar 27 2026

    Nik and Michael discuss long-running transactions, including when they're harmless, when they cause issues, and how to mitigate those issues.

    Here are some links to things they mentioned:

    • transaction_timeout https://www.postgresql.org/docs/current/runtime-config-client.html#GUC-TRANSACTION-TIMEOUT
    • Our episode on transaction_timeout https://postgres.fm/episodes/transaction_timeout
    • Our episode on slow queries (which was also our first ever episode!) https://postgres.fm/episodes/slow-queries-and-slow-transactions
    • Our episode on locks https://postgres.fm/episodes/locks
    • lock_timeout https://www.postgresql.org/docs/current/runtime-config-client.html#GUC-LOCK-TIMEOUT
    • Transaction Isolation levels https://www.postgresql.org/docs/current/transaction-iso.html
    • pg_current_xact_id_if_assigned() https://pgpedia.info/p/pg_current_xact_id_if_assigned.html
    • Monitor xmin horizon to prevent XID/MultiXID wraparound and high bloat (how-to guide by Nik) https://postgres.ai/docs/postgres-howtos/performance-optimization/monitoring/how-to-monitor-xmin-horizon
    • idle_replication_slot_timeout https://www.postgresql.org/docs/current/runtime-config-replication.html#GUC-IDLE-REPLICATION-SLOT-TIMEOUT
    • PREPARE TRANSACTION https://www.postgresql.org/docs/current/sql-prepare-transaction.html
    • log_autovacuum_min_duration https://www.postgresql.org/docs/devel/runtime-config-logging.html#GUC-LOG-AUTOVACUUM-MIN-DURATION
    • PostgreSQL Subtransactions Considered Harmful (blog post by Nikolay) https://postgres.ai/blog/20210831-postgresql-subtransactions-considered-harmful
    • statement_timeout https://www.postgresql.org/docs/current/runtime-config-client.html#GUC-STATEMENT-TIMEOUT
    • idle_in_transaction_session_timeout https://www.postgresql.org/docs/current/runtime-config-client.html#GUC-IDLE-IN-TRANSACTION-SESSION-TIMEOUT
    • lock_timeout https://www.postgresql.org/docs/current/runtime-config-client.html#GUC-LOCK-TIMEOUT


    ~~~

    What did you like or not like? What should we discuss next time? Let us know via a YouTube comment, on social media, or by commenting on our Google doc!


    ~~~

    Postgres FM is produced by:

    • Michael Christofides, founder of pgMustard
    • Nikolay Samokhvalov, founder of Postgres.ai


    With credit to:

    • Jessie Draws for the elephant artwork
    Exibir mais Exibir menos
    48 minutos
  • PostGIS
    Mar 13 2026

    Nik and Michael are joined by Regina Obe and Paul Ramsey to discuss PostGIS.

    Here are some links to things they mentioned:

    • Regina Obe https://postgres.fm/people/regina-obe
    • Paul Ramsey https://postgres.fm/people/paul-ramsey
    • PostGIS https://postgis.net
    • MobilityDB https://github.com/MobilityDB/MobilityDB
    • pgRouting https://github.com/pgRouting/pgrouting
    • Google BigQuery GIS public alpha blog post https://cloud.google.com/blog/products/data-analytics/whats-happening-bigquery-integrated-machine-learning-maps-and-more
    • PostGIS Day 2025 talk recordings https://www.youtube.com/watch?v=wuNO_cW2g-0&list=PLavJpcg8cl1EkQWoCbczsOjFTe-SHg_8m
    • pg_lake https://github.com/Snowflake-Labs/pg_lake
    • GeoParquet https://geoparquet.org
    • ST_DWithin https://postgis.net/docs/ST_DWithin.html
    • Postgres JSONB Columns and TOAST: A Performance Guide https://www.snowflake.com/en/engineering-blog/postgres-jsonb-columns-and-toast
    • FOSS4G https://foss4g.org
    • OpenStreetMap https://www.openstreetmap.org
    • PgDay Boston https://2026.pgdayboston.org
    • SKILL.md file https://github.com/postgis/postgis/blob/68dde711039986b47eb62feda45bb24b13b0ea37/doc/SKILL.md
    • Production query plans without production data (blog post by Radim Marek) https://boringsql.com/posts/portable-stats
    • PostgreSQL: Up and Running, 4th Edition (by Regina Obe, Leo Hsu) https://www.oreilly.com/library/view/postgresql-up-and/9798341660885


    ~~~

    What did you like or not like? What should we discuss next time? Let us know via a YouTube comment, on social media, or by commenting on our Google doc!


    ~~~

    Postgres FM is produced by:

    • Michael Christofides, founder of pgMustard
    • Nikolay Samokhvalov, founder of Postgres.ai


    With credit to:

    • Jessie Draws for the elephant artwork
    Exibir mais Exibir menos
    53 minutos
  • Plan flips
    Mar 6 2026

    Nik and Michael discuss query plan flips in Postgres — what they are, some causes, mitigations, longer term solutions, and the recent outage at Clerk.

    Here are some links to things they mentioned:

    • Recent postmortem from Clerk https://clerk.com/blog/2026-02-19-system-outage-postmortem
    • The real cost of random I/O (blog post by Tomas Vondra) https://vondra.me/posts/the-real-cost-of-random-io
    • autovacuum_analyze_scale_factor https://www.postgresql.org/docs/current/runtime-config-vacuum.html#GUC-AUTOVACUUM-ANALYZE-SCALE-FACTOR
    • default_statistics_target https://www.postgresql.org/docs/current/runtime-config-query.html#GUC-DEFAULT-STATISTICS-TARGET
    • pg_hint_plan https://github.com/ossc-db/pg_hint_plan
    • Aurora PostgreSQL query plan management https://docs.aws.amazon.comAmazonRDS/latest/AuroraUserGuide/AuroraPostgreSQL.Optimize.Start.html
    • pg_stat_plans https://github.com/pganalyze/pg_stat_plans
    • pg_plan_alternatives https://jnidzwetzki.github.io/2026/03/04/pg-plan-alternatives.html
    • Waiting for Postgres 19: Better Planner Hints with Path Generation Strategies https://pganalyze.com/blog/5mins-postgres-19-better-planner-hints


    ~~~

    What did you like or not like? What should we discuss next time? Let us know via a YouTube comment, on social media, or by commenting on our Google doc!


    ~~~

    Postgres FM is produced by:

    • Michael Christofides, founder of pgMustard
    • Nikolay Samokhvalov, founder of Postgres.ai


    With credit to:

    • Jessie Draws for the elephant artwork
    Exibir mais Exibir menos
    43 minutos
  • pg_ash
    Feb 20 2026

    Nik and Michael discuss pg_ash — a new tool (not extension!) from Nik that samples and stores wait events from pg_stat_activity.

    Here are some links to things they mentioned:

    • pg_ash https://github.com/NikolayS/pg_ash
    • pg_wait_sampling https://github.com/postgrespro/pg_wait_sampling
    • Amazon RDS performance insights https://aws.amazon.com/rds/performance-insights
    • Our episode on wait events https://postgres.fm/episodes/wait-events
    • pg-flight-recorder https://github.com/dventimisupabase/pg-flight-recorder
    • pg_profile https://github.com/zubkov-andrei/pg_profile
    • pg_cron https://github.com/citusdata/pg_cron


    ~~~

    What did you like or not like? What should we discuss next time? Let us know via a YouTube comment, on social media, or by commenting on our Google doc!


    ~~~

    Postgres FM is produced by:

    • Michael Christofides, founder of pgMustard
    • Nikolay Samokhvalov, founder of Postgres.ai


    With credit to:

    • Jessie Draws for the elephant artwork
    Exibir mais Exibir menos
    32 minutos
  • Comments and metadata
    Feb 13 2026

    Nik and Michael discuss query level comments, object level comments, and another way of adding object level metadata.

    Here are some links to things they mentioned:

    • Object comments https://www.postgresql.org/docs/current/sql-comment.html
    • Query comment syntax (from an old version of the docs) https://www.postgresql.org/docs/7.0/syntax519.htm
    • SQL Comments, Please! (Post by Markus Winand) https://modern-sql.com/caniuse/comments
    • “While C-style block comments are passed to the server for processing and removal, SQL-standard comments are removed by psql.” https://www.postgresql.org/docs/current/app-psql.html
    • marginalia https://github.com/basecamp/marginalia
    • track_activity_query_size https://www.postgresql.org/docs/current/runtime-config-statistics.html#GUC-TRACK-ACTIVITY-QUERY-SIZE
    • Custom Properties for Database Objects Using SECURITY LABELS (post by Andrei Lepikhov) https://www.pgedge.com/blog/custom-properties-for-postgresql-database-objects-without-core-patches


    ~~~

    What did you like or not like? What should we discuss next time? Let us know via a YouTube comment, on social media, or by commenting on our Google doc!


    ~~~

    Postgres FM is produced by:

    • Michael Christofides, founder of pgMustard
    • Nikolay Samokhvalov, founder of Postgres.ai


    With credit to:

    • Jessie Draws for the elephant artwork
    Exibir mais Exibir menos
    36 minutos