The problem goes as well - there is a fair amount of users who are happy to pay for OSS software, yet a lot of VC funded companies in the chase of growth invest much more than Open Source ecosystem is willing to fund... the usual result is change of license
Note, if you're looking for MongoDB Enterprise features you can find many of them with Percona Server for MongoDB, which you can use for free the same way as MongoDB Community
That is right. We leverage some of the AGPL MongoDB code for the parser, as indicated by the License. Our own code can be licensed differently, see a previous discussion on Hacker News [1]. The Mongo API are reasonably stable over the last few years, only seeing very minor changes. Most of the later versions improved upon performance and transactions, which we support natively with our underlying technologies. Still, if you have any specific API that you feel is needed, we'd be happy to implement and we welcome community contributions.
There is no one size fits all. On the small scale "managed" cloud which takes care of as many things as possible is effective. As you scale though it will cost proportional to environment size, except some discount. With solutions like Hetzner you get a lot more of hardware for the price but have to invest more labor into managing it, with automation however this labor does not grow nearly as much as your environment size.
You can also consider https://coroot.com - it supports integration both with Collector and without as well as simulated eBPF traces for applications which are not Otel enabled.
Should not we look for database to be able to do online, efficient non locking addition of column with any default value, not just NULL rather than application to have a complicated and fragile logic ?
I believe PostgreSQL does this since v11, which was released in 2018: (current is v17)
> Many other useful performance improvements, including the ability to avoid a table rewrite for ALTER TABLE ... ADD COLUMN with a non-null column default
I think there is some restriction there, like the default can't be "volatile" - I can't remember the precise definition here but I think current_timestamp would be volatile, but any static value would not.
That is correct, for non-volatile default values Postgres is quick, which means that it is generally a safe operation.
Also interesting, `now()` is non-volatile because it's defined as "start of the transaction". So if you add a column with `DEFAULT now()` all rows will get the same value. But `timeofday()` is not volatile, so `DEFAULT timeofday()` is going to lock the table for a long time. A bit of a subtle gotcha.
Love hearing Open Source and SelfHosted but I do not clearly see link to the Github or other place where source code is. There is no link to the code in the launch message either.
reply