Bug 1401175

Summary: Missing symbol versioning provided by libtdb.so
Product: [Fedora] Fedora Reporter: Lukas Slebodnik <lslebodn>
Component: libtdbAssignee: Simo Sorce <ssorce>
Status: CLOSED RAWHIDE QA Contact: Fedora Extras Quality Assurance <extras-qa>
Severity: unspecified Docs Contact:
Priority: unspecified    
Version: 26CC: asn, gdeschner, jhrozek, sgallagh, ssorce
Target Milestone: ---   
Target Release: ---   
Hardware: Unspecified   
OS: Unspecified   
Whiteboard:
Fixed In Version: libtdb-1.3.12-5.fc26 Doc Type: If docs needed, set a value
Doc Text:
Story Points: ---
Clone Of: Environment:
Last Closed: 2017-02-28 11:03:35 UTC Type: Bug
Regression: --- Mount Type: ---
Documentation: --- CRM:
Verified Versions: Category: ---
oVirt Team: --- RHEL 7.3 requirements from Atomic Host:
Cloudforms Team: --- Target Upstream Version:
Bug Depends On: 1401231    
Bug Blocks:    
Attachments:
Description Flags
Spec file cleanup
none
fedpkg patch
none
fedpkg patch none

Description Lukas Slebodnik 2016-12-03 10:05:41 UTC
Description of problem:
The latest upgrade to libtdb-1.3.12 does not provide
the same versioned functions as previous version

Version-Release number of selected component (if applicable):
sh# rpm -q libtdb
libtdb-1.3.12-1.fc26.x86_64

How reproducible:
Deterministic

Steps to Reproduce:
1. rpm -q --provides libtdb-1.3.12-1.fc26.x86_64

Actual results:
bundled(libreplace)
libtdb = 1.3.12-1.fc26
libtdb(x86-64) = 1.3.12-1.fc26
libtdb.so.1()(64bit)


Expected results:
bundled(libreplace)
libtdb = 1.3.11-1.fc26
libtdb(x86-64) = 1.3.11-1.fc26
libtdb.so.1()(64bit)
libtdb.so.1(TDB_1.2.1)(64bit)
libtdb.so.1(TDB_1.2.10)(64bit)
libtdb.so.1(TDB_1.2.11)(64bit)
libtdb.so.1(TDB_1.2.12)(64bit)
libtdb.so.1(TDB_1.2.13)(64bit)
libtdb.so.1(TDB_1.2.2)(64bit)
//and many others

Additional info:
It is not a bug in rpmbuild because symbols are also missing
in library.
sh# objdump -p /usr/lib64/libtdb.so.1 | grep  TDB_
sh# echo $?
1

Comment 1 Lukas Slebodnik 2016-12-03 17:46:01 UTC
Actually, it is very likely a bug in toolchain because rebuilding the same
srpm for fedora 25 gives correct result.

Anyway, this BZ should be considered as tracer for rebuilding libtdb after fixing
the problem.

Comment 2 Lukas Slebodnik 2016-12-03 18:36:54 UTC
There was a change in redhat-rpm-config
diff -u -r 59/usr/lib/rpm/redhat/macros 60/usr/lib/rpm/redhat/macros
--- 59/usr/lib/rpm/redhat/macros        2016-12-03 19:11:47.961580325 +0100
+++ 60/usr/lib/rpm/redhat/macros        2016-12-03 19:11:58.676645157 +0100
@@ -147,7 +147,7 @@
 
 %__global_compiler_flags       -O2 -g -pipe -Wall -Werror=format-security -Wp,-_hardened_cflags}
 
-%__global_cflags       %{optflags}
+%__global_cflags       %{optflags} -Werror=implicit-function-declaration -Werro
 %__global_cxxflags     %{optflags}
 %__global_fflags       %{optflags} -I%_fmoddir
 %__global_fcflags      %{optflags} -I%_fmoddir


Extra compiler error flags caused that -Wl,--version was not recognized by waf.
> Checking uname sysname type              : not found 
> Checking uname machine type              : not found 
> Checking uname release type              : not found 
> Checking uname version type              : not found
> Checking for rpath library support       : not found 
> Checking for -Wl,--version-script support  : not found> Checking for C99 vsnprintf                                                        : not found 
> Checking for HAVE_SHARED_MMAP                                                     : not found 
> Checking for HAVE_MREMAP                                                          : not found

Comment 3 Lukas Slebodnik 2016-12-05 12:55:35 UTC
Created attachment 1228055 [details]
Spec file cleanup

Please consider to apply attached spec file cleanup patches
together with fixing this BZ

Comment 4 Lukas Slebodnik 2017-01-03 09:16:34 UTC
Patches from BZ1401231 required fro this BZ were pushed to samba master
* 59abfcb7945103cd4031abac86d51cd51ce052ca
* be12f82cf1ca652b06995e84971c878621315d24
* f4c0a750d4adebcf2342a44e85f04526c34268c8
* b7ae41e6ca133e08f1dc62bd49436f51f490f46b

It would be good to backport them even thought -Werror=implicit-function-declaration -Werror=implicit-int were removed from redhat-rpm-config

Comment 5 Lukas Slebodnik 2017-02-14 21:10:35 UTC
Created attachment 1250345 [details]
fedpkg patch

Attached patch fixes configure time detection with -Werror=implicit-function-declaration -Werror=implicit-int. It is a backport of upstream patches.

Comment 6 Lukas Slebodnik 2017-02-14 21:21:58 UTC
Created attachment 1250346 [details]
fedpkg patch

Comment 7 Jakub Hrozek 2017-02-14 21:28:44 UTC
fedpkg mockbuild is giving me:
+ echo 'Patch #1 (0001-lib-replace-Fix-detection-of-features.patch):'
Patch #1 (0001-lib-replace-Fix-detection-of-features.patch):
+ /usr/bin/patch --no-backup-if-mismatch -p1 --fuzz=0
patching file lib/replace/test/shared_mmap.c
Hunk #2 FAILED at 18.
1 out of 2 hunks FAILED -- saving rejects to file lib/replace/test/shared_mmap.c.rej
patching file lib/replace/test/shared_mremap.c
patching file lib/replace/test/snprintf.c
error: Bad exit status from /var/tmp/rpm-tmp.iY26Yd (%prep)
    Bad exit status from /var/tmp/rpm-tmp.iY26Yd (%prep)


Can you rebase the patches? I applied them on top of 90fcb5de1a5954acb493c108ea1ece02b6359dfb in fedora.

Comment 8 Lukas Slebodnik 2017-02-15 08:48:05 UTC
I do not have such problem

sh$[libtdb]$git reset --hard origin/master 
HEAD is now at 90fcb5d - Rebuilt for https://fedoraproject.org/wiki/Fedora_26_Mass_Rebuild

sh$[libtdb]$curl -o pok.patches "https://bugzilla.redhat.com/attachment.cgi?id=1250346"
  % Total    % Received % Xferd  Average Speed   Time    Time     Time  Current
                                 Dload  Upload   Total   Spent    Left  Speed
100 18665  100 18665    0     0  17001      0  0:00:01  0:00:01 --:--:-- 17014

sh$[libtdb]$git am pok.patches
Applying: Fix few issues according to fedora packaging guidelines
Applying: Fix bogus day in changelog
Applying: Build python3 bindings just for fedora
Applying: https://fedoraproject.org/wiki/Changes/Automatic_Provides_for_Python_RPM_Packages
Applying: rhbz#1401175 - Missing symbol versioning provided by libtdb.so
.git/rebase-apply/patch:76: trailing whitespace.
 
.git/rebase-apply/patch:80: space before tab in indent.
        int *buf;
.git/rebase-apply/patch:81: trailing whitespace, space before tab in indent.
        int i; 
.git/rebase-apply/patch:99: trailing whitespace.
 
.git/rebase-apply/patch:103: space before tab in indent.
        int *buf;
warning: squelched 14 whitespace errors
warning: 19 lines add whitespace errors.

sh$ [libtdb]$fedpkg srpm 

Wrote: /tmp/data/libtdb/libtdb-1.3.12-5.fc26.src.rpm

sh$ [libtdb]$fedpkg build --scratch --srpm ./libtdb-1.3.12-5.fc26.src.rpm

Task info: https://koji.fedoraproject.org/koji/taskinfo?taskID=17881362

Comment 9 Jakub Hrozek 2017-02-15 10:17:37 UTC
I don't know why but it still doesn't work for me. What hash is your origin/master of libltdb and what md5sum does the patch from bugzilla have?

btw I'm fine with giving you commit access to the package so you can fix the bug yourself rather that going back and forth..

Comment 10 Lukas Slebodnik 2017-02-15 11:19:04 UTC
(In reply to Jakub Hrozek from comment #9)
> I don't know why but it still doesn't work for me. What hash is your
> origin/master of libltdb and what md5sum does the patch from bugzilla have?
>
sh$ git log -1 --oneline origin/master 
90fcb5d - Rebuilt for https://fedoraproject.org/wiki/Fedora_26_Mass_Rebuild

sh$ curl -o libtdb.patches "https://bugzilla.redhat.com/attachment.cgi?id=1250346"
  % Total    % Received % Xferd  Average Speed   Time    Time     Time  Current
                                 Dload  Upload   Total   Spent    Left  Speed
100 18665  100 18665    0     0  20781      0 --:--:-- --:--:-- --:--:-- 20761

sh$ md5sum libtdb.patches 
265d3d11744d7ed6b30cbbdd6a56782d  libtdb.patches

> btw I'm fine with giving you commit access to the package so you can fix the
> bug yourself rather that going back and forth..

It looks like I need to request commit rights.

BTW I also tried in f25 user space because I use rawhide.
But it forks for me without any problem.

Comment 11 Jakub Hrozek 2017-02-15 13:39:52 UTC
(In reply to Lukas Slebodnik from comment #10)
> (In reply to Jakub Hrozek from comment #9)
> > I don't know why but it still doesn't work for me. What hash is your
> > origin/master of libltdb and what md5sum does the patch from bugzilla have?
> >
> sh$ git log -1 --oneline origin/master 
> 90fcb5d - Rebuilt for https://fedoraproject.org/wiki/Fedora_26_Mass_Rebuild
> 
> sh$ curl -o libtdb.patches
> "https://bugzilla.redhat.com/attachment.cgi?id=1250346"
>   % Total    % Received % Xferd  Average Speed   Time    Time     Time 
> Current
>                                  Dload  Upload   Total   Spent    Left  Speed
> 100 18665  100 18665    0     0  20781      0 --:--:-- --:--:-- --:--:--
> 20761
> 
> sh$ md5sum libtdb.patches 
> 265d3d11744d7ed6b30cbbdd6a56782d  libtdb.patches
> 

I..have the same hashes. I have no idea then why the build fails.

> > btw I'm fine with giving you commit access to the package so you can fix the
> > bug yourself rather that going back and forth..
> 
> It looks like I need to request commit rights.
> 

Yes, please.

> BTW I also tried in f25 user space because I use rawhide.
> But it forks for me without any problem.

Comment 12 Jakub Hrozek 2017-02-15 13:40:17 UTC
btw I tried here: https://koji.fedoraproject.org/koji/taskinfo?taskID=17885710

Comment 13 Fedora End Of Life 2017-02-28 10:43:19 UTC
This bug appears to have been reported against 'rawhide' during the Fedora 26 development cycle.
Changing version to '26'.