v6d-io / v6d

vineyard (v6d): an in-memory immutable data manager. (Project under CNCF, TAG-Storage)
https://v6d.io
Apache License 2.0
818 stars 117 forks source link

Build fails with Apache Arrow 16.0.0 #1881

Closed cho-m closed 2 months ago

cho-m commented 2 months ago

Describe your problem

Build fails with Apache Arrow 16.0.0. Specifically due to https://github.com/apache/arrow/commit/b235f83ed10bcad174b267113479a24ca045def5 which changed namespace for arrow::internal::Uri* to arrow::util::Uri*.

/tmp/vineyard-20240424-25401-xa9kd4/v6d-0.22.1/modules/io/io/io_factory.cc:77:7: error: no member named 'UriEscape' in namespace 'arrow::internal'; did you mean 'arrow::util::UriEscape'?
      arrow::internal::UriEscape(location_to_parse.substr(i));
      ^~~~~~~~~~~~~~~~~~~~~~~~~~
      arrow::util::UriEscape
/opt/homebrew/include/arrow/util/uri.h:101:13: note: 'arrow::util::UriEscape' declared here
std::string UriEscape(std::string_view s);
            ^
/tmp/vineyard-20240424-25401-xa9kd4/v6d-0.22.1/modules/io/io/io_factory.cc:78:3: error: no type named 'Uri' in namespace 'arrow::internal'; did you mean 'arrow::util::Uri'?
  arrow::internal::Uri uri;
  ^~~~~~~~~~~~~~~~~~~~
  arrow::util::Uri
/opt/homebrew/include/arrow/util/uri.h:33:20: note: 'arrow::util::Uri' declared here
class ARROW_EXPORT Uri {
                   ^
/tmp/vineyard-20240424-25401-xa9kd4/v6d-0.22.1/modules/io/io/io_factory.cc:104:24: error: no member named 'UriEscape' in namespace 'arrow::internal'; did you mean 'arrow::util::UriEscape'?
          "file:///" + arrow::internal::UriEscape(location_to_parse.substr(1)));
                       ^~~~~~~~~~~~~~~~~~~~~~~~~~
                       arrow::util::UriEscape
/opt/homebrew/include/arrow/util/uri.h:101:13: note: 'arrow::util::UriEscape' declared here
std::string UriEscape(std::string_view s);
            ^
/tmp/vineyard-20240424-25401-xa9kd4/v6d-0.22.1/modules/io/io/local_io_adaptor.cc:107:32: error: no member named 'UriEscape' in namespace 'arrow::internal'; did you mean 'arrow::util::UriEscape'?
      location_.substr(0, i) + arrow::internal::UriEscape(location_.substr(i));
                               ^~~~~~~~~~~~~~~~~~~~~~~~~~
                               arrow::util::UriEscape
/opt/homebrew/include/arrow/util/uri.h:101:13: note: 'arrow::util::UriEscape' declared here
std::string UriEscape(std::string_view s);
            ^
/tmp/vineyard-20240424-25401-xa9kd4/v6d-0.22.1/modules/io/io/local_io_adaptor.cc:111:15: error: no member named 'UriUnescape' in namespace 'arrow::internal'; did you mean 'arrow::util::UriUnescape'?
  location_ = arrow::internal::UriUnescape(location_);
              ^~~~~~~~~~~~~~~~~~~~~~~~~~~~
              arrow::util::UriUnescape
/opt/homebrew/include/arrow/util/uri.h:104:13: note: 'arrow::util::UriUnescape' declared here
std::string UriUnescape(std::string_view s);
            ^
3 errors generated.

If is is a bug report, to help us reproducing this bug, please provide information below:

  1. Your Operation System version (uname -a): Darwin
  2. The version of vineyard you use (vineyard.__version__): 0.22.1
  3. Versions of crucial packages, such as gcc, numpy, pandas, etc.: n/a
  4. Full stack of the error (if there are a crash): n/a
  5. Minimized code to reproduce the error: n/a
sighingnow commented 2 months ago

Thanks for letting us know! Will fix it ASAP.