Posts tagged “Extensions”

On May 12, 2025, something remarkable happened in Montréal. The Postgres Extension Developers Coalition (“PGDEC”) hosted Postgres Extensions Day Montréal 2025 as a free, full-day event to provide a forum for extension developers to discuss challenges and solutions. The PGEDC seeks to identify and address limitations within the current Postgres extension framework, advocating for improvements and new features that would benefit the extension ecosystem.

The Postgres community responded with overwhelming enthusiasm through insightful presentations and engaging hallway discussions. You can watch the entire Postgres Extensions Day 2025 Montreal event on the PGDEC YouTube channel below:

This enthusiasm wasn't new. At previous Postgres Conferences, extension sessions have been consistently well-attended. Nearly all the pgvector sessions at the 2026 conference in Orlando were at capacity.

Standing Room Only: The Extension Community Speaks

Sessions like "Postgres.pm: Packaging Manager Magic" by Yurii Rashkovskii, "1 Billion Row Challenge: Comparing Postgres, DuckDB, and Extensions" by Ryan Booz, and "Understanding Database Statistics and Extensions in PostgreSQL" by Ranjan Burman drew significant interest. The message was clear: the community craves extension content.

Why Extensions Matter

Extensions are PostgreSQL's superpower, as they transform a database into an even more robust platform. Need vector similarity search for AI applications? Install pg_vector. Building location services? PostGIS has you covered. Time-series data? TimescaleDB. Horizontal scaling? Citus. The ecosystem includes over 300 extensions, each solving real problems every day.

The Challenges Extension Developers Face

  • But extension developers face unique challenges:
  • Maintaining compatibility across PostgreSQL versions is complex
  • Distribution and packaging strategies vary wildly
  • Security considerations multiply when you're extending core functionality
  • Testing becomes exponentially harder
  • The community is fragmented, as maintainers of different extensions rarely connect in person

Postgres Extensions Day Montréal 2025 proved that extension developers need a dedicated space. Not a 20-minute talk squeezed between database administration sessions or surface-level overviews.

The standing-room-only sessions at Postgres Conference 2025 validated this need, so we're extending Extensions Day quite literally to Silicon Valley. On April 23, 2026, Postgres Conference brings the proven Montreal format to the West Coast with enhanced reach and integration.

Where Innovation Actually Happens

Why does this matter? Because extensions are where PostgreSQL innovation happens. Core database development moves carefully and deliberately. Extensions move fast — they innovate, address edge cases, and push boundaries.

Extensions Day embodies Postgres Conference 2026's theme: "Energizing People with Data and Creativity." Extension developers are the creative force transforming data possibilities.

Extension developers deserve recognition, technical depth, and community support. Extensions Day at Postgres Conference 2026 provides all of this and more.

Your Moment to Connect

The extension community has spoken. From standing-room-only sessions at conferences to the overwhelming response in Montréal, the message is clear: extension developers need their own space. They've been working in isolation, solving similar problems independently, waiting for their moment to connect.

That moment is now.

Watch what happened in May, and see the community that's forming. Then answer the call by bringing your extension expertise to San Jose. Your challenges, your solutions, and your insights matter. The ecosystem needs your ideas, your voice, and your creativity!

What We're Looking For

Topics we’re looking for:

  • Operating extensions in production
  • Teaching extension development
  • Extension packaging and delivery
  • Libraries and frameworks for extensions
  • Gaps and challenges
  • Implementing extensions in different languages
  • Interesting techniques, discoveries, and lessons learned
  • Extensions security
  • Anything related to Postgres extensions

Share your extension expertise at Extensions Day at Postgres Conference 2026. Submit your proposal here before the CFP closes on January 30, 2026.

Interested in attending? Early Bird Registration is now open! Learn more at the blog post and register today!

Debra Cerda     December 02, 2025     extensions

 

As part of the countdown to Postgres Conference 2024, learn more about the engaging content and our speakers for this year in our Speaker Spotlight Series.

Relevant Logic President/CEO Guyren Howe is a web developer, trainer, database expert, technical writer, and more specializing in PostgreSQL, Flutter, and Rails. Guyren will present “Postgres’s Type System” at Postgres Conference 2024. Read what Guyren has to say about Postgres and why to attend his session:

Why should attendees come to your talk at Postgres Conference 2024?

What would you like for them to take away from your session? Learn the important details of Postgres's type system: the built-in types, extension types, domains, arrays and custom types.

What is your favorite aspect of Postgres Conference?

My talk :)

What advice would you have for a Computer Science graduate or entry level developer who are interested in learning and engaging with Postgres and other open source technologies?

Follow the pgsql-general list. Learn relational theory. Don't listen to the database haters.

How do you see the use of open source technologies evolving over the next five years?

I foresee an open source boom as AI technologies can work with open source much better than closed.

 

Check out the full schedule for PostgresConf US 2024. Learn more about our conference here and buy your tickets soon!

By Magnus Brun Falch CoFounder of Bamboo Solutions AS

From zero to PostgreSQL extension in three hours.

I recently had a personal side-project which included setting up a working REST backend for a mobile and web application. There were numerous challenges to overcome but my available hours to work on them were limited. I had a few evenings to spare on this project and didn’t feel like writing a lot of boilerplate in C# to achieve it.

A trusted friend had praised PostgREST many times. My testing showed it outclassing ASP.NET Core for all my test cases by an order of magnitude, half a year earlier.
I finally had a chance to use it as the base for my API layer in one of my projects.

One thing that this project called for which would not normally be easy to achieve using PostgreSQL alone, is to pre sign requests for an S3 compatible storage platform. I had 6 hours left in the budget for this feature, after all the firm requirements were estimated.

I didn’t want to write a full implementation of the relevant parts of the S3 spec from scratch or using pgcrypto. My first instinct was to have a look at the different procedural languages available in PostgreSQL, some of which are Tcl, Java, JS, Python and Julia. None of them were too tempting at the moment.

Luckily I was an early member of the new People, Postgres, Data: Discord server and there are some very interesting and clever people there, Eric Ridge, the main author of ZomboDB (ZDB) among them.

I’ve kept an eye on ZDB for years after doing some research into ElasticSearch. My project included text search so I relished the opportunity to chat with him. Among our many topics of conversation were the upcoming release of a new Rust based version of ZDB and its underlying framework: PGX. I asked him about whether he thought PGX would be a good fit for my remaining challenge. He said “Absolutely”. I spent an hour setting up an Ubuntu VM with all the needed tooling & dependencies including building and testing the “hello world” example. A thorough reading of the man page would likely have saved me half an hour.

The next 30 minutes were spent identifying the most promising Crate to use. Within three hours of writing the first line of code I had a working plugin. About 80% of the time spent was lost to unfamiliarity with the language and writing it using nano over ssh instead of setting up a proper IDE like Jetbrains CLion. I also struggled a bit with finding the correct way of extracting the value from a result of an async function in a foreign language.

In total I spent 4 hours and 25 minutes from the time I started the fresh Ubuntu 20.04 server I was going to use as a Dev environment, to having a working build of an extension. It can be called inline in PostgreSQL to sign download requests in less than 1ms on my Intel I5 2500 testbed.

 I’ve had zero experience with Rust and have never read any teaching materials or looked at any tutorials for it before that evening. What I’d heard about Rust previously was that it’s really fast, and that the compiler would yell at you until your code is of acceptable quality.

Example of the PGX simplicity:

#[pg_extern]
fn pgx_s3sign_pre_get(
  server: String,
  input_bucket: String,
  input_identity: String,
  input_secret: String,
  input_file: String,
  duration: i32,
) -> String {
  let bucket = bucket_create(server, input_bucket, input_identity, input_secret);
  let url = bucket
      .presign_get(input_file, duration.try_into().unwrap())
      .unwrap();
  Url

 

The extension was merely for internal use in a specific project and has some rough edges. It is published on GitHub and needs some more polish before I would consider it a production ready extension. Pull requests are welcome if you have suggestions before I get the time to work on it some more.

 

Notes:

  • PGX is a framework for writing PostgreSQL extensions using Rust.
  • ZomboDB integrates Elasticsearch and PostgreSQL.
  • PostgREST consumes a PostgreSQL schema and generates API endpoints.

This work is unrelated to my job at Bamboo Solutions AS

Magnus Brun Falch     September 28, 2020     zombodb postgres rust postgresql extensions

Latest Posts