Gentoo Websites Logo
Go to: Gentoo Home Documentation Forums Lists Bugs Planet Store Wiki Get Gentoo!
Bug 588792 - >=net-nds/openldap-2.4.42 should require dev-db/lmdb >= bundled lmdb
Summary: >=net-nds/openldap-2.4.42 should require dev-db/lmdb >= bundled lmdb
Status: RESOLVED FIXED
Alias: None
Product: Gentoo Linux
Classification: Unclassified
Component: Current packages (show other bugs)
Hardware: All Linux
: Normal normal
Assignee: Gentoo LDAP project
URL:
Whiteboard:
Keywords:
Depends on:
Blocks:
 
Reported: 2016-07-14 02:00 UTC by Paul B. Henson
Modified: 2023-02-10 01:06 UTC (History)
1 user (show)

See Also:
Package list:
Runtime testing required: ---


Attachments

Note You need to log in before you can comment on or make changes to this bug.
Description Paul B. Henson 2016-07-14 02:00:42 UTC
I see that starting with 2.4.42 the openldap ebuild has a dependency on an external lmdb ebuild rather that using the bundled lmdb shipped with openldap.

However, all of the ebuilds, up to and including the one for 2.4.44 have a dependency for >=dev-db/lmdb-0.9.14. lmdb 0.9.14 was released on 9/19/2014. The bundled version of lmdb shipped with openldap 2.4.44 is 0.9.18 released on 2/5/2016. Trying to use openldap 2.4.44 in production with the lmdb backend with that ancient version of lmdb would be an insanely horrific train wreck.

lmdb is actually developed and tested as part of openldap in the openldap source tree, the copy on github is extracted for the convenience of other projects that want to use it. Any given version of openldap is specifically tested and vetted with the bundled version of lmdb that comes with it. I believe that is always a released version, not some random code, so it is possible to use the external repo like you have switched to, but if you want the gentoo ebuild to be suitable for use to deploy a production openldap server then you will need to stabilize lmdb versions and openldap versions in lockstep and update the lmdb version requirements in openldap ebuilds to match the version it came bundled with. Otherwise Gentoo is going to join Redhat on the openldap mailing list as an operating system where the first piece of advice for anyone running into a problem is "Ditch the distribution package and compile it yourself" :(.

Thanks...
Comment 1 Paul B. Henson 2016-11-28 05:01:40 UTC
I see openldap 2.4.43 is now stable, which has the external lmdb dependency, and still depends on >=dev-db/lmdb-0.9.14. openldap 2.4.43 is bundled with lmdb 0.9.17, running it with any other version, particularly any older version, will not be supported by upstream. They might be ok running it with a newer version, but they definitely will not support an openldap server deployed with an obsolete version of lmdb. I see that version 0.9.18 is currently available in portage, so somebody installing fresh should be ok, but without the dependency properly defined in the ebuild someone could end up with a bad combination if they already had an older version installed.

If you want Gentoo to be a well supported platform for running openldap as a server, I reiterate my request that you please have each openldap ebuild version require >= the version of lmdb that it was bundled with. For 2.4.43, that would be lmdb 0.9.17. For 2.4.44, that is 0.9.18.

Thanks...
Comment 2 Robin Johnson archtester Gentoo Infrastructure gentoo-dev Security 2016-11-28 05:33:37 UTC
deps bumped.
Comment 3 Larry the Git Cow gentoo-dev 2023-02-10 01:05:34 UTC
The bug has been referenced in the following commit(s):

https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=c035192e22ba5714ccc15672f335e9b97aaeb568

commit c035192e22ba5714ccc15672f335e9b97aaeb568
Author:     Sam James <sam@gentoo.org>
AuthorDate: 2023-02-10 01:02:06 +0000
Commit:     Sam James <sam@gentoo.org>
CommitDate: 2023-02-10 01:05:03 +0000

    net-nds/openldap: fix lmdb version, add version check
    
    We must use at least the version of lmdb bundled with OpenLDAP.
    
    Bug: https://bugs.gentoo.org/588792
    Signed-off-by: Sam James <sam@gentoo.org>

 .../{openldap-2.6.4.ebuild => openldap-2.6.4-r1.ebuild} | 17 ++++++++++++++++-
 1 file changed, 16 insertions(+), 1 deletion(-)
Comment 4 Sam James archtester Gentoo Infrastructure gentoo-dev Security 2023-02-10 01:06:28 UTC
Your point is an important one and the ebuild now has a sanity check to make sure it's always satisfying this condition.