2ndQuadrant was founded in 2001 by Simon Riggs, a major developer and committer of the PostgreSQL project. The vision was to create a business that bridges the database needs of enterprise users and open source contributions to PostgreSQL. Building on that vision, over the past 15+ years, 2ndQuadrant has widely contributed to the growth and development of PostgreSQL, earning us the prestigious title of Major Sponsors of the community.
The 2ndQuadrant team has since grown to host the largest collective of PostgreSQL experts in a single organization. Our engineers and developers are globally recognized for their expertise in PostgreSQL products and services. We are well represented in the community and many of our experts are major contributors and committers to the PostgreSQL project. Collectively, we host over 500 person-years of PostgreSQL expertise.
Below is a summary of our contributions to open source PostgreSQL over the past years.
Version 12 of PostgreSQL, the world’s most advanced open source database, was released on October 3rd, 2019. This release included remarkable performance improvements to its indexing and partitioning capabilities system. Among the most important features presented in this release, PostgreSQL 12 now supports the SQL/JSON path language, which allows execution of complex queries on JSON values using an SQL-standard language.
The important features and enhancements contributed by 2ndQuadrant to PostgreSQL 12 are listed below:
Version 11 of PostgreSQL was released in October 2018. This release presented important improvements in partitioning and parallelism, two critical areas for any relational database system. Partitioning in PostgreSQL 11 supports unique indexes and foreign keys, and allows the creation of equivalent indexes. This version also includes several improvements in parallelism, present in PostgreSQL since version 9.6.
The most important features and enhancements contributed to this major PostgreSQL release by 2ndQuadrant are listed below:
Implementation of SQL procedures, including transaction control. Transactions can be started and committed in PL/pgSQL, PL/Perl, PL/Python and PL/Tcl procedures, as well as via SPI – Peter Eisentraut
Allow ALTER TABLE to add a column with a non-null default without a table rewrite – Andrew Dunstan/ Serge Rielau
Enable index creation on partitioned tables, with automatic propagation to partitions – Álvaro Herrera
Making partition elimination faster and improve its applicability – David Rowley / Amit Langote / Beena Emerson / Dilip Kumar
On October 2017, version 10 was released, presenting significant enhancements and introducing important new features to achieve faster data access, management and analysis. This major release also marks the change in the notation used to scheme versions to a two-digit format.
The features and enhancements contributed by 2ndQuadrant to PostgreSQL 10 are listed below:
PostgreSQL version 9.6 was released on September 2016, including a long awaited feature: parallel execution of large queries. David Rowley and Simon Riggs contributed to this effort alongside with many other developers to develop this robust feature. The team at 2ndQuadrant has continued to other several major improvements and new features in this release, listed below:
Improved performance of short-lived prepared transactions – Simon Riggs / Stas Kelvich / Pavan Deolasee
Improved performance by moving buffer content locks into the buffer descriptors – Simon Riggs / Andres Freund
Reducing the lock strength needed by ALTER TABLE when setting fillfactor and autovacuum-related relation options – Simon Riggs / Fabrízio de Royes Mello
Ability to use an index-only scan with a partial index when the index’s predicate involves column(s) not stored in the index – Tomas Vondra / Kyotaro Horiguchi
Improved planner’s estimate of the number of distinct values in a query result – Tomas Vondra
Using foreign key relationships to infer selectivity for join predicates – Tomas Vondra / David Rowley
Improved ANALYZE’s estimates for columns with many nulls – Tomas Vondra / Alex Shulgin
Adding function pg_current_xlog_flush_location() to expose the current transaction log flush location, and adding log_line_prefix option %n to print the time as a Unix epoch, within milliseconds – Tomas Vondra / Jeff Davis
Adding –with-systemd configure switch to enable calling sd_notify() at server start and stop – Peter Eisentraut
Merging the archive and hot_standby values of the wal_level configuration parameter into a single value replica, adding syslog_sequence_numbers – Peter Eisentraut
syslog_split_messages configuration parameters to provide more control over message format when logging to syslog – Peter Eisentraut
Letting pg_basebackup use a replication slot defined for WAL streaming. After the base backup completes – Peter Eisentraut
Selecting the same slot for regular streaming replication allows seamless startup of the new standby server – Peter Eisentraut
Including the table name in object tags for object types that are only uniquely named per-table in pg_dump – Peter Eisentraut
A complete list of 2ndQuadrant’s contributions to the PostgreSQL 9.6 is available here.
*The features listed above have been taken from the Release Notes for PostgreSQL 9.6 from www.postgresql.org available here.