{"slug": "patroni", "name": "Patroni", "category": "databases", "category_name": "Databases", "description": "", "recommenders": 7, "commenters": 11, "warners": 2, "score": 4.849, "rising": -0.96, "first": "2025-12-20", "latest": "2026-08-19", "why": "a really nice and reliable PostgreSQL distribution that provides automatic failover", "why_is_quote": true, "has_verdict": false, "sentiment": {"recommend": 7, "neutral": 2, "compare": 0, "warn": 2}, "spark": [0, 4, 0, 0, 0, 1, 0, 1, 0, 1, 0, 0], "listed": true, "loved": [], "caveat": "", "short_quote": "a really nice and reliable PostgreSQL distribution that provides automatic failover", "kind": "", "icon": true, "domain": null, "github_repo": "github.com/patroni/patroni", "official_url": "https://github.com/patroni/patroni", "pricing": "", "aliases": ["Patroni"], "verdict": null, "praise": [{"label": "", "summary": "", "quotes": [{"id": 789809408, "item_id": 49363088, "url": "https://news.ycombinator.com/item?id=49363088", "by": "macartain", "date": "2026-08-19", "version": null, "stance": "recommend", "quote": "https://patroni.readthedocs.io/", "excerpt": "https://patroni.readthedocs.io/ But I sure wish it was 'core' and we didn't have to worry about it potentially going away, becoming de-supported..", "context": "", "use_case": "PostgreSQL high availability", "switched_from": "", "story": "PostgreSQL for Everything"}, {"id": 775688416, "item_id": 48480526, "url": "https://news.ycombinator.com/item?id=48480526", "by": "parthdesai", "date": "2026-06-10", "version": null, "stance": "recommend", "quote": "Patroni 1.0 was released in 2016, i.e ~10 years ago.", "excerpt": "Patroni 1.0 was released in 2016, i.e ~10 years ago. https://github.com/patroni/patroni", "context": "", "use_case": "PostgreSQL high availability", "switched_from": "", "story": "PgDog is funded and coming to a database near you"}, {"id": 761564528, "item_id": 47597783, "url": "https://news.ycombinator.com/item?id=47597783", "by": "timcambrant", "date": "2026-04-01", "version": null, "stance": "recommend", "quote": "a really nice and reliable PostgreSQL distribution that provides automatic failover", "excerpt": "I use Patroni (https://github.com/patroni/patroni) (no affiliation to me) which is a really nice and reliable PostgreSQL distribution that provides automatic failover and not just active-standby nodes with manual failover. As I understand it, you would have to script a separate watchdog process for the basic PostgreSQL, to get high availability.", "context": "", "use_case": "PostgreSQL high availability", "switched_from": "", "story": "Oracle slashes 30k jobs with a cold 6 a.m. email"}, {"id": 741771425, "item_id": 46360714, "url": "https://news.ycombinator.com/item?id=46360714", "by": "ahachete", "date": "2025-12-22", "version": null, "stance": "recommend", "quote": "the trusted and reputed Patroni, which is known NOT to risk split brains", "excerpt": "Thank you for your feedback. I'm trying to extract possible improvement actions from your comment, and here are my thoughts. That certificate expiry issue was unfortunate, but was resolved (if I'm not mistaken) a couple of years ago. StackGres is just a control plane, your database is as stable as a standalone one. StackGres itself may fail and it won't affect your database, it's not on the data plane. Indeed, it has", "context": "", "use_case": "", "switched_from": "", "story": "Your Supabase is public if you turn off RLS"}, {"id": 741431120, "item_id": 46339445, "url": "https://news.ycombinator.com/item?id=46339445", "by": "tempest_", "date": "2025-12-20", "version": null, "stance": "recommend", "quote": "We use patroni and run it outside of k8s on prem, no issues in 6 or 7 years.", "excerpt": "We use patroni and run it outside of k8s on prem, no issues in 6 or 7 years. Just upgraded from pg 12 to 17 with basically no down time without issue either.", "context": "", "use_case": "", "switched_from": "", "story": "Go ahead, self-host Postgres"}]}], "caveats": [{"label": "", "summary": "", "quotes": [{"id": 750516754, "item_id": 46907297, "url": "https://news.ycombinator.com/item?id=46907297", "by": "lima", "date": "2026-02-05", "version": null, "stance": "warn", "quote": "Someone tried it with Patroni and failed miserably", "excerpt": "Postgres replication, even in synchronous mode, does not maintain its consistency guarantees during network partitions. It's not a CP system - I don't think it would actually pass a Jepsen test suite in a multi-node setup[1]. No amount of tooling can fix this without a consensus mechanism for transactions. Same with MySQL and many other \"traditional\" databases. It tends to work out because these failures are rare and", "context": "", "use_case": "", "switched_from": "", "story": "It's 2026, Just Use Postgres"}, {"id": 741466401, "item_id": 46341650, "url": "https://news.ycombinator.com/item?id=46341650", "by": "wb14123", "date": "2025-12-20", "version": null, "stance": "warn", "quote": "found some pretty critical problems", "excerpt": "Yeah I'm also wondering that. I'm looking for self-host PostgreSQL after Cockroach changed their free tier license but found the HA part of PostgreSQL is really lacking. I tested Patroni which seems to be a popular choice but found some pretty critical problems (https://www.binwang.me/2024-12-02-PostgreSQL-High-Availability-Solutions-Part-1.html). I tried to explore some other solutions, but found out the lack of a h", "context": "", "use_case": "", "switched_from": "", "story": "Go ahead, self-host Postgres"}]}], "who": [{"by": "jknoepfler", "context": "works on a database-as-a-service team", "url": "https://news.ycombinator.com/item?id=46337308", "date": "2025-12-20"}], "tags": [], "use_cases": ["postgresql high availability", "postgresql ha", "ha postgresql failover", "postgres high availability"], "compared": [{"slug": "postgresql", "name": "PostgreSQL", "co": 6, "switched_from": 0, "switched_to": 0}, {"slug": "cloudnativepg", "name": "CloudNativePG", "co": 3, "switched_from": 0, "switched_to": 0}, {"slug": "autobase", "name": "Autobase", "co": 2, "switched_from": 0, "switched_to": 0}, {"slug": "mysql", "name": "MySQL", "co": 2, "switched_from": 0, "switched_to": 0}, {"slug": "cockroachdb", "name": "CockroachDB", "co": 2, "switched_from": 0, "switched_to": 0}], "makers": [], "threads": [{"url": "https://news.ycombinator.com/item?id=46336947", "title": "Go ahead, self-host Postgres", "mentions": 6}, {"url": "https://news.ycombinator.com/item?id=49361279", "title": "PostgreSQL for Everything", "mentions": 1}, {"url": "https://news.ycombinator.com/item?id=48476466", "title": "PgDog is funded and coming to a database near you", "mentions": 1}, {"url": "https://news.ycombinator.com/item?id=47587935", "title": "Oracle slashes 30k jobs with a cold 6 a.m. email", "mentions": 1}, {"url": "https://news.ycombinator.com/item?id=46905555", "title": "It's 2026, Just Use Postgres", "mentions": 1}, {"url": "https://news.ycombinator.com/item?id=46355345", "title": "Your Supabase is public if you turn off RLS", "mentions": 1}], "sentiment_by_month": {"2025-11": {}, "2025-12": {"neutral": 2, "recommend": 4, "warn": 1}, "2026-01": {}, "2026-02": {"warn": 1}, "2026-03": {}, "2026-04": {"recommend": 1}, "2026-05": {}, "2026-06": {"recommend": 1}, "2026-07": {}, "2026-08": {"recommend": 1}, "2026-09": {}, "2026-10": {}}, "versions": [], "version_unnamed": 0, "family_ref": null, "runs_on": null, "lines": [], "quotes": [{"id": 789809408, "item_id": 49363088, "url": "https://news.ycombinator.com/item?id=49363088", "by": "macartain", "date": "2026-08-19", "version": null, "stance": "recommend", "quote": "https://patroni.readthedocs.io/", "excerpt": "https://patroni.readthedocs.io/ But I sure wish it was 'core' and we didn't have to worry about it potentially going away, becoming de-supported..", "context": "", "use_case": "PostgreSQL high availability", "switched_from": "", "story": "PostgreSQL for Everything"}, {"id": 775688416, "item_id": 48480526, "url": "https://news.ycombinator.com/item?id=48480526", "by": "parthdesai", "date": "2026-06-10", "version": null, "stance": "recommend", "quote": "Patroni 1.0 was released in 2016, i.e ~10 years ago.", "excerpt": "Patroni 1.0 was released in 2016, i.e ~10 years ago. https://github.com/patroni/patroni", "context": "", "use_case": "PostgreSQL high availability", "switched_from": "", "story": "PgDog is funded and coming to a database near you"}, {"id": 761564528, "item_id": 47597783, "url": "https://news.ycombinator.com/item?id=47597783", "by": "timcambrant", "date": "2026-04-01", "version": null, "stance": "recommend", "quote": "a really nice and reliable PostgreSQL distribution that provides automatic failover", "excerpt": "I use Patroni (https://github.com/patroni/patroni) (no affiliation to me) which is a really nice and reliable PostgreSQL distribution that provides automatic failover and not just active-standby nodes with manual failover. As I understand it, you would have to script a separate watchdog process for the basic PostgreSQL, to get high availability.", "context": "", "use_case": "PostgreSQL high availability", "switched_from": "", "story": "Oracle slashes 30k jobs with a cold 6 a.m. email"}, {"id": 750516754, "item_id": 46907297, "url": "https://news.ycombinator.com/item?id=46907297", "by": "lima", "date": "2026-02-05", "version": null, "stance": "warn", "quote": "Someone tried it with Patroni and failed miserably", "excerpt": "Postgres replication, even in synchronous mode, does not maintain its consistency guarantees during network partitions. It's not a CP system - I don't think it would actually pass a Jepsen test suite in a multi-node setup[1]. No amount of tooling can fix this without a consensus mechanism for transactions. Same with MySQL and many other \"traditional\" databases. It tends to work out because these failures are rare and", "context": "", "use_case": "", "switched_from": "", "story": "It's 2026, Just Use Postgres"}, {"id": 741771425, "item_id": 46360714, "url": "https://news.ycombinator.com/item?id=46360714", "by": "ahachete", "date": "2025-12-22", "version": null, "stance": "recommend", "quote": "the trusted and reputed Patroni, which is known NOT to risk split brains", "excerpt": "Thank you for your feedback. I'm trying to extract possible improvement actions from your comment, and here are my thoughts. That certificate expiry issue was unfortunate, but was resolved (if I'm not mistaken) a couple of years ago. StackGres is just a control plane, your database is as stable as a standalone one. StackGres itself may fail and it won't affect your database, it's not on the data plane. Indeed, it has", "context": "", "use_case": "", "switched_from": "", "story": "Your Supabase is public if you turn off RLS"}, {"id": 741466401, "item_id": 46341650, "url": "https://news.ycombinator.com/item?id=46341650", "by": "wb14123", "date": "2025-12-20", "version": null, "stance": "warn", "quote": "found some pretty critical problems", "excerpt": "Yeah I'm also wondering that. I'm looking for self-host PostgreSQL after Cockroach changed their free tier license but found the HA part of PostgreSQL is really lacking. I tested Patroni which seems to be a popular choice but found some pretty critical problems (https://www.binwang.me/2024-12-02-PostgreSQL-High-Availability-Solutions-Part-1.html). I tried to explore some other solutions, but found out the lack of a h", "context": "", "use_case": "", "switched_from": "", "story": "Go ahead, self-host Postgres"}, {"id": 741460448, "item_id": 46341278, "url": "https://news.ycombinator.com/item?id=46341278", "by": "da02", "date": "2025-12-20", "version": null, "stance": "neutral", "quote": "What is your preferred alternative to Patroni?", "excerpt": "What is your preferred alternative to Patroni?", "context": "", "use_case": "PostgreSQL HA", "switched_from": "", "story": "Go ahead, self-host Postgres"}, {"id": 741431120, "item_id": 46339445, "url": "https://news.ycombinator.com/item?id=46339445", "by": "tempest_", "date": "2025-12-20", "version": null, "stance": "recommend", "quote": "We use patroni and run it outside of k8s on prem, no issues in 6 or 7 years.", "excerpt": "We use patroni and run it outside of k8s on prem, no issues in 6 or 7 years. Just upgraded from pg 12 to 17 with basically no down time without issue either.", "context": "", "use_case": "", "switched_from": "", "story": "Go ahead, self-host Postgres"}, {"id": 741401680, "item_id": 46337605, "url": "https://news.ycombinator.com/item?id=46337605", "by": "franckpachot", "date": "2025-12-20", "version": null, "stance": "recommend", "quote": "", "excerpt": "Be sure to read the \u041c\u0443ths and Truths about Synchronous Replication in PostgreSQL (by the author of Patroni) before considering those solutions as cloud-native high availability: https://www.postgresql.eu/events/pgconfde2025/sessions/session/6559/slides/663/Myths%20and%20Truths%20about%20Synchronous%20Replication%20in%20PostgreSQL.pdf", "context": "", "use_case": "PostgreSQL high availability", "switched_from": "", "story": "Go ahead, self-host Postgres"}, {"id": 741396928, "item_id": 46337308, "url": "https://news.ycombinator.com/item?id=46337308", "by": "jknoepfler", "date": "2025-12-20", "version": null, "stance": "recommend", "quote": "I use Patroni for that in a k8s environment", "excerpt": "I use Patroni for that in a k8s environment (although it works anywhere). I get an off-the-shelf declarative deployment of an HA postgres cluster with automatic failover with a little boiler-plate YAML. Patroni has been around for awhile. The database-as-a-service team where I work uses it under the hood. I used it to build database-as-a-service functionality on the infra platform team I was at prior to that. It's ba", "context": "works on a database-as-a-service team", "use_case": "HA PostgreSQL failover", "switched_from": "", "story": "Go ahead, self-host Postgres"}, {"id": 741396128, "item_id": 46337258, "url": "https://news.ycombinator.com/item?id=46337258", "by": "mfalcao", "date": "2025-12-20", "version": null, "stance": "neutral", "quote": "The most common way to achieve H\u00c1 is using Patroni.", "excerpt": "The most common way to achieve H\u00c1 is using Patroni. The easiest way to set it up is using Autobase (https://autobase.tech). CloudNativePG (https://cloudnative-pg.io) is a great option if you\u2019re using Kubernetes. There\u2019s also pg_auto_failover which is a Postgres extension and a bit less complex than the alternatives, but it has its drawbacks.", "context": "", "use_case": "Postgres high availability", "switched_from": "", "story": "Go ahead, self-host Postgres"}]}