Description of problem: I'm working on a package that requires sigar, but in version 1.6.4. When using with fedora's latest 1.6.5 I get an error. Version-Release number of selected component (if applicable): sigar 1.6.5-0.15.git58097d9.fc23 How reproducible: always by running a application that requires sigar Steps to Reproduce: I can provide further details upon request Actual results: INFO 15:42:53 Initializing SIGAR library java: symbol lookup error: /usr/lib64/sigar/libsigar-amd64-linux.so: undefined symbol: sigar_skip_token Expected results: no error Additional info: when I manualy replace libsigar-amd64-linux.so with the one from 1.6.4 (latest upstream release) version everything works fine. I'm looking for a workaround rather than a version downgrade.
Tomáš, can you post some self-standing reprouder?
The issue was already reported upstream: https://github.com/hyperic/sigar/issues/60
Steps to reproduce: 1. get the rpms from [1] and [2] 2. install these rpms with all its dependencies on fedora 25/rawhide 3. run cassandra [-R] result: INFO 09:03:45 Initializing SIGAR library java: symbol lookup error: /usr/lib64/sigar/libsigar-amd64-linux.so: undefined symbol: sigar_skip_token expected result: cassandra server runs without error Possible and working solution: If there is no help from the maintainer I'm gonna just copy libsigar-amd64-linux.so file from previous sigar version. It works and comes with cassandra sources. [1] https://trepik.fedorapeople.org/cassandra/.rpms/cassandra-3.5-0.fc23.x86_64.rpm [2] https://trepik.fedorapeople.org/cassandra/.rpms/cassandra-thrift-3.5-0.fc23.x86_64.rpm
(In reply to Tomas Repik from comment #3) > Steps to reproduce: > 1. get the rpms from [1] and [2] > 2. install these rpms with all its dependencies on fedora 25/rawhide > 3. run cassandra [-R] > > result: > INFO 09:03:45 Initializing SIGAR library > java: symbol lookup error: /usr/lib64/sigar/libsigar-amd64-linux.so: > undefined symbol: sigar_skip_token Isn't there some self-standing reproducer, without cassandra? > Possible and working solution: > If there is no help from the maintainer I'm gonna just copy > libsigar-amd64-linux.so file from previous sigar version. It works and comes > with cassandra sources. I bet it comes with cassandra as sources, not as a binary '*.so' file?
I compared sources of two sigar versions: - sigar-1.6.4 (latest release, required by cassandra and works without an error) symbol "sigar_skip_token" appears in these files src/sigar_util.c include/sigar_util.h - sigar-1.6.5 (version in fedora, when used with cassandra results in error) symbol "sigar_skip_token" appears in these files src/sigar_util.c include/sigar_util.h go_bindings/Sigar/include/sigar_util.h go_bindings/Sigar/src/sigar_util.c Also I found these two issues, maybe one solves the error. https://github.com/hyperic/sigar/pull/44/commits/2c24d433d1b5da7e88fd37ec715bf8a5c0c10e04 https://github.com/hyperic/sigar/issues/60
Readelf says that the 'sigar_skip_token' is in /usr/lib64/libsigar.so, both on F24 and F25. Manual dlsym() and dlopen() works fine for that symbol. What/how tries to search for sigar_skip_token symbol?
I tried to reproduce the issue again, now in fedora:rawhide docker container and I only got a warning from sigar stating: "minor version mismatch: (7!=6) java=1.7.0.0, native=1.6.4.129" As far as I tested the functionality of cassandra is not affected. I'm closing this bug for now, and sending cassandra for review in Fedora, thanks Pavel.
(In reply to Tomas Repik from comment #7) > I tried to reproduce the issue again, now in fedora:rawhide docker container > and I only got a warning from sigar stating: > "minor version mismatch: (7!=6) java=1.7.0.0, native=1.6.4.129" Just a blind guess -- this sounds like different issue, sounds like you are running run java-1.6 per-compiled stuff against java-1.7 runtime. > As far as I tested the functionality of cassandra is not affected. I'm > closing this bug for now, and sending cassandra for review in Fedora Perfect.
I'm working on Cassandra package and just stumbled on this problem again... After some investigation I was able to find the cause of the problem and the resolution. Problem: libsigar-amd64-linux.so has some undefined symbols, which cause this error message in Cassandra initialization: java: symbol lookup error: /usr/lib64/sigar/libsigar-amd64-linux.so: undefined symbol: sigar_skip_token Analyzing the shared library: $ objdump -T /usr/lib64/sigar/libsigar-amd64-linux.so|grep UND|grep skip 0000000000000000 D *UND* 0000000000000000 sigar_skip_token 0000000000000000 D *UND* 0000000000000000 sigar_skip_multiple_token Cause: The main cause is this commit: * Mon Jun 22 2015 Ralf Corsépius <corsepiu> - 1.6.5-0.15.git58097d9 - Append --std=gnu89 to CFLAGS (Work-around to c11/inline compatibility issues. Fix FTBFS). Which fixed the build, but left the problematic symbols undefined. This problem was already fixed upstream: https://github.com/couchbase/sigar/commit/ab89d5d144b061cb24d5075cf6c45d9800a930c9 I've tested it here and it worked. So, I suggest to drop the "--std=gnu89" flag and apply the patch above. Thanks!
This bug is currently reported against a Fedora version which is already unsuported. I am changing the version to '27', the latest supported release. Please check whether this bug is still an issue on the '27' release. If you find this bug not being applicable on this release, please close it.
I'd apply the patch.. Is it still worth the action?
(In reply to Pavel Raiskup from comment #11) > I'd apply the patch.. Is it still worth the action? I think so... But it's worth to note that currently the building is failing on F28 and F29... https://koji.fedoraproject.org/koji/packageinfo?packageID=11358
This message is a reminder that Fedora 27 is nearing its end of life. On 2018-Nov-30 Fedora will stop maintaining and issuing updates for Fedora 27. It is Fedora's policy to close all bug reports from releases that are no longer maintained. At that time this bug will be closed as EOL if it remains open with a Fedora 'version' of '27'. Package Maintainer: If you wish for this bug to remain open because you plan to fix it in a currently maintained version, simply change the 'version' to a later Fedora version. Thank you for reporting this issue and we are sorry that we were not able to fix it before Fedora 27 is end of life. If you would still like to see this bug fixed and are able to reproduce it against a later version of Fedora, you are encouraged change the 'version' to a later Fedora version prior this bug is closed as described in the policy above. Although we aim to fix as many bugs as possible during every release's lifetime, sometimes those efforts are overtaken by events. Often a more recent Fedora release includes newer upstream software that fixes bugs or makes them obsolete.
Fedora 27 changed to end-of-life (EOL) status on 2018-11-30. Fedora 27 is no longer maintained, which means that it will not receive any further security or bug fix updates. As a result we are closing this bug. If you can reproduce this bug against a currently maintained version of Fedora please feel free to reopen this bug against that version. If you are unable to reopen this bug, please file a new report against the current release. If you experience problems, please add a comment to this bug. Thank you for reporting this bug and we are sorry it could not be fixed.