<?xml version="1.0" encoding="UTF-8"?><rss xmlns:dc="http://purl.org/dc/elements/1.1/" xmlns:content="http://purl.org/rss/1.0/modules/content/" xmlns:atom="http://www.w3.org/2005/Atom" version="2.0"><channel><title><![CDATA[PostgreSQL addon: optional logical replication for apps that need it]]></title><description><![CDATA[<p dir="auto">Some apps now need PostgreSQL logical replication. The one I've hit is wger: since version 2.0, its mobile app requires PowerSync, which reads changes from the wger database through a logical replication slot. PowerSync, ElectricSQL, Supabase Realtime, Zero and Debezium all work this way.</p>
<p dir="auto">The addon currently can't support this. The server runs with wal_level=replica, and app roles don't have the REPLICATION attribute. Neither can be changed from inside a package, so the only option is to bundle a separate PostgreSQL in the app and give up the addon's managed backups and upgrades.</p>
<p dir="auto">Would you consider an opt-in addon option, something like "postgresql": { "logicalReplication": true }? It would need to:</p>
<ul>
<li>run the server with wal_level=logical (the only cost to other apps is somewhat more write-ahead log (WAL) volume)</li>
<li>grant REPLICATION to the role of each app that asks for it</li>
<li>set max_slot_wal_keep_size, so an abandoned slot can't fill the shared disk</li>
<li>drop the app's replication slots on uninstall and before a restore</li>
</ul>
<p dir="auto">With that, packages like wger could stay on the addon instead of each shipping its own database.</p>
]]></description><link>https://forum.cloudron.io/topic/15996/postgresql-addon-optional-logical-replication-for-apps-that-need-it</link><generator>RSS for Node</generator><lastBuildDate>Sat, 26 Sep 2026 09:23:10 GMT</lastBuildDate><atom:link href="https://forum.cloudron.io/topic/15996.rss" rel="self" type="application/rss+xml"/><pubDate>Tue, 22 Sep 2026 10:06:20 GMT</pubDate><ttl>60</ttl><item><title><![CDATA[Reply to PostgreSQL addon: optional logical replication for apps that need it on Wed, 23 Sep 2026 13:04:57 GMT]]></title><description><![CDATA[<blockquote>
<p dir="auto">I presume you noticed, but, 18 is not 19 <img src="https://forum.cloudron.io/assets/plugins/nodebb-plugin-emoji/emoji/android/1f642.png?v=5de145fdea7" class="not-responsive emoji emoji-android emoji--slightly_smiling_face" style="height:23px;width:auto;vertical-align:middle" title=":)" alt="🙂" /></p>
</blockquote>
<p dir="auto">that's sadly true. 19 will be released... <s>soon</s> this autumn (also, I haven't tested that change yet, only have that from the docs)</p>
]]></description><link>https://forum.cloudron.io/post/129908</link><guid isPermaLink="true">https://forum.cloudron.io/post/129908</guid><dc:creator><![CDATA[roliG]]></dc:creator><pubDate>Wed, 23 Sep 2026 13:04:57 GMT</pubDate></item><item><title><![CDATA[Reply to PostgreSQL addon: optional logical replication for apps that need it on Wed, 23 Sep 2026 12:59:09 GMT]]></title><description><![CDATA[<blockquote>
<p dir="auto"><a class="plugin-mentions-user plugin-mentions-a" href="/user/girish" aria-label="Profile: girish">@<bdi>girish</bdi></a> <a href="/post/129906">said</a>:</p>
<p dir="auto">postgres 18</p>
</blockquote>
<p dir="auto">I presume you noticed, but, 18 is not 19 <img src="https://forum.cloudron.io/assets/plugins/nodebb-plugin-emoji/emoji/android/1f642.png?v=5de145fdea7" class="not-responsive emoji emoji-android emoji--slightly_smiling_face" style="height:23px;width:auto;vertical-align:middle" title=":)" alt="🙂" /></p>
]]></description><link>https://forum.cloudron.io/post/129907</link><guid isPermaLink="true">https://forum.cloudron.io/post/129907</guid><dc:creator><![CDATA[jdaviescoates]]></dc:creator><pubDate>Wed, 23 Sep 2026 12:59:09 GMT</pubDate></item><item><title><![CDATA[Reply to PostgreSQL addon: optional logical replication for apps that need it on Wed, 23 Sep 2026 12:58:05 GMT]]></title><description><![CDATA[<p dir="auto">Oh thanks for that <a class="plugin-mentions-user plugin-mentions-a" href="/user/jdaviescoates" aria-label="Profile: jdaviescoates">@<bdi>jdaviescoates</bdi></a> , i had missed that note from <a class="plugin-mentions-user plugin-mentions-a" href="/user/rolig" aria-label="Profile: rolig">@<bdi>rolig</bdi></a> . So, we will roll out postgres 18 next week as part of 10.1. I guess we might just wait it out instead of adding this feature flag.</p>
]]></description><link>https://forum.cloudron.io/post/129906</link><guid isPermaLink="true">https://forum.cloudron.io/post/129906</guid><dc:creator><![CDATA[girish]]></dc:creator><pubDate>Wed, 23 Sep 2026 12:58:05 GMT</pubDate></item><item><title><![CDATA[Reply to PostgreSQL addon: optional logical replication for apps that need it on Wed, 23 Sep 2026 12:55:12 GMT]]></title><description><![CDATA[<p dir="auto"><a class="plugin-mentions-user plugin-mentions-a" href="/user/girish" aria-label="Profile: girish">@<bdi>girish</bdi></a> see also:</p>
<blockquote>
<p dir="auto"><a class="plugin-mentions-user plugin-mentions-a" href="/user/rolig" aria-label="Profile: roliG">@<bdi>roliG</bdi></a> <a href="/post/129904">said</a>:</p>
<p dir="auto">FYI, it seems postgres 19 won't need the explicit "wal_level = replica", as it will automatically set it if there's a replication</p>
</blockquote>
]]></description><link>https://forum.cloudron.io/post/129905</link><guid isPermaLink="true">https://forum.cloudron.io/post/129905</guid><dc:creator><![CDATA[jdaviescoates]]></dc:creator><pubDate>Wed, 23 Sep 2026 12:55:12 GMT</pubDate></item><item><title><![CDATA[Reply to PostgreSQL addon: optional logical replication for apps that need it on Wed, 23 Sep 2026 12:32:17 GMT]]></title><description><![CDATA[<p dir="auto"><a class="plugin-mentions-user plugin-mentions-a" href="/user/loudlemur" aria-label="Profile: loudlemur">@<bdi>loudlemur</bdi></a> I will have to read up on this, to see what this is</p>
]]></description><link>https://forum.cloudron.io/post/129903</link><guid isPermaLink="true">https://forum.cloudron.io/post/129903</guid><dc:creator><![CDATA[girish]]></dc:creator><pubDate>Wed, 23 Sep 2026 12:32:17 GMT</pubDate></item></channel></rss>