You are viewing a plain text version of this content. The canonical link for it is here.
Posted to issues@arrow.apache.org by "Travis Addair (JIRA)" <ji...@apache.org> on 2019/04/05 20:54:00 UTC

[jira] [Created] (ARROW-5130) Segfault when importing TensorFlow after Pyarrow

Travis Addair created ARROW-5130:
------------------------------------

             Summary: Segfault when importing TensorFlow after Pyarrow
                 Key: ARROW-5130
                 URL: https://issues.apache.org/jira/browse/ARROW-5130
             Project: Apache Arrow
          Issue Type: Bug
          Components: C++, Python
    Affects Versions: 0.13.0
            Reporter: Travis Addair


This issue is similar to https://jira.apache.org/jira/browse/ARROW-2657 which was fixed in v0.10.0.

When we import TensorFlow after Pyarrow in Linux Debian Jessie, we get a segfault.  To reproduce:
{code:java}
import pyarrow 
import tensorflow{code}
Here's the backtrace from gdb:
{code:java}
Program terminated with signal SIGSEGV, Segmentation fault.
#0 0x0000000000000000 in ?? ()
(gdb) bt
#0 0x0000000000000000 in ?? ()
#1 0x00007f529ee04410 in pthread_once () at ../nptl/sysdeps/unix/sysv/linux/x86_64/pthread_once.S:103
#2 0x00007f5229a74efa in void std::call_once<void (&)()>(std::once_flag&, void (&)()) () from /usr/local/lib/python2.7/dist-packages/tensorflow/python/../libtensorflow_framework.so
#3 0x00007f5229a74f3e in tensorflow::port::TestCPUFeature(tensorflow::port::CPUFeature) () from /usr/local/lib/python2.7/dist-packages/tensorflow/python/../libtensorflow_framework.so
#4 0x00007f522978b561 in tensorflow::port::(anonymous namespace)::CheckFeatureOrDie(tensorflow::port::CPUFeature, std::string const&) ()
from /usr/local/lib/python2.7/dist-packages/tensorflow/python/../libtensorflow_framework.so
#5 0x00007f522978b5b4 in _GLOBAL__sub_I_cpu_feature_guard.cc () from /usr/local/lib/python2.7/dist-packages/tensorflow/python/../libtensorflow_framework.so
#6 0x00007f529f224bea in call_init (l=<optimized out>, argc=argc@entry=9, argv=argv@entry=0x7ffc6d8c1488, env=env@entry=0x294c0c0) at dl-init.c:78
#7 0x00007f529f224cd3 in call_init (env=0x294c0c0, argv=0x7ffc6d8c1488, argc=9, l=<optimized out>) at dl-init.c:36
#8 _dl_init (main_map=main_map@entry=0x2e4aff0, argc=9, argv=0x7ffc6d8c1488, env=0x294c0c0) at dl-init.c:126
#9 0x00007f529f228e38 in dl_open_worker (a=a@entry=0x7ffc6d8bebb8) at dl-open.c:577
#10 0x00007f529f224aa4 in _dl_catch_error (objname=objname@entry=0x7ffc6d8beba8, errstring=errstring@entry=0x7ffc6d8bebb0, mallocedp=mallocedp@entry=0x7ffc6d8beba7,
operate=operate@entry=0x7f529f228b60 <dl_open_worker>, args=args@entry=0x7ffc6d8bebb8) at dl-error.c:187
#11 0x00007f529f22862b in _dl_open (file=0x7f5248178b54 "/usr/local/lib/python2.7/dist-packages/tensorflow/python/_pywrap_tensorflow_internal.so", mode=-2147483646, caller_dlopen=<optimized out>,
nsid=-2, argc=9, argv=0x7ffc6d8c1488, env=0x294c0c0) at dl-open.c:661
#12 0x00007f529ebf402b in dlopen_doit (a=a@entry=0x7ffc6d8bedd0) at dlopen.c:66
#13 0x00007f529f224aa4 in _dl_catch_error (objname=0x2950fc0, errstring=0x2950fc8, mallocedp=0x2950fb8, operate=0x7f529ebf3fd0 <dlopen_doit>, args=0x7ffc6d8bedd0) at dl-error.c:187
#14 0x00007f529ebf45dd in _dlerror_run (operate=operate@entry=0x7f529ebf3fd0 <dlopen_doit>, args=args@entry=0x7ffc6d8bedd0) at dlerror.c:163
#15 0x00007f529ebf40c1 in __dlopen (file=<optimized out>, mode=<optimized out>) at dlopen.c:87
#16 0x0000000000540859 in _PyImport_GetDynLoadFunc ()
#17 0x000000000054024c in _PyImport_LoadDynamicModule ()
#18 0x00000000005f2bcb in ?? ()
#19 0x00000000004ca235 in PyEval_EvalFrameEx ()
#20 0x00000000004ca9c2 in PyEval_EvalFrameEx ()
#21 0x00000000004c8c39 in PyEval_EvalCodeEx ()
#22 0x00000000004c84e6 in PyEval_EvalCode ()
#23 0x00000000004c6e5c in PyImport_ExecCodeModuleEx ()
#24 0x00000000004c3272 in ?? ()
#25 0x00000000004b19e2 in ?? ()
#26 0x00000000004b13d7 in ?? ()
#27 0x00000000004b42f6 in ?? ()
#28 0x00000000004d1aab in PyEval_CallObjectWithKeywords ()
#29 0x00000000004ccdb3 in PyEval_EvalFrameEx ()
#30 0x00000000004c8c39 in PyEval_EvalCodeEx ()
#31 0x00000000004c84e6 in PyEval_EvalCode ()
#32 0x00000000004c6e5c in PyImport_ExecCodeModuleEx ()
#33 0x00000000004c3272 in ?? ()
#34 0x00000000004b1d3f in ?? ()
#35 0x00000000004b6b2b in ?? ()
#36 0x00000000004b0d82 in ?? ()
#37 0x00000000004b42f6 in ?? ()
#38 0x00000000004d1aab in PyEval_CallObjectWithKeywords ()
#39 0x00000000004ccdb3 in PyEval_EvalFrameEx (){code}
It looks like the code changes that fixed the previous issue was recently removed in [https://github.com/apache/arrow/commit/b766bff34b7d85034d26cebef5b3aeef1eb2fd82#diff-16806bcebc1df2fae432db426905b9f0].



--
This message was sent by Atlassian JIRA
(v7.6.3#76005)