Learn more about these different git repos.
Other Git URLs
Describe the issue A new build caused failures on 32-bit build. Now, it is impossible to create a scratch build. I have a fix for my build but I am unable to build it because there is a circular dependency issue. The commit that will fix the issue: https://src.fedoraproject.org/rpms/openldap/pull-request/5 The scratch-build attempt with it(failed because of circular dependency issue): https://koji.fedoraproject.org/koji/taskinfo?taskID=55954312
When do you need this? (YYYY/MM/DD) As soon as possible (2020-11-20)
When is this no longer needed or useful? (YYYY/MM/DD) After it is fixed.
If we cannot complete your request, what is the impact? Fedora's build process is broken.
I've untagged openldap-2.4.56-2.fc34 from f34.
After the next newrepo's you should be able to build against the next oldest one.
Let us know if you have any issues with it.
Metadata Update from @kevin: - Issue close_status updated to: Fixed - Issue status updated to: Closed (was: Open)
Metadata Update from @spichugi: - Issue status updated to: Open (was: Closed)
I've untagged openldap-2.4.56-2.fc34 from f34. After the next newrepo's you should be able to build against the next oldest one. Let us know if you have any issues with it.
F34 builds are working now! Thanks! I see that eln105 are failing though... https://koji.fedoraproject.org/koji/taskinfo?taskID=55961962
F34
eln105
Is it possible that they have the old openldap-2.4.56-2.eln105 tagged? Feel free to close the issue if I misunderstood something.
openldap-2.4.56-2.eln105
It is possible. I can untag it there too, but not sure if that will break automation. ;(
@sgallagh @jkaluza ^
Go ahead. It should be fine.
Done.
I ran into a odd failure with the latest openldap... the compat-package link was broken and so everything using old openldap was broken.
On looking today I can't seem to see how it's wrong tho... just a heads up there may be some problem with -3 as well.
Yes, it's still broken... see https://koji.fedoraproject.org/koji/taskinfo?taskID=55963913 (which failed the rawhide compose)
I am untagging -3 also until it can get sorted out.
Yes, it's still broken... see https://koji.fedoraproject.org/koji/taskinfo?taskID=55963913 (which failed the rawhide compose) I am untagging -3 also until it can get sorted out.
I've installed the -3 version on F34 aarch64 but I see the file (symlink) libldap-2.4.so.2 there:
libldap-2.4.so.2
[root@vm ~]# ll /usr/lib64/ | grep libldap lrwxrwxrwx. 1 root root 18 Nov 20 14:02 libldap-2.4.so.2 -> libldap_r-2.4.so.2 lrwxrwxrwx. 1 root root 23 Nov 20 14:01 libldap_r-2.4.so.2 -> libldap_r-2.4.so.2.11.4 -rwxr-xr-x. 1 root root 403296 Nov 20 14:03 libldap_r-2.4.so.2.11.4
Could you please suggest what can be the issue?
I guess the problem is, up until openldap-2.4.56-1 there isn't a compat package and libldap-2.4.so.2 is provided by openldap-2.4.56-1 but now there is a compat package which is providing libldap-2.4.so.2 but its not provided by the openldap-2.4.56-3 somewhere in the dep chain, we need to update to make it use the compat package instead and that will fix this issue
openldap-2.4.56-1
openldap-2.4.56-3
See https://pagure.io/releng/failed-composes/issue/2036#comment-702565
Or the -devel rpm, which used to provide libldap-2.4.so.2, its not providing anymore.
-devel
Yes, it's still broken... see https://koji.fedoraproject.org/koji/taskinfo?taskID=55963913 (which failed the rawhide compose) I am untagging -3 also until it can get sorted out. I've installed the -3 version on F34 aarch64 but I see the file (symlink) libldap-2.4.so.2 there: [root@vm ~]# ll /usr/lib64/ | grep libldap lrwxrwxrwx. 1 root root 18 Nov 20 14:02 libldap-2.4.so.2 -> libldap_r-2.4.so.2 lrwxrwxrwx. 1 root root 23 Nov 20 14:01 libldap_r-2.4.so.2 -> libldap_r-2.4.so.2.11.4 -rwxr-xr-x. 1 root root 403296 Nov 20 14:03 libldap_r-2.4.so.2.11.4 Could you please suggest what can be the issue?
Try running ldconfig now?
Metadata Update from @mohanboddu: - Issue tagged with: low-gain, low-trouble, ops
[root@vm ~]# rpm -qa | grep openldap openldap-2.4.56-3.fc34.aarch64 openldap-compat-2.4.56-3.fc34.aarch64 [root@vm ~]# ldconfig -p | grep libldap libldap_r-2.4.so.2 (libc6,AArch64) => /lib64/libldap_r-2.4.so.2
and before it was:
[root@vm ~]# rpm -qa | grep openldap openldap-2.4.56-1.fc34.aarch64 [root@vm ~]# ldconfig -p | grep libldap libldap_r-2.4.so.2 (libc6,AArch64) => /lib64/libldap_r-2.4.so.2 libldap-2.4.so.2 (libc6,AArch64) => /lib64/libldap-2.4.so.2
So if I understand correctly, openldap-compat-2.4.56-3.fc34.aarch64 doesn't provide libldap-2.4.so.2 (libc6,AArch64) => /lib64/libldap-2.4.so.2 in ldconfig but other packages want it.
openldap-compat-2.4.56-3.fc34.aarch64
libldap-2.4.so.2 (libc6,AArch64) => /lib64/libldap-2.4.so.2
ldconfig
What we do in our spec file is:
%package compat Summary: Package providing legacy non-threded libldap Requires: openldap%{?_isa} = %{version}-%{release} # since libldap is manually linked from libldap_r, the provides is not generated automatically %ifarch armv7hl i686 Provides: libldap-2.4.so.%{so_ver} %else Provides: libldap-2.4.so.%{so_ver}()(%{__isa_bits}bit) %endif %description compat The openldap-compat package contains non-threaded variant of libldap which should not be used. Instead, applications should link to libldap_r which provides thread-safe variant with the very same API. # provide only libldap_r and symlink libldap to it rm -f libldap.so ln -s libldap{_r,}.so rm -f libldap-*.so.* ln -s libldap{_r,}-${version}.so.%{so_ver} popd %files compat %{_libdir}/libldap-2.4*.so.*
I am not sure what exactly is wrong here... https://src.fedoraproject.org/rpms/openldap/blob/master/f/openldap.spec
@kevin can it be that %ldconfig_scriplets doesn't link the compat package libraries properly and this is the issue why it fails here:
%ldconfig_scriplets
compat
https://pagure.io/releng/failed-composes/issue/2036#comment-702565 https://koji.fedoraproject.org/koji/taskinfo?taskID=55963913
I am really not sure why I can see the links in the directory but ldconfig doesn't have them (and the compose fails)
[root@vm ~]# rpm -qa | grep openldap openldap-2.4.56-3.fc34.aarch64 openldap-compat-2.4.56-3.fc34.aarch64 [root@vm ~]# ll /usr/lib64/ | grep libldap lrwxrwxrwx. 1 root root 18 Nov 20 14:02 libldap-2.4.so.2 -> libldap_r-2.4.so.2 lrwxrwxrwx. 1 root root 23 Nov 20 14:01 libldap_r-2.4.so.2 -> libldap_r-2.4.so.2.11.4 -rwxr-xr-x. 1 root root 403296 Nov 20 14:03 libldap_r-2.4.so.2.11.4
Note that %ldconfig_scriplets does nothing.
Okay... Could you please suggest how it can be fixed? I am really not sure why manually it works but with compose - it doesn't.
My theory is that ldconfig removes that link, causing everything looking for libldap-2.4.so.2 to fail to work.
ie:
Install a rawhide machine. Install the openldap-2.4.56-3 and openldap-compat-2.4.56-3 packages (confirm everyhing is happy and works fine) run 'ldconfig' as root (confirm that ldconfig removed this link and everything is broken).
I've not confirmed this theory, but I think thats what is happening. As to how to fix it... perhaps just copy the _r lib to the old one? or perhaps just work on fixing all the users of that and updating them all at once ( https://docs.fedoraproject.org/en-US/rawhide-gating/multi-builds/ ) or somehow adjust ldconfig to not mess up your manual symlink.
To expand on what @churchyard was saying... %ldconfig_scriptlets does nothing in a package anymore, because ldconfig is triggered when files are landed in ldconfig dirs (ie, instead of every package calling ldconfig after it's installed, there's just one call to ldconfig at the end of the transaction that sets up links for all of them).
I've uploaded a new version which should fix the issue (I hope). Could you please confirm that it works now? https://koji.fedoraproject.org/koji/buildinfo?buildID=1645917
Works fine here on my laptop. Thanks!
Great! We can probably close the issue then! Thank you once again!
And... I guess it's still not happy. ;(
DEBUG util.py:636: 2020-11-26 20:45:35,742: libldap_r-2.4.so.2, needed by /usr/bin/curl, not found DEBUG util.py:636: libldap_r-2.4.so.2, needed by /usr/bin/curl, not found DEBUG util.py:636: 2020-11-26 20:45:35,742: libldap_r-2.4.so.2, needed by /usr/bin/debuginfod-find, not found DEBUG util.py:636: libldap_r-2.4.so.2, needed by /usr/bin/debuginfod-find, not found DEBUG util.py:636: 2020-11-26 20:45:35,742: libldap_r-2.4.so.2, needed by /usr/bin/dbxtool, not found DEBUG util.py:636: libldap_r-2.4.so.2, needed by /usr/bin/dbxtool, not found DEBUG util.py:636: 2020-11-26 20:45:35,742: libldap_r-2.4.so.2, needed by /usr/bin/dfu-tool, not found DEBUG util.py:636: libldap_r-2.4.so.2, needed by /usr/bin/dfu-tool, not found DEBUG util.py:636: 2020-11-26 20:45:35,742: libldap_r-2.4.so.2, needed by /usr/bin/fwupdagent, not found DEBUG util.py:636: libldap_r-2.4.so.2, needed by /usr/bin/fwupdagent, not found DEBUG util.py:636: 2020-11-26 20:45:35,743: libldap_r-2.4.so.2, needed by /usr/bin/fwupdate, not found DEBUG util.py:636: libldap_r-2.4.so.2, needed by /usr/bin/fwupdate, not found DEBUG util.py:636: 2020-11-26 20:45:35,743: libldap_r-2.4.so.2, needed by /usr/bin/fwupdmgr, not found DEBUG util.py:636: libldap_r-2.4.so.2, needed by /usr/bin/fwupdmgr, not found DEBUG util.py:636: 2020-11-26 20:45:35,743: libldap_r-2.4.so.2, needed by /usr/bin/fwupdtool, not found DEBUG util.py:636: libldap_r-2.4.so.2, needed by /usr/bin/fwupdtool, not found DEBUG util.py:636: 2020-11-26 20:45:35,743: libldap_r-2.4.so.2, needed by /usr/bin/fwupdtpmevlog, not found DEBUG util.py:636: libldap_r-2.4.so.2, needed by /usr/bin/fwupdtpmevlog, not found DEBUG util.py:636: 2020-11-26 20:45:35,743: libldap_r-2.4.so.2, needed by /usr/bin/dirmngr, not found DEBUG util.py:636: libldap_r-2.4.so.2, needed by /usr/bin/dirmngr, not found DEBUG util.py:636: 2020-11-26 20:45:35,743: libldap_r-2.4.so.2, needed by /usr/bin/createrepo, not found DEBUG util.py:636: libldap_r-2.4.so.2, needed by /usr/bin/createrepo, not found DEBUG util.py:636: 2020-11-26 20:45:35,743: libldap_r-2.4.so.2, needed by /usr/bin/createrepo_c, not found DEBUG util.py:636: libldap_r-2.4.so.2, needed by /usr/bin/createrepo_c, not found DEBUG util.py:636: 2020-11-26 20:45:35,743: libldap_r-2.4.so.2, needed by /usr/bin/mergerepo, not found DEBUG util.py:636: libldap_r-2.4.so.2, needed by /usr/bin/mergerepo, not found DEBUG util.py:636: 2020-11-26 20:45:35,743: libldap_r-2.4.so.2, needed by /usr/bin/mergerepo_c, not found DEBUG util.py:636: libldap_r-2.4.so.2, needed by /usr/bin/mergerepo_c, not found DEBUG util.py:636: 2020-11-26 20:45:35,743: libldap_r-2.4.so.2, needed by /usr/bin/reporter-upload, not found DEBUG util.py:636: libldap_r-2.4.so.2, needed by /usr/bin/reporter-upload, not found DEBUG util.py:636: 2020-11-26 20:45:35,743: libldap_r-2.4.so.2, needed by /usr/bin/modifyrepo, not found DEBUG util.py:636: libldap_r-2.4.so.2, needed by /usr/bin/modifyrepo, not found DEBUG util.py:636: 2020-11-26 20:45:35,743: libldap_r-2.4.so.2, needed by /usr/bin/ostree, not found DEBUG util.py:636: libldap_r-2.4.so.2, needed by /usr/bin/ostree, not found DEBUG util.py:636: 2020-11-26 20:45:35,743: libldap_r-2.4.so.2, needed by /usr/bin/rofiles-fuse, not found DEBUG util.py:636: libldap_r-2.4.so.2, needed by /usr/bin/rofiles-fuse, not found DEBUG util.py:636: 2020-11-26 20:45:35,744: libldap_r-2.4.so.2, needed by /usr/bin/modifyrepo_c, not found DEBUG util.py:636: libldap_r-2.4.so.2, needed by /usr/bin/modifyrepo_c, not found DEBUG util.py:636: 2020-11-26 20:45:35,744: libldap_r-2.4.so.2, needed by /usr/bin/sqliterepo_c, not found DEBUG util.py:636: libldap_r-2.4.so.2, needed by /usr/bin/sqliterepo_c, not found DEBUG util.py:636: 2020-11-26 20:45:35,744: libldap_r-2.4.so.2, needed by /usr/bin/gdb, not found DEBUG util.py:636: libldap_r-2.4.so.2, needed by /usr/bin/gdb, not found DEBUG util.py:636: 2020-11-26 20:45:35,744: libldap_r-2.4.so.2, needed by /usr/bin/reporter-bugzilla, not found DEBUG util.py:636: libldap_r-2.4.so.2, needed by /usr/bin/reporter-bugzilla, not found DEBUG util.py:636: 2020-11-26 20:45:35,744: libldap_r-2.4.so.2, needed by /usr/bin/rpm-ostree, not found DEBUG util.py:636: libldap_r-2.4.so.2, needed by /usr/bin/rpm-ostree, not found DEBUG util.py:636: 2020-11-26 20:45:35,744: libldap_r-2.4.so.2, needed by /usr/sbin/rngd, not found DEBUG util.py:636: libldap_r-2.4.so.2, needed by /usr/sbin/rngd, not found DEBUG util.py:636: 2020-11-26 20:45:35,744: libldap_r-2.4.so.2, needed by /usr/sbin/NetworkManager, not found DEBUG util.py:636: libldap_r-2.4.so.2, needed by /usr/sbin/NetworkManager, not found DEBUG util.py:636: 2020-11-26 20:45:35,746: Cleaning up tempdir - /var/tmp/lorax/lorax.73h9sl2d DEBUG util.py:787: Child return code was: 1
So this is the new library now?
I am untagging openldap-2.4.56-4.fc34 and running another rawhide.
Yes...
I really don't get it... I've checked ldconfig and actual libs and everything is there.
openldap-2.4.56-4.fc34.x86_64
[root@vm ~]# ldconfig -p | grep libldap libldap_r-2.4.so.2 (libc6,x86-64) => /lib64/libldap_r-2.4.so.2 libldap-2.4.so.2 (libc6,x86-64) => /lib64/libldap-2.4.so.2 [root@vm ~]# ll /usr/lib64/ | grep libldap -rwxr-xr-x. 1 root root 15232 Nov 26 07:40 libldap-2.4.so.2 lrwxrwxrwx. 1 root root 16 Nov 26 07:40 libldap-2.4.so.2.11.4 -> libldap-2.4.so.2 lrwxrwxrwx. 1 root root 23 Nov 26 07:40 libldap_r-2.4.so.2 -> libldap_r-2.4.so.2.11.4 -rwxr-xr-x. 1 root root 362320 Nov 26 07:40 libldap_r-2.4.so.2.11.4
So the only difference with the old version is a bit different links:
openldap-2.4.56-1.fc34.x86_64
[root@gizmo ~]# ldconfig -p | grep libldap libldap_r-2.4.so.2 (libc6,x86-64) => /lib64/libldap_r-2.4.so.2 libldap-2.4.so.2 (libc6,x86-64) => /lib64/libldap-2.4.so.2 [root@gizmo ~]# ll /usr/lib64/ | grep libldap lrwxrwxrwx. 1 root root 21 Nov 18 09:10 libldap-2.4.so.2 -> libldap-2.4.so.2.11.4 -rwxr-xr-x. 1 root root 337760 Nov 18 09:11 libldap-2.4.so.2.11.4 lrwxrwxrwx. 1 root root 23 Nov 18 09:10 libldap_r-2.4.so.2 -> libldap_r-2.4.so.2.11.4 -rwxr-xr-x. 1 root root 362416 Nov 18 09:11 libldap_r-2.4.so.2.11.4
Can Koji somehow clean it? I am really confused...
Koji
Note that this can be also reproduced in Fedora ELN and internal RH compose with this openldap version. I do not understand what's going on there, because the libraries look correct.
@mohanboddu , @kevin , can you please also untag it from "eln"?
Also, I was looking at the recent builds to see what was going on with the failures but I can't find the failed build (from which you've provided the log). https://koji.fedoraproject.org/koji/builds?start=100&order=-build_id
Could you please give a link to the logs and the info (arch, other packages, etc) of the failed build?
Maybe something wrong with dependencies but I can't see it on my local env...
My guess is that Koji environment has some additional magic that I am not aware of... Could you please share the docs that can help me to understand the whole process?
Let me try to prepare reproducer for you locally.
@spichugi :
$ sudo dnf install lorax $ sudo lorax -p Test -v 1 -r 1 --source https://kojipkgs.fedoraproject.org/compose/rawhide/Fedora-Rawhide-20201126.n.1/compose/Everything/x86_64/os/ --workdir=./workdir --force ./test-compose
Note that everytime you run this lorax command, it will download those 800 packages again, there is no caching. I think lorax can be configured to do caching somehow but I have never used that.
Using this way, it fails on my laptop the same way as in Koji.
You can then inspect ./workdir and ./test-compose directories for more logs or even the installtree with all the packages installed I believe.
@spichugi , @kevin , @mohanboddu , The issue is in lorax templates:
https://github.com/weldr/lorax/blob/master/share/templates.d/99-generic/runtime-cleanup.tmpl#L267
I have no idea why it's removed from there and what is the process to change lorax templates Fedora uses.
It seems lorax templates contain that line for more than 10 years.
Oh yeah, I totally forgot about that cleaning. ;(
So, I think we need a new lorax with that removed/adjusted. Can you file a lorax bug/pr ?
I have untagged the eln one now too.
@spichugi , @kevin , @mohanboddu , The issue is in lorax templates: https://github.com/weldr/lorax/blob/master/share/templates.d/99-generic/runtime-cleanup.tmpl#L267 I have no idea why it's removed from there and what is the process to change lorax templates Fedora uses.
Wow, thanks for the investigation! And for the reproducing steps.
Oh yeah, I totally forgot about that cleaning. ;( So, I think we need a new lorax with that removed/adjusted. Can you file a lorax bug/pr ?
Sure, I'll file a bug and PR (I'll try to test the change too).
The PR is created: https://github.com/weldr/lorax/pull/1099
lorax command is successfully executed with this change. I am not sure how and when it will land in Fedora though...
lorax
New lorax-34.5-1 build - https://bodhi.fedoraproject.org/updates/FEDORA-2020-8a883a22bf
@jkaluza , @kevin , @mohanboddu , hi
As the lorax is fixed, what will be your suggestion for the next step?
Should openldap-2.4.56-4 be tagged once again? Or should I bump the version (without any actual code change)?
openldap-2.4.56-4
I've tagged openldap-2.4.56-4.fc34 back in. I guess we can see how the next compose does. :)
We got a compose last night and seems like everything is working now, closing this ticket.
Thanks everyone for their help.
Metadata Update from @mohanboddu: - Issue close_status updated to: Fixed - Issue status updated to: Closed (was: Open)
Login to comment on this ticket.