Bug 769155

Summary: sssd fails to start due to relying on particular version of unversioned ldb
Product: [openSUSE] openSUSE 12.2 Reporter: Jan Engelhardt <jengelh>
Component: SambaAssignee: Lars Müller <lmuelle>
Status: RESOLVED UPSTREAM QA Contact: The 'Opening Windows to a Wider World' guys <samba-maintainers>
Severity: Critical    
Priority: P5 - None CC: andreas, bernet, coolo, forgotten_P0S1U1H0eb, jmcdonough, marvin24, ptomulik, ralf, samba-maintainers
Version: Factory   
Target Milestone: ---   
Hardware: All   
OS: Linux   
Whiteboard:
Found By: Beta-Customer Services Priority:
Business Priority: Blocker: ---
Marketing QA Status: --- IT Deployment: ---

Description Jan Engelhardt 2012-06-28 00:14:15 UTC
I noticed that the sssd deamon of sssd-1.8.3 exits shortly after start in a Factory install. The cause for this is that "sssd" was not rebuilt after the "ldb" package changed -- but this is a requirement; LDB modules must be run against the version they are compiled with.

See https://fedorahosted.org/pipermail/sssd-devel/2012-June/010300.html for the mailing list thread I did upstream.

rebuild=direct would be good, but alas, this would also work and properly link modules against the right LDB version.

I propose to change the ldb package to have a SONAME bump at every release. Unfortunately, ldb uses the waf build system which I have no clue about. If it were autotools, I would use the -release flag

 libldb_la_LDFLAGS = -release ${PACKAGE_VERSION}

which would cause the library to be named libldb-1.1.6.so.1. LDB modules (in /usr/lib64/ldb) are then linked against that rather than just libldb.so.1.
Comment 1 Jan Engelhardt 2012-07-06 13:52:49 UTC
*** Bug 768565 has been marked as a duplicate of this bug. ***
Comment 2 James McDonough 2012-07-19 20:23:56 UTC
Ralf,
Wouldn't this be taken care of by the versioning symbols?  How is sssd built?
Comment 3 Jan Engelhardt 2012-07-19 21:11:58 UTC
If only libldb *had* some kind of versioning.
Comment 4 Forgotten User P0S1U1H0eb 2012-09-09 14:50:39 UTC
(In reply to comment #2)
> Ralf,
> Wouldn't this be taken care of by the versioning symbols?  How is sssd built?

We explicitly require a particular libldb version in the specfile.
Comment 5 Jan Engelhardt 2012-09-09 16:14:33 UTC
Knock, knock. Samba guys? Ping?
Comment 6 James McDonough 2012-09-10 10:48:40 UTC
Lars, Ralf...?
Comment 7 Lars Müller 2012-09-10 12:20:30 UTC
Isn't this a duplicate of bnc#779079?

See also https://build.openSUSE.org/request/show/133272
Comment 8 Lars Müller 2012-09-10 12:39:04 UTC
https://lists.fedorahosted.org/pipermail/sssd-devel/2012-June/010300.html is the working link to the thread Jan mentioned with his initial comment.
Comment 9 Jan Engelhardt 2012-09-10 13:37:50 UTC
Yes, 779079 is a duplicate of this one.

Since code normally speaks louder, here is a patch. But waf does not seem capable of properly creating the devel symlink now (libldb.so -> libldb-1.1.10.so), which sucks.
I can't say I like that samba now uses waf -- it's an obscure ("unknown, from the dark") build system practically nobody uses. 

Index: ldb-1.1.10/wscript
===================================================================
--- ldb-1.1.10.orig/wscript
+++ ldb-1.1.10/wscript
@@ -140,6 +140,7 @@ def build(bld):
                           public_headers_install=not private_library,
                           pc_files='ldb.pc',
                           vnum=VERSION,
+                          realname = bld.make_libname("ldb-" + VERSION),
                           private_library=private_library,
                           manpages='man/ldb.3',
                           abi_directory='ABI',
Comment 10 Lars Müller 2012-09-10 14:10:57 UTC
*** Bug 779079 has been marked as a duplicate of this bug. ***
Comment 11 Lars Müller 2012-12-12 10:09:26 UTC
*** Bug 794064 has been marked as a duplicate of this bug. ***
Comment 12 Lars Müller 2012-12-12 10:54:20 UTC
This issue is tracked upstream at https://bugzilla.samba.org/show_bug.cgi?id=9495
Comment 13 Lars Müller 2012-12-12 16:10:02 UTC
*** Bug 794064 has been marked as a duplicate of this bug. ***