CRAZY!!! The best database known to humanity got even better!! Postgres18 is a beast!!
1.) Asynchronous I/O - The biggest performance improvement
Faster reads for sequential scans, bitmap heap scans, and VACUUM operations
Better throughput by batching disk reads instead of waiting on each one individually
More predictable performance managed at the database level rather than relying on OS
2.) UUID v7 - Better primary key performance
Maintains all the benefits of UUIDs (global uniqueness, decentralized generation, URL obscurity)
Significantly improved indexing and sorting performance compared to UUID v4
Uses timestamp prefix for better data locality and less index fragmentation
3.) B-tree Skip Scans - Smarter index usage
Multi-column indexes can now answer queries on non-leading columns
Works automatically behind the scenes - no configuration needed
Eliminates need for redundant single-column indexes in many cases
Particularly helpful for analytics workloads with varied query patterns
4.) Virtual Generated Columns - Reduced storage overhead
Computed on-the-fly instead of stored on disk (now the default)
Eliminates write overhead from computing values during inserts/updates
Great for simplifying queries on JSON data and on-the-fly transformations
5.) OAuth 2.0 Support - Modern authentication
Native integration with identity providers like Okta and Keycloak
Token-based authentication instead of storing passwords
Enables MFA and SSO through external providers
Plus 3,000 commits with additional under-the-hood optimizations, bug fixes, and security patches from 200 contributors.
🎉 So cool! PostgreSQL 18 can now do Index Skip Scans, meaning that you can now use the Index even when filtering by the second column.
Other worth noting features:
1️⃣ Asyn I/O when scanning pages from the disk
2️⃣ Virtual columns that can be computed at query time (great for JSON path indexing)
3️⃣ Time-sorted UUID via uuidv7()
For more details, check out this article from Crunchy Data.
crunchydata.com/blog/get-exc…