https://bugzilla.redhat.com/show_bug.cgi?id=1457929



--- Comment #11 from Augusto Caringi <acari...@redhat.com> ---
(In reply to Pavel Raiskup from comment #3)
> * there are some bundled libraries, I would suggest to investigate (a)
>   whether we can de-bundle, or (b) add artificial Provides according to [1]
>   or if that code is not used -- we could (c) 'rm -rf' the source directory
>   to make sure that the code is not used in spec file.
>   Note that if the bundling is needed, there are several other license files
>   in the provided tarball.

Regarding this question, I've investigated the possibility of de-bundle these
libraries...

There are 6 bundled libraries:

- jemalloc  4.3.1
- libconfig 1.4.9
- libdaemon 0.14
- mariadb-connector-c 2.3.1
- re2 20140304
- sqlite3 3.9.2

All of them are present in Fedora 25, with the following versions:

- jemalloc  4.4.0
- libconfig 1.5.4
- libdaemon 0.14
- mariadb-connector-c 2.3.2
- re2 20160401
- sqlite3 3.14.2

3 libraries are easy to de-bundle: libconfig, libdaemon and sqlite3

The other 3 libraries are hard to de-bundle due to the following reasons:

jemalloc
  - build with different options: --enable-xmalloc

    "--enable-xmalloc
    Enable support for optional immediate termination due to out-of-memory
    errors, as is commonly implemented by "xmalloc" wrapper function for
malloc.
    See the "opt.xmalloc" option documentation for usage details."

    This causes this message when proxysql is executed: <jemalloc>: Invalid
conf pair: xmalloc:true

    Turn off this option would be easy in the code: main.cpp: const char
*malloc_conf = "xmalloc:true,lg_tcache_max:16,purge:decay";

    But this modification probably would change the expected behavior of the
software.

mariadb-connector-c
  - patched (6 patches)

re2
  - patched (from proxysql_notes.txt: Because ProxySQL will process regular
expression in an already thread-safe environment, re2 is patches to remove
locking)
  - Another reason: proxysql includes a private header file which is not
present in re2-devel Fedora package (regexp.h):
    // --- SPONSORED LINK --------------------------------------------------
    // If you want to use this library for regular expression matching,
    // you should use re2/re2.h, which provides a class RE2 that
    // mimics the PCRE interface provided by PCRE's C++ wrappers.
    // This header describes the low-level interface used to implement RE2
    // and may change in backwards-incompatible ways from time to time.
    // In contrast, RE2's interface will not.
    // ---------------------------------------------------------------------

-- 
You are receiving this mail because:
You are on the CC list for the bug.
You are always notified about changes to this product and component
_______________________________________________
package-review mailing list -- package-review@lists.fedoraproject.org
To unsubscribe send an email to package-review-le...@lists.fedoraproject.org

Reply via email to