~/talk

Fearless Extension Development With Rust and PGRX

Talkat PostgreSQL Conference Europe 2024 · 2024-10-22..10-25· [rust, databases]
links:none on file
slides:none on file

Rust bindings (pgrx) let extensions call the Postgres C API safely, compile to native shared libraries, and run against Postgres 12–17 using the cargo-pgx tool which downloads PG binaries, runs instances, runs unit tests and creates deployable tarballs via cargo PGX package. Claims: near-C throughput with a modest FFI overhead (benchmarks show ~50% worst‑case overhead on tiny ops), panics convert to SQL errors not crashes (no segfaults). Used in production by TimeScale, Supabase, AWS, Microsoft; some teams report ~5× faster development and thousands of lines ported with extensive tests. Missing: some index/table access hooks still incomplete.

AI-written summary · about

  1. 0:00Introduction
  2. 1:09What is Rust
  3. 3:37What is PGX
  4. 5:50History of Rust in PostgreSQL
  5. 8:37Benefits of PGX
  6. 10:00PGX Features Overview
  7. 14:13Simple PGX Function Demo
  8. 15:16Why Not Just Use C
  9. 16:42Developer Perspectives
  10. 18:07Community Feedback
  11. 20:42Setting Up PGX Environment
  12. 21:47Creating a New Extension
  13. 22:51Running and Testing Extensions
  14. 25:20Building Aggregate Functions
  15. 26:53Performance Comparison
  16. 28:38Background Worker Example
  17. 31:51Custom Type Implementation
  18. 34:39Parallel Processing with Rayon
  19. 35:43Future of PGX and PostgreSQL
  20. 39:19Q&A Session
~/search
type to search 6,249 conferences, 138,987 speakers and 185,172 talks
~/help
cmdctrl k
search every conference, speaker and series
/
focus the filter search
h
home
c
conferences
s
speakers
e
series
t
light / dark — the status bar button does the same
?
this help
esc
close this, then clear every filter — or just the search, while you are typing in it

Ignored while you are typing. Pages without a filter rail have no search to focus.