This is the message the author posted on LinkedIn:
After a lot of thought, I have decided to stop working on pgBackRest. I did not come to this decision lightly. pgBackRest has been my passion project for the last thirteen years, and I was fortunate to have corporate sponsorship for much of this time, but there were also many late nights and weekends as I worked to make pgBackRest the project it is today, aided by numerous contributors. Every open-source developer knows exactly what I mean and how much of your life gets devoted to a special project.
Since Crunchy Data was sold, I have been maintaining pgBackRest and looking for a position that would allow me to continue the work, but so far I have not been successful. Likewise, my efforts to secure sponsorship have also fallen far short of what I need to make the project viable.
Like everyone else, I need to make a living, and the range of pgBackRest-related roles is very limited. I can now consider a wider variety of opportunities, but those will not leave me time to work on pgBackRest, which requires a fair amount of time for maintenance, bug fixes, PR reviews, answering issues, etc. That does not even include time to write new features, which is what I really love to do. Rather than do the work poorly and/or sporadically, I think it makes more sense to have a hard stop.
I will post a notice of obsolescence and archive the repository. I imagine at some point pgBackRest will be forked, but that will be a new project with new maintainers, and they will need to build trust the same way we did.
Again, many thanks to all the pgBackRest contributors over the years. It was a pleasure working with you!
I had just last year prepared a detailed guide for reliable postgre backups to local volume as well as cloud storage, using pgBackRest, for my own projects.. pgBackRest have worked so well for me
One thing people are not taking into account is that many developers now have less time and are working a lot more because AI makes it seem it should be possible to hit those deadlines, etc.
Also, many programs have spent their entire funds on tokens, so neither are left with extra money nor time.
True.. I truly wish wish we had better open-source license and more open-source projects adopt it..
Tiered pricing license... tiering based upon annual company revenues... should start super low for small companies (free for individuals), and jump to thousands of dollars per year for 10+ milion revenue companies.
I understand that this might not fully be in the spirit of open-source, but, what's happening currently is way worse.. where giant companies rip off the hardwork of open-source software maintainers without compsensating them adequately.
Sigh. Bane of my existence is any service which does this.
My org theoretically makes hundreds of millions, unfortunately none of that money is ours. So I get forced into a procurement process for anything that costs more than (ridiculously small limit), and get stuck using the worst in class because it's cheaper.
It would be great if github or someone did something to support licenses like this. So procurement was more like a cloud spend. Companies could put caps on the monthly spend for the projects they use. Organizations should be used to paying for products from individuals just like how they do from megacorporations.
The project is being abandoned because the maintainer is tired of working for free. They said that they hoped someone would fork it, change the name, and pick up where it was left off.
Why would anyone do that? If the person who was most passionate about it for over a dozen years has given up because it was never worth the trouble; what fool would think things will be different going forward?
While I tend to agree with the line of thinking in this thread that the ethos of open source (and the web writ large) have been taken advantage of by capitalism, I can't quite see this: things belong to a time and place in one's life. The creator feels like his time with this project is at an end, but why would that be an impediment to someone who needs a package like this stepping up and maintaining it? Better to do that than build a replacement from scratch (most likely). And more likely to attract new sponsorship by being a reliable steward of a known name (albeit with a suffix or something).
“And many programmers, they say to me, “The people who hire programmers demand this, this and this. If I don't do those things, I'll starve.” It's literally the word they use. Well, you know, as a waiter, you're not going to starve. So, really, they're in no danger.”
- Richard Stallman in 2001 admitting his ideology can’t explain how a programmer can eat
In my opinion, though this is HN heresy, the free software ideology and ethos was naïve, utopian, and clueless about how power works, from day 1. His dream is literally structurally impossible, capitalism or no capitalism, so long as humans need money to eat.
> what fool would think things will be different going forward?
> This is the curse of OSS.
There are examples of failing forks. And there are examples of forks that became better than the original. It is not possible to generalize this into one or the other solely via a curse-of-OSS conclusion. Funding will always be an issue; but funding is not necessarily the main or only criterium as to whether a project fails or succeeds.
Open Source has worked fine here. The author doesn't find financial support for the work, so they just want to change winds and that's a perfectly fine path forward.
If this is really much more than a personal project "for fun, on my leisure time", and it became an actually serious product-level project that provides good value in commercial environments for people, there's clearly an opportunity for a for-profit company to step in and cover that niche. But that'd require that users became customers and actually departed from their money to pay for it :)
I guess most will switch instead to asking who's the next project maintainer to work on it, to whom the new bug reports and complaints can continue to be sent for free. But if there's money to be made by using a tool, there should be money paid for using it too. We "just" need to find the new generation of FOSS Financial Sustainability solutions that actually work! Donations don't make the cut.
I have a moderately sized 2TB production database I have enjoyed using pgBackRest on, and was—this week—going to set it up on another 8TB database we have.
What's the next-closest thing? wal-g? barman? databasus? I only get to cosplay as a DBA.
I can beat you on the timing - I'd never used pgBackRest before, but started setting it up on a project about 2 hours ago, by the time I'd finished the README had been updated.
**Backup types**
- **Logical** — Native dump of the database in its engine-specific binary format. Compressed and streamed directly to storage with no intermediate files
- **Physical** — File-level copy of the entire database cluster. Faster backup and restore for large datasets compared to logical dumps
- **Incremental** — Physical base backup combined with continuous WAL segment archiving. **Enables Point-in-time recovery (PITR)** — restore to any second between backups. Designed for disaster recovery and near-zero data loss requirements
EDIT: It seem PITR has been added this March (for PostgreSQL)
Are you using WAL archiving? As far as I understand, pgbackrest and Barman can also use direct streaming from the DB (same mechanism as replication), I didn't find any mention of this in the WAL-G documentation.
With WAL archiving you need to wait for a WAL segment to finish before it's backed up. With streaming backups the deadtime is minimized. At least that's as far as I understand this, I didn't get to try this out in practice yet.
WAL-G's PITR backups are insurance against data loss through erroneous data manipulations (eg: accidental DELETE/DROP/UPDATE). WAL-G's streaming approach (using pg_receivewal or similar) sends WAL records to backup storage continuously as they're generated, rather than waiting for a full segment to complete.
On top of that, for availability (and minimizing deadtime), we have 2 replicas using streaming replication. If the lead PG crashes, one of the replicas is promoted to lead (and starts accepting writes), and we "only" lose the writes that haven't been sent over the streaming replication.
I won't say He should be working on it no matter what but I believe its a very good project and I think as always community forks will be the only option when it won't work in future
do not yell at me, but... this is where genAI may be useful.
what if, bare with me, what if, after a certain amount of time, a certain amount of "requests", a code library can be given to a genAI to maintain; no improvements, no extra features, just bug fixes? This could continue until either someone picks it up, or the open source solution becomes irrelevant, not enough "requests".
I was about to set up Postgres backups with pgbackrest very soon. It looked like the most mature solution for my use case. What I was aiming for was continuous backups to an object storage provider, without a central DB server but the backup tool directly installed on the Postgres server.
I'll have to look at the alternatives again, I think that was mostly WAL-G and Barman. It looks like Barman doesn't support direct backup to object storage, unfortunately. And I find the WAL-G documentation very confusing. What I'm looking for is WAL streaming and object storage support, to minimize the amount of data that can be lost and so I don't have to run my own backup server.
This is exactly what I was setting it up to do this morning. My research came down to this and WAL-G for the same reasons, and I picked pgBackRest over WAL-G because the documentation was clearer.
Really sad to see this. I had only recently learnt about this project, and was really impressed by it. I was planning to set it up this weekend (via autobase). I've also been under the impression that it's likely to be what powers the backups in RDS, Cloud SQL, etc., but I may have misunderstood.
> Since Crunchy Data was sold, I have been maintaining pgBackRest and looking for a position that would allow me to continue the work, but so far I have not been successful. Likewise, my efforts to secure sponsorship have also fallen far short of what I need to make the project viable.
So this was the problem, I thought Snowflake would pick up the sponsorship of this project but since it is a competing database it doesn't really make much sense.
I really wish many critical OSS projects get the sponsorship they need to continue.
Otherwise the software industry is in real trouble.
Forking it just passes the buck onto another maintainer with the same problem, this time without the original creator maintaining it.
Very simple. Name it to pgbackrest-AI and add the line:
"AI driven backups with smartest world class models optimizing every byte stored via deep AI analysis."
With that added, a million dollars is just chimp change. YC alone would be adding them to all the seasons multiple times over summer, winter and monsoon etc.
From what I can find Postgres 17 [1] introduced incremental backups to pg_basebackup, refined in 18, but nowhere near the full featureset of pgBackRest. Is that what you meant? Having builtin incremental replication to a S3-compatible storage would be great.
The number of maintainers is always smaller than the number of users for any successful project. GitHub displays the number of contributors as 57, I don't know if that's small or not.
They're right. This is over the top. Your initial post in this thread was sensible (telling the users of Pgbackrest that they should have supported it if they didn't want this to happen, and saying nothing about what emotions are valid to have), but you took it much further here. People should financially support the OSS projects they use, and the lack of such support is why this project is no longer maintained, but claiming people aren't allowed to feel anything about it is just playing a game that isn't helping the cause. We all know this problem, and being sad while having not supported the project isn't a statement that we disagree that the problem exists. It's a big stretch to assume that it is.
I've never heard of this project before and I still think it's a bummer that a tool people liked and that the maintainer cared about was unable to find backing. I was never going to support it; I just heard of it for the first time today and I don't use it! I'm still sad. We're not robots here. We're fellow developers, and we know it's tough out there.
That is exactly gatekeeping, no? You are only entitled to feel sad if you contributed effort or financially, otherwise you aren't allowed to feel.
Why can't others that just used the tool feel sad? It is supposed to be used, it's the whole reason for it to exist; not everyone using it will have technical expertise or money to contribute to it, feeling sad about it when it solved issues for someone is a completely normal response.
The reason for something to exist is not to be used. He was paid while doing it, and that pay stopped, and he kept doing it. Now he wishes to stop.
The reason for something to exist is someone finds joy doing it. Especially when they are unpaid.
The sadness should be focused on his inability to support himself with a tool that clearly a lot of companies, and people are using and gaining value for.
The reason for a tool to exist is to be used, even if it's just by a singular person, other projects that aren't tools do definitely fit into the criteria "just for the joy of it" but a tool, by definition, has at least one usage, and building a tool gives someone joy from the tool being useful.
The sadness doesn't need to be focused anywhere, you can feel sad for more than one thing at a time. People can be sad that a tool they think is great, have relied on, and has been important for their use case is going away while also be sad that such a great tool doesn't get enough support from companies. Both can be true, no need to control what people can or should feel.
> Those that paid, or did any kind of contributions upstream are entitled to be sad.
I didn’t even use pgbackrest but I’m still sad to see this.
I should have checked the comments first to determine my eligibility to be sad about this issue, before I had feelings that upset the sadness gatekeepers.
It's such a strawman to claim that you cannot be sad if something disappears where you have not financially or you work contributed. Someone can say that they are sad that the Notre Dame burned down even if they haven't personally contributed to Notre Dame.
Something burning down is a tragedy, beyond anyone's control. It's also possible to love something for its beauty, and be sad that a globally historic monument suffered such an act of god that the irreplaceable art and craftsmanship is gone forever.
Something closing down, perhaps because there was not enough money to sustain its continued operation, when tens of thousands or hundreds of thousands of people were using it? That's a perfectly appropriate time to remind folks, "if you like free software, consider donating to help sustain the almost full-time effort it takes to keep packages like this alive."
Op said, "this is sad [because] I've been using this," and the implication is, "I want to keep using this but now I can't because it's gone" and making the connection that "one way to prevent this from happening to other packages you like is to contribute financially."
i wish the guy could have made a paid version so he could have continued it. Unfortunately, most people do not want to financially contribute to open source and especially when that open source project becomes a paid product.
Why not try to find a successor instead of archiving the repo and forbidding the use of the name? I'm sure with a 3.8k stars repo you'll find competent people willing to continue the work.
Sometimes you want to hang things to your wall, and be done with it.
I'd personally do the same. I wouldn't want to be bothered by the future maintainers' choices and get feedback/flak for it. It's a well-known and well-respected way to cycle the name with a "-ng" or "-nx" prefix to signal that this is the newer project with a different set of maintainers.
Being MIT, while is not my favorite license, doesn't give free license to grab and run with things.
Honestly, in my eyes, 3.8K or 38K stars mean nothing, because Open Source is not about you [0], to begin with.
It is reasonable to ask for a follow-up project/fork to take a different name. Naming your project, e. G., pgbackrest-ng, does not sound too onerous of a requirement and clearly communicates to users that maintainers have changed (see also paperless ng/ngx as good examples of such a change).
Finding a successor is also not easy nor cheap (in regards to time).
You'll also find plenty of potential malware injectors too, and who would want the responsibility of trying to vet a successor and have to work out the difference?
There's no way to know if a new maintainer will live up to whatever standards they've kept to date. Archiving should be the default decision, unless there's formal and elaborate handover.
Because you will attract people who will want to take advantage of the trust these 3.8k stars signal to some people, for example, by means of supply chain attacks.
The Apache Foundation used to help with this sort of governance problem didn't it? Thugh maybe pgbackrest isn't quite big and official enough to be the kind of software which Apache takes on, and one certainly hears (increasing?) grumbles about Apache's stewardship.
A maintainer that is mainly motivated by the 3.8k stars aspect is probably not the person you want. Working on critical OSS software is fun until it's not, especially when you are not paid for that work.
Those people can just as easily fork it and make a new name then. Otherwise you end up with situations where it's actually an entirely new thing under new developers under the same name. Even riskier in the age of the "AI clean rewrite"
> TL;DR: pgBackRest is no longer being maintained. If you fork pgBackRest, please select a new name for your project.
> I imagine at some point pgBackRest will be forked, but that will be a new project with new maintainers, and they will need to build trust the same way we did.
I completely understand having to back out of maintenance on an OSS project, but why also slam the door closed on someone taking over? There may be someone very qualified willing to step up, and that could give your existing users continuity.
This feels analgous to deciding to stop maintaining a community garden, but rather than let your neighbor step up, you decide to salt the ground so it can never grow there again, telling your neighbors "you can pull up my plants and move them, but you can't use all the ground and roots that are already there." It just feels bitter.
To me it reads as being worried that someone malicious could step in and use the project's name to do harm. If you don't have someone within the project with trust built ready-to-go, establishing that trust enough to hand over the project is a big task.
I totally agree, that is a huge risk. But what if someone from the postgres team decided to step up and maintain it? I'm not saying that's likely, but it is possible for a very popular tool like this. With the way the project exited now, that would not at all be an option. Obviously if postgres themselves decided to do it, they wouldn't need the previous credibility so this isn't the best example
The Apache Foundation used to step in in this kind of situation, didn't it? Thugh maybe pgbackrest isn't quite big and official enough to be the kind of software which Apache takes on, and one certainly hears (increasing?) grumbles about Apache's stewardship.
From the story told in the README it is clear this is a project ran by a single person. There is no wider maintenance team that can be trusted with continuing the project. So anyone who offers to take up the maintenance will be unknown to the current maintainer and cannot automatically be trusted.
The alternative to this seemingly bitter approach is handing over the trust they built to some unknown person who can do whatever they want with the data in a lot of PostgreSQL databases around the world. I think I prefer the bitterness here over blind trust.
Sure, but what if someone from the postgres team decided they wanted to step up? The door is completely shut for that now. And if we can't trust someone from the postgres team to do it, then who can we trust?
I think this is overly harsh. After the guy has been working on the project for such a long period a handover would inevitably be a long process, not least to ensure whoever took over didn't abuse the existing user-base. Completely fair if the existing maintainer doesn't want to take on this work, and arguably a fork forces consumers to properly consider that someone else is in charge now.
After a lot of thought, I have decided to stop working on pgBackRest. I did not come to this decision lightly. pgBackRest has been my passion project for the last thirteen years, and I was fortunate to have corporate sponsorship for much of this time, but there were also many late nights and weekends as I worked to make pgBackRest the project it is today, aided by numerous contributors. Every open-source developer knows exactly what I mean and how much of your life gets devoted to a special project.
Since Crunchy Data was sold, I have been maintaining pgBackRest and looking for a position that would allow me to continue the work, but so far I have not been successful. Likewise, my efforts to secure sponsorship have also fallen far short of what I need to make the project viable.
Like everyone else, I need to make a living, and the range of pgBackRest-related roles is very limited. I can now consider a wider variety of opportunities, but those will not leave me time to work on pgBackRest, which requires a fair amount of time for maintenance, bug fixes, PR reviews, answering issues, etc. That does not even include time to write new features, which is what I really love to do. Rather than do the work poorly and/or sporadically, I think it makes more sense to have a hard stop.
I will post a notice of obsolescence and archive the repository. I imagine at some point pgBackRest will be forked, but that will be a new project with new maintainers, and they will need to build trust the same way we did.
Again, many thanks to all the pgBackRest contributors over the years. It was a pleasure working with you!
reply