On (11/05/13 00:26), steve wrote:
On 11/05/13 00:05, Lukas Slebodnik wrote:
>On (10/05/13 22:33), steve wrote:
>>On 10/05/13 13:26, Sumit Bose wrote:
>>>On Fri, May 10, 2013 at 11:51:44AM +0200, steve wrote:
>>>>On 10/05/13 11:23, Sumit Bose wrote:
>>>>>On Fri, May 10, 2013 at 11:02:08AM +0200, steve wrote:
>>>>>>On 10/05/13 10:49, Jakub Hrozek wrote:
>>>>>>>On Fri, May 10, 2013 at 10:46:01AM +0200, steve wrote:
>>>>>>>>Hi
>>>>>>>>openSUSE 12.3
>>>>>>>>The build and install goes OK but upon running sssd:
>>>>>>>>
>>>>>>>> sssd -i -d3
>>>>>>>>ldb: module version mismatch in
>>>>>>>>../source4/dsdb/samdb/ldb_modules/acl.c :
ldb_version=1.1.14
>>>>>>>>module_version=1.1.15
>>>>>>>>ldb: failed to initialise module /usr/lib/ldb/acl.so :
Unavailable
>>>>>>>>(Fri May 10 09:56:58:975063 2013) [sssd]
[load_configuration]
>>>>>>>>(0x0010): The confdb initialization failed
>>>>>>>>(Fri May 10 09:56:58:981620 2013) [sssd] [main] (0x0020):
SSSD
>>>>>>>>couldn't load the configuration database.
>>>>>>>>
>>>>>>>>Any ideas?
>>>>>>>>Cheers,
>>>>>>>>Steve
>>>>>>>
>>>>>>>Is there any chance you compiled the SSSD with a different ldb
version
>>>>>>>that you are using during runtime?
>>>>>>Hi
>>>>>>I built samba4 (to get the sssd dependencies, openSUSE has no
stable
>>>>>>samba4-devel) on the same box immediately before I built sssd so
I
>>>>>>assume that the versions must be the same.
>>>>>
>>>>>ah, you've build samba4 yourself. Then you have to make sure that
either
>>>>>samba uses the system libraries or sssd uses the libraries created by
>>>>>your samba build. One of the Fedora configure options is:
>>>>>
>>>>>--bundled-libraries=heimdal,!zlib,!popt,!talloc,!pytalloc,!pytalloc-util,!tevent,!pytevent,!tdb,!pytdb,!ldb,!pyldb
>>>>>
>>>>>which tells the samba build system to build the internal heimdal
>>>>>library, but use system libraries for the others. But since the
system
>>>>>libraries of OpenSUSE are a bit older then the ones from you samba
build
>>>>>I'm not sure if all requirements are met here.
>>>>>
>>>>>Alternatively you can build a libldb-1.1.15 package on you own and
>>>>>replace the offical OpenSUSE package with your new one.
>>>>>
>>>>>HTH
>>>>>
>>>>>bye,
>>>>>Sumit
>>>>>>
>>>>
>>>>Hi
>>>>I think it's using the correct libs. I copied /usr/local/samba/lib/*
>>>>to /usr/lib and /usr/local/samba/include/* to /usr/include
>>>>
>>>>A bit unorthodox I know, but the only way I could get it to build.
>>>>ldconfig just didn't do it.
>>>>Steve
>>>
>>>But still sssd was build against the older version, can you check if
>>>/usr/lib/libldb.so really points to the new version and not to the old
>>>one?
>>>
>>>bye,
>>>Sumit
>>>
>>>>
>>
>>Hi
>>It's working now I installed 1.1.15 Just trying to understand this. I
>>know that samba4 was built with 1.1.14 because it's the version that
>>comes with openSUSE 12.3, so there must be something in the sssd
>>build that demands 1.1.15. My logic is that I did not have to rebuild
>>samba4 after I had installed 1.1.15, just sssd. Conclusion: sssd beta
>>requires libldb-1.1.15. How is my reasoning?
>
>
> sssd -i -d3
>ldb: module version mismatch in
>../source4/dsdb/samdb/ldb_modules/acl.c : ldb_version=1.1.14
>module_version=1.1.15
>ldb: failed to initialise module /usr/lib/ldb/acl.so : Unavailable
>(Fri May 10 09:56:58:975063 2013) [sssd] [load_configuration]
>(0x0010): The confdb initialization failed
>(Fri May 10 09:56:58:981620 2013) [sssd] [main] (0x0020): SSSD
>couldn't load the configuration database.
>
> ^^^^^^
>I will try to explain it.
>
>SSSD needs only one ldb module "memberof.so", which is built together with
sssd
>and installed to ldb modules directory. SSSD initialize ldb and expects,
>that memberof.so plugin will be automatically loaded. But ldb automatically
>tries to load each file in ldb module directory.
>
>In your case ldb(version=1.1.14) tried to load plugin acl.so, which was built
>against ldb version(1.1.15). And therefore "The confdb initialization
failed"
>I think that it should not happen, that you have ldb modules built
>with different ldb version. If there was only plugin "memberof.so"
>in ldb modules directory, sssd would start without failure.
>
>After installation of ldb version 1.1.15:
>You built sssd again. You started sssd. SSSD tried to initialize ldb.
>LDB didn't have problem to load all modules, because the module_version of
>file acl.so(and others) was the same like ldb_version and therefore
>sssd did not fail.
>
>LS
Thanks so much for your time Lukas. An excellent explanation. Just
one point:
" In your case ldb(version=1.1.14) tried to load plugin acl.so, which
was built against ldb version(1.1.15)."
I don't think, that I made mistake. I only interpret log message you provided.
Copy one more time:
>../source4/dsdb/samdb/ldb_modules/acl.c : ldb_version=1.1.14
>module_version=1.1.15
But wasn't acl.so installed by the samba4 build against 1.1.14? I
then built sssd against 1.1.14 but got the type mismatch. Does this
imply that sssd beta expects 1.1.15, or rather produces plugins which
are only compatible with 1.1.15?
In fedora spec file, we have next line
Requires: libldb >= 0.9.3
So I don't thik, that we are only compatilbe with ldb 1.1.15
LS