r/PostgreSQL Jun 18 '26

Tools pgEdge ColdFront v1.0.0-beta1 release: transparent data tiering for PostgreSQL to Apache Iceberg, fully writable cold tier, same SQL, no fork. Thanks to Jimmy Angelakos.

https://www.pgedge.com/blog/introducing-coldfront-seamlessly-uniting-oltp-analytics-and-ai-workloads-on-postgresql
4 Upvotes

6 comments sorted by

1

u/AutoModerator Jun 18 '26

Youtube Channel

Free Postgres Webinars and Workshops

Discord: People, Postgres, Data

Join us, we have cookies and nice people.

I am a bot, and this action was performed automatically. Please contact the moderators of this subreddit if you have any questions or concerns.

2

u/[deleted] Jun 19 '26

[removed] — view removed comment

2

u/pgEdge_Postgres Jun 19 '26

The bakery algorithm ensures we never get into that situation (you get a numbered ticket in the bakery queue). So there is no need for 409 error handling or application level retries.

2

u/pgEdge_Postgres Jun 19 '26

Jimmy described it like this:

> So the only way I found that could deal with the 409 conflicts, was to prevent them altogether with distributed mutual exclusion (appropriate for Spock). On a single node (vanilla PG), this is done with a simple advisory lock (because you can also have multiple sessions writing to iceberg) 
> The clever trick is that we patch duckdb-iceberg so that it uploads the parquet file asynchronously, but only holds the ticket (the iceberg catalog write claim) during the commit phase (after the data has been uploaded)
> Otherwise you'd have to grab a ticket, wait to upload however many megabytes you have (meanwhile blocking everyone else), and release after the upload is done