Jungle icon indicating copy to clipboard operation
Jungle copied to clipboard

alpine musl build error

Open calvin2021y opened this issue 2 years ago • 9 comments

In file included from jungle/src/logger.cc:24:

jungle/src/backtrace.h:36:10: fatal error: 'execinfo.h' file not found
#include <execinfo.h>
         ^~~~~~~~~~~~

calvin2021y avatar Aug 11 '22 11:08 calvin2021y

@greensky00

any tips to fix this ?

calvin2021y avatar Aug 31 '22 12:08 calvin2021y

@calvin2021y Sorry for the late reply. Actually backtrace.h was intended to work on either x86 Linux or Mac, so it should be disabled on platforms that do not support it (execinfo.h). Let me add a compiler flag to manually disable it, and push the PR shortly.

greensky00 avatar Sep 01 '22 23:09 greensky00

alpine and musl do support backtrace and unwind, but some header is diff from glibc.

calvin2021y avatar Sep 03 '22 04:09 calvin2021y

@calvin2021y Please check if https://github.com/eBay/Jungle/pull/145 and adding -DLOGGER_NO_BACKTRACE=1 flag works for you.

greensky00 avatar Sep 04 '22 23:09 greensky00

Thanks for the solution.

alpine is fixed for x86 and aarch64.

macOS show this error:

jungle/src/backtrace.h:330:24: error: use of undeclared identifier 'abi'
            char *cc = abi::__cxa_demangle(func_mangled.c_str(), 0, 0, &status);

maybe need change to this:

#include <cxxabi.h>
#ifndef LOGGER_NO_BACKTRACE
#include <execinfo.h>
#endif

calvin2021y avatar Sep 06 '22 04:09 calvin2021y

Now it should work on Mac with the flag, please check it again.

greensky00 avatar Sep 13 '22 06:09 greensky00

Thanks for the update. some how I can not apply https://github.com/eBay/Jungle/pull/145.patch

check from the code it should be fixed. I will update and test late after you merge.

calvin2021y avatar Sep 14 '22 10:09 calvin2021y

one question about Log store mode:

it only can append data into store with a bigger SN. (can be discontinuous)

it can not delete by SN number, but can truncation by SN number ?

I also want to know if there will be supported with IO_uring async DISK io instead thread.

calvin2021y avatar Sep 14 '22 13:09 calvin2021y

it can not delete by SN number, but can truncation by SN number ?

Right, it is not possible to delete a sequence number in the middle; you can only truncate it.

And currently there is no support for AsyncIO.

greensky00 avatar Sep 15 '22 16:09 greensky00