<!-- mobian-agent-page publisher="dailydev" canonical="https://daily.dev/posts/postgres-guc-lets-security-checks-quietly-vanish-langgraph-agents-get-a-real-backend-zasroxbty" -->

---
title: Postgres GUC lets security checks quietly vanish,...
description: Today's posts are a smaller, quieter batch focused on Postgres internals and application architecture rather than big product news. One deep dive into...
canonical: https://daily.dev/posts/postgres-guc-lets-security-checks-quietly-vanish-langgraph-agents-get-a-real-backend-zasroxbty
twitter:card: summary_large_image
twitter:site: @dailydotdev
og:type: website
og:site_name: daily.dev
og:title: Postgres GUC lets security checks quietly vanish, LangGraph agents get a real backend | daily.dev
og:description: Today's posts are a smaller, quieter batch focused on Postgres internals and application architecture rather than big product news. One deep dive into...
og:url: https://daily.dev/posts/postgres-guc-lets-security-checks-quietly-vanish-langgraph-agents-get-a-real-backend-zasroxbty
og:image: https://api.daily.dev/og/posts/zAsroxBTy.png
og:image:alt: Postgres GUC lets security checks quietly vanish, LangGraph agents get a real backend
og:image:width: 1200
og:image:height: 630
og:locale: en
---

> ## Documentation Index
> Fetch the complete documentation index at: https://daily.dev/llms.txt
> Use this file to discover all available pages before exploring further.

# Postgres GUC lets security checks quietly vanish, LangGraph agents get a real backend

**[Databases Digest](https://daily.dev/sources/databases_digest)** · 3 min read · 0 upvotes · 0 comments

## Summary

Today's posts are a smaller, quieter batch focused on Postgres internals and application architecture rather than big product news. One deep dive into lo_compat_privileges shows how a single GUC can silently strip large-object security checks with no log trace. A backend walkthrough covers moving a LangGraph AI agent off in-memory state and onto Postgres to avoid double-booking and data loss on restart. There's also pushback on the idea that LLMs solve software's performance problems, plus a personal roundup of PostGIS and geospatial talks.

## Content

**TLDR:** Today's posts are a smaller, quieter batch focused on Postgres internals and application architecture rather than big product news. One deep dive into lo_compat_privileges shows how a single GUC can silently strip large-object security checks with no log trace. A backend walkthrough covers moving a LangGraph AI agent off in-memory state and onto Postgres to avoid double-booking and data loss on restart. There's also pushback on the idea that LLMs solve software's performance problems, plus a personal roundup of PostGIS and geospatial talks.

---

## lo_compat_privileges silently disables Postgres large-object security checks

Turning on this GUC reverts large-object permissions to the pre-9.0 model, where any connected role can read, overwrite, or delete large objects regardless of ownership or ACLs. It quietly disables checks in lo_open(), lo_unlink(), COMMENT ON LARGE OBJECT, and SECURITY LABEL, while leaving GRANT, ALTER OWNER, and server-side lo_import/lo_export checks intact - an inconsistency that's easy to miss. People usually flip it on to work around permission-denied errors from ownership mismatches, or to stop vacuumlo choking on objects it doesn't own. Both problems have a cheap real fix using pg_largeobject_metadata and GRANT/ALTER OWNER, and neither requires disabling security with zero log trace. [Read more](https://daily.dev/posts/GEZlRXrNe)

## Giving a LangGraph booking agent a real Postgres backend

A demo LangGraph agent using a MemorySaver checkpointer and a Python list for bookings works fine until you leave a single process - then state vanishes on restart and concurrent sessions can double-book the same slot. The fix is a BookingRepository protocol that lets the graph swap between an in-memory implementation and a PostgresBookingRepository without touching the graph logic itself. The writeup includes the schema (technicians and bookings tables) and shows how nodes like generate_schedule_options_node and confirm_booking_node read and write through the repository interface. [Read more](https://daily.dev/posts/WqDF4d0cP)

## Do LLMs actually remove the reasons software stays slow?

This piece pushes back on Dan Luu's argument that cheap LLM-generated code removes the historical excuses for slow software. The counter: lower implementation cost doesn't automatically buy you performance work, because tolerance for slowness keeps rising, performance budgets are often zero, and priority - not cost - was usually the real blocker. It also re-examines Luu's two headline examples, pgrust and an LLM-generated regex engine called FRE, arguing both look overfit to specific benchmarks (ClickBench and rebar) rather than showing generalizable gains, and points out that JIT compilation in databases already exists in Umbra, CedarDB, SingleStore, Redshift, and Impala - so the framing of JITs as previously inaccessible doesn't hold up. [Read more](https://daily.dev/posts/1euu022cd)

## Similar posts on daily.dev

- [All Your GUCs in a Row: lo\_compat\_privileges](https://daily.dev/posts/all-your-gucs-in-a-row-lo-compat-privileges-gezlrxrne) · Planet PostgreSQL · 0 upvotes · 0 comments
- [Postgres Checkpoint Followup and Collation Visualization and Codex Luna](https://daily.dev/posts/postgres-checkpoint-followup-and-collation-visualization-and-codex-luna-tgnq8cmgw) · Planet PostgreSQL · 0 upvotes · 0 comments

---

Tags: [#security](https://daily.dev/tags/security), [#llm](https://daily.dev/tags/llm), [#ai-agents](https://daily.dev/tags/ai-agents), [#postgresql](https://daily.dev/tags/postgresql), [#langgraph](https://daily.dev/tags/langgraph)

[View this post on daily.dev](https://daily.dev/posts/postgres-guc-lets-security-checks-quietly-vanish-langgraph-agents-get-a-real-backend-zasroxbty)

```json
{"@context":"https://schema.org","@graph":[{"@type":"Organization","@id":"https://daily.dev/#organization","name":"daily.dev","url":"https://daily.dev","logo":{"@type":"ImageObject","url":"https://daily.dev/apple-touch-icon.png","width":180,"height":180},"sameAs":["https://twitter.com/dailydotdev","https://github.com/dailydotdev","https://www.linkedin.com/company/daily-dev-ltd"]},{"@type":"WebSite","@id":"https://daily.dev/#website","url":"https://daily.dev","name":"daily.dev","publisher":{"@id":"https://daily.dev/#organization"},"potentialAction":{"@type":"SearchAction","target":{"@type":"EntryPoint","urlTemplate":"https://daily.dev/search?q={search_term_string}"},"query-input":"required name=search_term_string"}}]}
{"@context":"https://schema.org","@type":"DiscussionForumPosting","mainEntityOfPage":"https://daily.dev/posts/postgres-guc-lets-security-checks-quietly-vanish-langgraph-agents-get-a-real-backend-zasroxbty","headline":"Postgres GUC lets security checks quietly vanish, LangGraph agents get a real backend","text":"Today's posts are a smaller, quieter batch focused on Postgres internals and application architecture rather than big product news. One deep dive into lo_compat_privileges shows how a single GUC can silently strip large-object security checks with no log trace. A backend walkthrough covers moving a LangGraph AI agent off in-memory state and onto Postgres to avoid double-booking and data loss on restart. There's also pushback on the idea that LLMs solve software's performance problems, plus a personal roundup of PostGIS and geospatial talks.","url":"https://daily.dev/posts/postgres-guc-lets-security-checks-quietly-vanish-langgraph-agents-get-a-real-backend-zasroxbty","datePublished":"2026-08-23T04:18:41.658Z","dateModified":"2026-08-23T04:19:00.386Z","author":{"@type":"Organization","name":"Databases Digest","logo":"https://media.daily.dev/image/upload/s--ir1hdV8b--/f_auto,q_auto/v1773839400/logos/databases_digest?_a=BAMAMiiu0","url":"https://daily.dev/sources/databases_digest"},"interactionStatistic":[{"@type":"InteractionCounter","interactionType":{"@type":"LikeAction"},"userInteractionCount":0},{"@type":"InteractionCounter","interactionType":{"@type":"CommentAction"},"userInteractionCount":0}],"isPartOf":{"@type":"WebPage","url":"https://daily.dev/sources/databases_digest","name":"Databases Digest"}}
{"@context":"https://schema.org","@type":"BreadcrumbList","itemListElement":[{"@type":"ListItem","position":1,"name":"Home","item":"https://daily.dev"},{"@type":"ListItem","position":2,"name":"Databases Digest","item":"https://daily.dev/sources/databases_digest"},{"@type":"ListItem","position":3,"name":"Postgres GUC lets security checks quietly vanish, LangGraph agents get a real backend"}]}
```

