---
title: "Will Postgres ever 'pull a Redis'?"
publication: "Postgres Weekly"
issue: 548
published_at: "2024-03-27"
canonical_url: "https://postgresweekly.com/issues/548"
---

Plus recovering data you thought was deleted from Postgres. |        

#​548 — March 27, 2024 

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

Together with [![pgAnalyze\](https://res.cloudinary.com/cpress/image/upload/c_fill,g_auto,e_trim,w_350,h_100/e_make_transparent/co_white,e_outline:7/lhwcvgc1asd4fzaahty4.png)](https://pganalyze.com/webinars/automating-postgres-index-selection-constraint-programming?utm_source=PostgresWeeklyPrimary03272024)   

Postgres Weekly 

[![\](https://res.cloudinary.com/cpress/image/upload/w_1280,e_sharpen:60,q_auto/zlzorvhbggampjojw3kb.jpg)](https://www.cybertec-postgresql.com/en/recovering-deleted-data-from-postgresql-tables/)  

[Recovering Deleted Data from Postgres Tables](https://www.cybertec-postgresql.com/en/recovering-deleted-data-from-postgresql-tables/) — Transactions and backups cover most situations, but can you do something similar to an ‘undelete’ on data otherwise considered deleted from a table? With [pg_dirtyread](https://github.com/df7cb/pg_dirtyread), you can do quite a bit and, failing that, you could even go digging into the WAL.. 

Christoph Berg   

[Will Postgres Ever Change Its License?](https://jkatz05.com/post/postgres/postgres-license-2024/) — The recent announcement that Redis will be [dropping the BSD license](https://redis.com/blog/redis-adopts-dual-source-available-licensing/) in favor of a dual ‘source available’ and SSPL license has got people worried. Is Postgres vulnerable to a similar move? [Certainly not.](https://www.postgresql.org/message-id/937d27e10910260840s1d28aab2o799f2c58d14dfb1e%40mail.gmail.com) 

Jonathan Katz   [![\](https://copm.s3.amazonaws.com/1fa4b711.png)](https://pganalyze.com/webinars/automating-postgres-index-selection-constraint-programming?utm_source=PostgresWeeklyPrimary03272024) 

[How to Automate Postgres Index Selection Using the CP-SAT Solver](https://pganalyze.com/webinars/automating-postgres-index-selection-constraint-programming?utm_source=PostgresWeeklyPrimary03272024) — Learn about the Constraint Programming model powering [pganalyze Index Advisor 3.0](https://pganalyze.com/blog/index-advisor-v3?utm_source=PostgresWeeklyPrimary03272024). This technical deep dive (56min video) with Lukas Fittl & Philippe Olivier is a behind-the-scenes look at using the CP-SAT solver for recommending Postgres indexes. 

pganalyze sponsor   

[Introducing pgzx: Create Postgres Extensions using Zig](https://xata.io/blog/introducing-pgzx) — Yes, we linked to [pgzx](https://github.com/xataio/pgzx) last week, but it seems we jumped the gun as there’s now a proper launch post for it, complete with a C vs Zig example for creating a barebones extension and a run down of the advantage of using Zig to build extensions. 

Golubenco and Siering (Xata)   

_IN BRIEF:_ 

- Redgate Software's [Grant Fritchey is](https://postgresql.life/post/grant_fritchey/) this week's _PostgreSQL Person of the Week_interviewee.
- [The CFP for POSETTE is still open](https://www.citusdata.com/blog/2024/03/22/calling-postgres-speakers-posette-cfp-is-open/) until April 7 and Claire Giordano would love it if you wanted to speak.
- 🗓️ In other events news, [Swiss PGDay 2024](https://www.pgday.ch/2024/) takes place this June and [its CFP](https://www.pgday.ch/2024/#cfs) is open until April 8.
- Postgres platform Tembo is now leveraging [FerretDB](https://www.ferretdb.com/) to offer [a managed MongoDB-a-like service](https://tembo.io/blog/mongo-on-postgres) it calls_[MongoAlternative](https://tembo.io/docs/product/stacks/transactional/mongo-alternative)_.   

[Checking Your Privileges](https://thebuild.com/blog/2024/03/25/checking-your-privileges/) — _“If you are counting on the PostgreSQL privilege system to prevent roles from running functions (and accessing other objects), be sure you know what the default permissions are, and adjust them accordingly.”_ 

Christophe Pettus   

[How to Identify Semantic Issues with plpgsql_check](https://aws.amazon.com/blogs/database/identify-postgresql-semantic-issues-with-the-plpgsql_check-extension/) — [plpgsql_check](https://github.com/okbob/plpgsql_check) is a linter for statically analyzing Postgres PL/pgSQL procedure code. 

Pattanayak, Rout, Kumar and Borse (AWS)   

[Inside PostGIS: Calculating Distance](https://www.crunchydata.com/blog/inside-postgis-calculating-distance) — Paul dives inside PostGIS’s distance calculation implementation. 

Paul Ramsey   

[Transitioning from Heroku Postgres to AWS EC2: A Step-by-Step Approach](https://stormatics.tech/alis-planet-postgresql/transitioning-from-heroku-postgresql-to-aws-ec2-step-by-step-guide) 
Muhammad Ali   

[Understand Postgres's Planner: Simple Scan Paths vs Plans](https://www.highgo.ca/2024/03/22/understand-postgresqls-planner-simple-scan-paths-vs-plans/) 
Cary Huang      

📰 Classifieds   

🥸 [Use Neon's Postgres database branching and PostgreSQL Anonymizer](https://neon.tech/blog/easily-anonymize-production-data-in-postgres?utm_source=cooperpress&utm_medium=newsletter&utm_campaign=postgresweekly&utm_content=classified) to develop in production-like environments with masked PII. 

--- 

📢 Free [pgEdge](https://www.pgedge.com/get-started/cloud?utm_campaign=Cloud%20Developer%20Launch&utm_source=Postgres%20Weekly%20Sponsorship&utm_medium=Postgres%20Weekly&utm_term=Postgres%20Weekly&utm_content=Postgres%20Weekly) distributed Postgres DB with 3 node active-active cluster and one-click provisioning across 3 regions. [Free t-shirt to first 500](https://www.pgedge.com/get-started/cloud?utm_campaign=Cloud%20Developer%20Launch&utm_source=Postgres%20Weekly%20Sponsorship&utm_medium=Postgres%20Weekly&utm_term=Postgres%20Weekly&utm_content=Postgres%20Weekly).      

🛠 Code and Tools  

[Slonik v38: The Sophisticated Postgres Client for Node.js](https://github.com/gajus/slonik) — A ‘battle tested’ framework offering strict types, detailed logging, abstracts repeating code patterns, protects against unsafe behavior, as well as a rich debugging experience. 

Gajus Kuizinas   

[MobilityDB 1.1: Geospatial Trajectory Data Management and Analysis Platform](https://mobilitydb.com/) — Built upon Postgres and PostGIS, MobilityDB is designed for working with things that are _on the move_ and therefore are providing geospatial trajectories that can be stored and queried. [GitHub repo.](https://github.com/MobilityDB/MobilityDB) 

Université libre de Bruxelles   

- [Nano ID for PostgreSQL 2.1](https://github.com/viascom/nanoid-postgres) – Small, URL-friendly, unique string ID generator.
- [QuestDB 7.4](https://github.com/questdb/questdb/releases/tag/7.4.0) – Java-powered time-series database with Postgres wire protocol compatibility.
- [FerretDB 1.21](https://github.com/FerretDB/FerretDB/releases/tag/v1.21.0) – MongoDB-a-like but atop Postgres (or SQLite).
- [postgres-meta 0.80](https://github.com/supabase/postgres-meta) – A RESTful API for managing Postgres.    

**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|*).
