osdir.com

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: C++ buildings and Regex issue


Wes,

Thanks! We do plan to upgrade, as soon as we put down the fire. We noticed
some API changes and we will have to get our code updated.

It looks like it is boost::regex. In our application we link dynamically
against a locally compiled Boost. For Arrow we noticed this for CentOS
https://github.com/apache/arrow-dist/blob/master/cpp-linux/yum/arrow.spec.in#L69

%if %{_centos_ver} == 6
-DARROW_BOOST_VENDORED=ON \
%endif

I tried replacing it with

-DARROW_BOOST_USE_SHARED=ON

but it does not look like it is going to build

/root/rpmbuild/BUILD/apache-arrow-0.9.0/cpp/src/arrow/io/hdfs-internal.cc:204:7:
error: 'class boost::filesystem::basic_path<std::basic_string<char>,
boost::filesystem::path_traits>' has no member named 'make_preferred'
     i.make_preferred();
       ^~~~~~~~~~~~~~
/root/rpmbuild/BUILD/apache-arrow-0.9.0/cpp/src/arrow/io/hdfs-internal.cc:205:27:
error: 'class boost::filesystem::basic_path<std::basic_string<char>,
boost::filesystem::path_traits>' has no member named 'native'
     out_handle = dlopen(i.native().c_str(), RTLD_NOW | RTLD_LOCAL);

I remember we had a similar conflict with ProtocolBuffers. In that case,
changing Arrow to use the system provided version did the trick.

Thanks,
Rares











On Tue, Dec 11, 2018 at 9:30 PM Wes McKinney <wesmckinn@xxxxxxxxx> wrote:

> hi,
>
> Could you clarify what you mean by "regex calls"? Are you talking
> about boost::regex, std::regex, something else? How did you link the
> relevant libraries in each part of your application, and in the Arrow
> + Parquet libraries
>
> 0.9.0 is over 1000 patches ago. I'd recommend that you try to upgrade
>
> $ git hist apache-arrow-0.9.0..master | wc -l
> 1540
>
> - Wes
> On Tue, Dec 11, 2018 at 10:58 PM Rares Vernica <rvernica@xxxxxxxxx> wrote:
> >
> > Hello,
> >
> > We are using the C++ bindings of Arrow 0.9.0 on our system on CentOS.
> Once
> > we load the Arrow library, our regular regex calls (outside of Arrow)
> > misbehave and trigger some unknown crashes. We are still trying to figure
> > things out but I was wondering if there are any know issues regarding
> regex
> > and the C++ binding. Also, how can one turn on/off flags related to regex
> > when compiling Arrow? We are still trying to isolate the crash.
> >
> > Thanks!
> > Rares
>