Red Hat's move here is a bit like taking a trusted well-supported tool like bash and replacing it with some shit branch of ksh from 1984, and forcing people to pay for it.
Red Hat's move here is a bit like taking a trusted well-supported tool like bash and replacing it with some shit branch of ksh from 1984, and forcing people to pay for it.
389 doesn't have any of those problems. Yes, you can argue that Red Hat/SuSE should/could have simply contributed to OpenLDAP, but it hasn't seen a major release in a decade, and there was an incredible amount of friction in trying to contribute anything large.
This is a poor excuse. While the flat file (slapd.conf) is deprecated in 2.4, it still works fine if you don't mind restarting to apply changes, and you can easily switch from slapd.conf to back-config (but not the other way) when you are finished getting a new stack up.
I encourage you to look at things from the perspective of someone new to LDAP, or maybe someone new to directory services in general.
LDAP already introduces its own terminology which is a little confusing at first. And it is an object database, which will be less familiar to many people than a relational database. Add to that the 'database number' thing when it might not be clear to beginners what is going into which one and why.
It's not something you're going to be able to get setup and running in an afternoon, and that's fine, some things are too complex to just be thrown together.
Even when I worked out how to do online config, if I made a mistake and the service wouldn't start, I couldn't work out how to manually revert the change so the service could start again.
That's nonsense. OpenLDAP has had seamless integration with Heimdal Kerberos for literally decades. And the support for running a KDC on top of LDAP was written by OpenLDAP contributors (Luke Howard and myself). https://github.com/heimdal/heimdal/blob/master/lib/hdb/hdb-l...
as an aside, I also wrote the support for using the KDC on top of LMDB https://github.com/heimdal/heimdal/blob/master/lib/hdb/hdb-m...
As for duct tape and random LDIFs - again, Symas Corp and the OpenLDAP Project were the only guys funding efforts to standardize this integration. http://kerberos.996246.n3.nabble.com/Ietf-krb-wg-LDAP-schema... https://datatracker.ietf.org/doc/draft-chu-ldap-kdc-schema/
The fact that Kerberos works well on top of LDAP today is because the OpenLDAP Project laid the groundwork for that to happen.
> Yes, you can argue that Red Hat/SuSE should/could have simply contributed to OpenLDAP, but it hasn't seen a major release in a decade, and there was an incredible amount of friction in trying to contribute anything large.
RedHat has never tried to contribute anything large to OpenLDAP. And large contributions aren't a problem. We have entirely new DB backends still being contributed by 3rd parties. E.g. the WiredTiger backend http://www.openldap.org/devel/gitweb.cgi?p=openldap.git;a=tr...
So, my impression is that OpenLDAP and RH never had good cooperation. Since LDAP is a rather niche protocol/ecosystem these days (a pity, IMO, but that's how it is), I'm not surprised that RH felt confident in ditching a component which they couldn't maintain to anyone's satisfaction, especially given that they have their own server, which is not as good but good enough.
But, IIRC, the Debian developers did some work on addressing the gaps, whereas the RH/moznss guys just put their fingers in their ears and said "nobody needs well-performing SSL handling in a server context like OpenSSL provides", and all of their contributions focused purely on the OpenLDAP client-side.
For a long time, I provided builds of OpenLDAP for RHEL3/4/5, and finally on RHEL7 RH's packages were recent enough and didn't have too many mozNSS-related problems to be usable out-the-box in our large OpenLDAP deployment.
I'll have to give the guys who are still there a heads-up and consider reviving my RPM rebuilds for RHEL.
https://bugs.debian.org/cgi-bin/bugreport.cgi?bug=725091
> Distribution packages are not meant to be used for production services.
You have to have balls to put in a ticket something that basically amounts to: "what you are doing is useless, people should be recompiling everything".
And while while searching for this ticket, I also can across a few others like that. But at least, there are active on downstream tickets...
http://mozilla.6506.n7.nabble.com/Comparison-of-OpenSSL-and-... https://bugzilla.redhat.com/show_bug.cgi?id=502133 https://wiki.mozilla.org/NSS_Shared_DB_And_LINUX
Not that we didn't try. We went out of our way to support that crap. Despite the inadequacies of the API I wrote the code to support it. http://www.openldap.org/devel/gitweb.cgi?p=openldap.git;a=hi...
We bent over backwards to support their crap. Which is more than can be said in return. https://bugzilla.mozilla.org/show_bug.cgi?id=480174
Also not sure where you're getting the "shit branch of ksh from 1984" characterization. Looks actively-developed to me. Both 389DS and OpenLDAP are slapd forks, so the simile doesn't really work anyway.
(Side note: the notion of bash somehow being "trusted" relative to ksh is a little weird considering ksh's continued use in OpenBSD and bash's well-publicized security holes with hip names like Shellshock)
And of course the article contains direct links to both a page where you can buy support packages for OpenLDAP and something called "OpenLDAP Gold".
There is no need to attack Symas for selling a supported variant of OpenLDAP, it's valid under the license after all, they have been the exclusive maintainers for OpenLDAP for many, many years, and it is of course the exact same model used for 389 DS.
Meanwhile everyone is free to share links to counterpoints in support of 389DS, assuming you can find any.
That's not what I'm saying. I'm saying that one shouldn't take their criticisms of a competitor's product seriously when they are selling their own product in the press release itself. It's a conflict of interest.
...
>they have been the exclusive maintainers for OpenLDAP for many, many years,
I think your critical source analysis skills might need some brushing off.
> "That is not an opinion based on any marketing material - 389DS is an unreliable dog"
The press statement you linked to reads as an advertisement. You posit a statement as fact without any information to back it up. Why is it so unreliable?
> "and even today it's still built on top of an Oracle-owned database engine."
Whether the product is built on an Oracle-owned database engine or not, is not a reflection of the stability of a product. It's clear that you mention this as a negative to reinforce your position, but while technically correct, looking through the history of the product, it was developed by Sun and acquired by Red Hat in 2005, years before Sun was acquired by Oracle.
> "There is no need to attack Symas"
@amyjess's comment simply declared your linked article as biased, which it clearly is. This is not an attack.
> "Meanwhile everyone is free to share links to counterpoints in support of 389DS, assuming you can find any."
Why do we have to assume the product is broken and find proof that it is not? You have posited an opinion without any sources to back it up; the burden of proof lies with you.
(Edited for formatting changes)
Just focusing on storage backends - if you have ever deployed anything that uses BDB (Subversion, Apache, 389, Exim, god knows how many more), one thing you'll become quickly familiar with is it's amazing ability to randomly get into an unusable state, despite an otherwise healthy and unrebooted machine, despite no administrative interference, despite apparently no users or no load at all (e.g. on a Monday morning in a ~10 user office).
My opinions are based on having worked in infrastructure since ~2002, having deployed BDB many times, and having spent many hours trying to figure out how to get an app unbricked without losing its underlying database.
I spent time as an administrator at several companies where Subversion would go down monthly or worse because BDB locking would get messed up like this, and the result is always yet another tarball of the previous database just in case poking it completely corrupts the install. I've had to handle emergency calls because Exim was spewing permanent errors to customers due to a BDB lookup randomly starting to fail.
In other words over the years, like many before me, and for very good reasons, I've come to consider BDB a red flag, and where it goes trouble goes. Put in simpler terms, on a scale of software quality running from 10 ("excellent") to 0 ("crapware"), BDB sits somewhere around -7 ("you had one job"). But don't take my word for it, look at the list of common hazards listed here: https://web.stanford.edu/class/cs276a/projects/docs/berkeley...
Despite that, having deployed OpenLDAP and suffered through its.. suffering.. documentation on several occasions going back ~15 years, including during periods when BDB was the default, post installation I have never once seen OpenLDAP going down. It's very solid software, in spite of prior database engine hindrances.
LMDB is of course no panacea, but having spent years with it as a developer (and maintainer of py-lmdb), I can say categorically that I would not pick BDB over it in any situation, not just due to performance concerns (which are great), but because the design is so damned simple (a single write lock, a single lock file) that I have never once seen it self-corrupt or get wedged in ways that I would have struggled to deal with in my time served an administrator.
The article says:
"This is a guest post from Univention."
Howard Chu's company is Symas, not Univention (a different consulting company who does provide support contracts for open-source software including OpenLDAP).
Yes, there is a link to a blog post by Symas that relates to the announcement, but not in the article being discussed here. If you meant the Symas blog post, you should be more clear on that.
I don't think I could've been more clear.
The blog probably directly tells us the motivation for a response at all: external pressure to Symas.