---
title: "A new serverless Postgres platform appears"
publication: "Postgres Weekly"
issue: 528
published_at: "2023-11-01"
canonical_url: "https://postgresweekly.com/issues/528"
---

Plus Haskell in your Postgres, building an embedding-based search tool, and making Postgres 'tick' with pg_cron. |        

#​528 — November 1, 2023 

[Web Version](https://postgresweekly.com/issues/528)  

Together with [![Ottertune logo\](https://res.cloudinary.com/cpress/image/upload/c_fill,g_auto,e_trim,w_450,h_100/e_make_transparent/co_white,e_outline:7/d92wjjhrmysrssm2xhjm.png)](https://ottertune.com/?utm_source=postgres_weekly&utm_medium=email&utm_campaign=q4_primary)   

Postgres Weekly 

[![\](https://res.cloudinary.com/cpress/image/upload/w_1280,e_sharpen:60,q_auto/fp6nvxhxl8fgulotrd56.jpg)](https://www.citusdata.com/blog/2023/10/26/making-postgres-tick-new-features-in-pg-cron/)  

[Making Postgres Tick: New features in `pg_cron`](https://www.citusdata.com/blog/2023/10/26/making-postgres-tick-new-features-in-pg-cron/) — [pg_cron](https://github.com/citusdata/pg_cron) is an extension that makes it easy to run periodic jobs within Postgres, with no external scheduler required. It’s not quite as advanced as [pg_timetable](https://www.cybertec-postgresql.com/en/introducing-pg_timetable-v5-6-delayed-chains-and-error-handling/) (featured last week) but its simplicity may suit your use case better. Here, Marco shows off how pg_cron can run jobs at a granularity as fine as _every second._ 

Marco Slot (Citus Data)   [![\](https://copm.s3.amazonaws.com/9145ca29.png)](https://ottertune.com/?utm_source=postgres_weekly&utm_medium=email&utm_campaign=q4_primary) 

[Auto Optimize Your RDS or Aurora Postgres Databases With AI](https://ottertune.com/?utm_source=postgres_weekly&utm_medium=email&utm_campaign=q4_primary) — Need help optimizing Postgres knobs, queries, indexes and autovacuum? OtterTune is your AI-powered database co-pilot that can improve performance, reduce costs and keep your databases healthy. Get a free, 30-day trial for three databases. 

OtterTune sponsor   

[Nile: A New Serverless Postgres Platform](https://www.thenile.dev/blog/introducing-nile) — [Neon](https://neon.tech/) is perhaps the best known serverless Postgres platform right now, but some fresh competition is on the way. Nile’s angle is a focus on SaaS usage, supporting multi-tenant setups with seamless tenant isolation and scaling. It’s behind a waitlist, but this post goes into technical depth on their approach. 

Sriram Subramanian (Nile)   

🗣 Nile's announcement provoked [extensive discussion on Hacker News](https://news.ycombinator.com/item?id=38014812) oriented heavily around the pros and cons of their multi-tenant focus.  

[SQL Identity Columns](https://peter.eisentraut.org/blog/2023/10/31/sql-identity-columns) — You might also call them autoincrementing, or serial columns, but such identity columns were (eventually) standardized in SQL:2003 and Postgres has supported their `GENERATED ALWAYS AS IDENTITY` syntax since Postgres v10. 

Peter Eisentraut   

**IN BRIEF:** 

- 📅 [The dates for FOSDEM PGDay 2024 have been announced](https://www.postgresql.eu/events/fosdem2024/news/fosdem-pgday-2024-dates-announced-and-call-for-papers-open-100/) – it's taking place in Brussels, Belgium on February 2, 2024. [A call for papers](https://2024.fosdempgday.org/callforpapers/) is open with submissions due by November 27.
- Heroku has [added support for the pgvector extension](https://blog.heroku.com/pgvector-launch) to Heroku Postgres.
- Bruce Momjian looks at Postgres 16's [new `pg_stat_*_tables` `last_seq_scan` and `last_idx_scan` columns.](https://momjian.us/main/blogs/pgblog/2023.html#October_30_2023)
- What's going on when you get the error _"ERROR: current transaction is aborted, commands ignored until end of transaction block"_? – [Hans-Jürgen Schönig explains all.](https://www.cybertec-postgresql.com/en/error-current-transaction-is-aborted-in-postgresql/)   

▶[Storing and Querying LLM Embeddings with Django, Postgres and pgvector](https://www.youtube.com/watch?v=ZCPUmC37HLU) — We’ve mentioned [pgvector](https://github.com/pgvector/pgvector) a lot recently, and here’s a look at a practical use case for it – building an LLM embeddings based search system that enables searching over job descriptions using an unstructured, English-language description of a potential job seeker. [GitHub repo.](https://github.com/thinknimble/embeddings-search-demo) 

William Huster   

[GDB Debugging Essentials with Postgres](https://www.techbuddies.io/2023/10/30/unlock-your-arsenals-gdb-debugging-essentials-with-postgresql/) — Explore the essentials of debugging with GDB, using Postgres as a practical example. _(Note: This is not needed by day-to-day Postgres users, but if you’re a C/C++ developer or working on Postgres internals, you’ll find it useful.)_ 

Cary Huang   

📅 [Webinar on Nov 15: Automating Index Selection Using Constraint Programming](https://us02web.zoom.us/webinar/register/9016958520570/WN_84iRS1rgQnOF7DDG3Uv3ZA) 

pganalyze sponsor   

[What Is TOAST (and Why It Isn’t Enough for Data Compression in Postgres)](https://www.timescale.com/blog/what-is-toast-and-why-it-isnt-enough-for-data-compression-in-postgres/) 
Carlota Soto (Timescale)   

[How to Understand Explain Plans](https://stormatics.tech/alis-planet-postgresql/understand-explain-plans-in-postgresql) 
Muhammad Ali (Stormatics)    

Code and Tools 

[![\](https://res.cloudinary.com/cpress/image/upload/w_1280,e_sharpen:60,q_auto/dgcjlpuobbo9delcqffg.jpg)](https://github.com/ed-o-saurus/PLHaskell)  

[PL/Haskell 3.1: Use Haskell in Your SQL Functions](https://github.com/ed-o-saurus/PLHaskell) — Haskell is a _functional_ language but you can, nonetheless, use it to define procedures in such a way that Postgres can play nicely with. 

Edward F. Behn, Jr.   

[pg_graphql 1.4.2: Bring GraphQL Support to Postgres](https://github.com/supabase/pg_graphql) — Reflects a GraphQL schema from the existing SQL schema, letting any GraphQL client query the database via GraphQL with no additional servers, processes, or libraries. 

Supabase   

- [PostgresNIO 1.19.0](https://github.com/vapor/postgres-nio) – Non-blocking, event-driven Postgres client for Swift.
- [DBMate 2.7](https://github.com/amacneil/dbmate) – Lightweight, framework-agnostic database migration tool.
- [data-diff 0.9.9](https://github.com/datafold/data-diff) – Compare tables within or across databases.
- [Bytebase 2.10](https://www.bytebase.com/changelog/bytebase-2-10-0/) – Database devops and CI/CD platform.
- [Slonik 37.2](https://github.com/gajus/slonik) – Type-safe Postgres client for Node.js.
- [Patroni 3.2](https://github.com/zalando/patroni) – PostgreSQL High Availability template.    

**Got a new email?** You can [change your address here](https://postgresweekly.com/edit_subscription/*|UID|*). 

--- 

**Bored of us?** [Click here to stop getting Postgres Weekly](https://postgresweekly.com/leave/*|UID|*). 

--- 

**Got a link for us?** Reply and tell us. We can't include everything but we'll look at anything you send. _Thanks!_ 

--- 

Published by Cooper Press Ltd.
Fairfield Enterprise Centre, Louth, LN11 0LS, United Kingdom 

Postgres, PostgreSQL and the Slonik Logo are trademarks or registered trademarks of the PostgreSQL Community Association of Canada. 

[Stop getting this newsletter](https://postgresweekly.com/leave/*|UID|*).
