Cassandra:mac上的cqlsh分段错误

时间:2013-10-29 16:05:50

标签: macos jvm nosql segmentation-fault cassandra

当我尝试在cqlsh中使用help命令时,我得到一个段错误:

Connected to Test Cluster at localhost:9160.
[cqlsh 4.0.1 | Cassandra 2.0.1 | CQL spec 3.1.1 | Thrift protocol 19.37.0]
Use HELP for help.
cqlsh> help
Segmentation fault: 11

Cassandra是使用自制软件安装的。 Java版本:

java version "1.7.0_17"
Java(TM) SE Runtime Environment (build 1.7.0_17-b02)
Java HotSpot(TM) 64-Bit Server VM (build 23.7-b01, mixed mode)

我尝试在cassandra-env.sh中更改每个线程的堆栈大小。

我尝试的值:256k,300k,512k,1024k。

我验证了cassandra通过执行命令来使用这些值:

cassandra -f

堆栈大小为300k的输出:

xss =  -ea -javaagent:/usr/local/Cellar/cassandra/2.0.1/jamm-0.2.5.jar -XX:+UseThreadPriorities -XX:ThreadPriorityPolicy=42 -Xms4G -Xmx4G -Xmn800M -XX:+HeapDumpOnOutOfMemoryError -Xss300k

我在OS X Mavericks上,如果有相关的话,我会有16场演出。

编辑:

我对cassandra-cli没有类似的问题。

Per Nikolai Grigoriev的建议我看了一下系统日志:

cat system.log | tail -n 20

相关产出:

Oct 29 23:10:12 Andrews-MacBook-Pro.local ReportCrash[5690]: Saved crash report for python[5685] version 0 to /Users/andrew/Library/Logs/DiagnosticReports/python_2013-10-29-231012_Andrews-MacBook-Pro.crash

输出:

cat /Users/andrew/Library/Logs/DiagnosticReports/python_2013-10-29-231012_Andrews-MacBook-Pro.crash

在这里:

Process:         python [5685]
Path:            /Users/USER/*/python
Identifier:      python
Version:         0
Code Type:       X86-64 (Native)
Parent Process:  bash [1330]
Responsible:     iTerm [1313]
User ID:         501

Date/Time:       2013-10-29 23:10:10.697 +0100
OS Version:      Mac OS X 10.9 (13A603)
Report Version:  11
Anonymous UUID:  xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx

Sleep/Wake UUID: xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx

Crashed Thread:  0  Dispatch queue: com.apple.main-thread

Exception Type:  EXC_BAD_ACCESS (SIGSEGV)
Exception Codes: KERN_INVALID_ADDRESS at 0x0000000000000000

VM Regions Near 0:
-->
    __TEXT                 0000000109ab3000-0000000109ab4000 [    4K] r-x/rwx SM=COW  /Users/USER/*

Thread 0 Crashed:: Dispatch queue: com.apple.main-thread
0   readline.so                     0x000000010a229f17 call_readline + 599 (readline.c:1087)
1   libpython2.7.dylib              0x0000000109abb354 PyOS_Readline + 244 (myreadline.c:211)
2   libpython2.7.dylib              0x0000000109b50fdd builtin_raw_input + 365 (bltinmodule.c:2046)
3   libpython2.7.dylib              0x0000000109b57e2b PyEval_EvalFrameEx + 18011 (ceval.c:4021)
4   libpython2.7.dylib              0x0000000109b5b0e7 PyEval_EvalCodeEx + 2103 (ceval.c:3253)
5   libpython2.7.dylib              0x0000000109b5b298 fast_function + 296 (ceval.c:4117)
6   libpython2.7.dylib              0x0000000109b57edd PyEval_EvalFrameEx + 18189 (ceval.c:4042)
7   libpython2.7.dylib              0x0000000109b5b0e7 PyEval_EvalCodeEx + 2103 (ceval.c:3253)
8   libpython2.7.dylib              0x0000000109b5b298 fast_function + 296 (ceval.c:4117)
9   libpython2.7.dylib              0x0000000109b57edd PyEval_EvalFrameEx + 18189 (ceval.c:4042)
10  libpython2.7.dylib              0x0000000109b5b0e7 PyEval_EvalCodeEx + 2103 (ceval.c:3253)
11  libpython2.7.dylib              0x0000000109ae83cb function_call + 347 (funcobject.c:526)
12  libpython2.7.dylib              0x0000000109abfa21 PyObject_Call + 97 (abstract.c:2529)
13  libpython2.7.dylib              0x0000000109b5879a PyEval_EvalFrameEx + 20426 (ceval.c:4334)
14  libpython2.7.dylib              0x0000000109b5b0e7 PyEval_EvalCodeEx + 2103 (ceval.c:3253)
15  libpython2.7.dylib              0x0000000109b5b166 PyEval_EvalCode + 54 (ceval.c:665)
16  libpython2.7.dylib              0x0000000109b79934 PyRun_FileExFlags + 164 (pythonrun.c:1354)
17  libpython2.7.dylib              0x0000000109b7abe8 PyRun_SimpleFileExFlags + 392 (pythonrun.c:943)
18  libpython2.7.dylib              0x0000000109b8e3da Py_Main + 2874 (main.c:639)
19  libdyld.dylib                   0x00007fff90eee5fd start + 1

Thread 0 crashed with X86 Thread State (64-bit):
  rax: 0x0000000000000000  rbx: 0x0000000000000004  rcx: 0x00007fa1f8d00000  rdx: 0x0000000000000000
  rdi: 0x0000000000000000  rsi: 0x00007fa1f8dbbcf0  rbp: 0x00007fff5614b970  rsp: 0x00007fff5614b8a0
   r8: 0x00007fa1f8d00000   r9: 0x0000000000000bbc  r10: 0x000000000020000b  r11: 0x0000000000000001
  r12: 0x00007fff5614b8c0  r13: 0x00007fa1f8d0dc00  r14: 0x0000000000000001  r15: 0x000000010a252960
  rip: 0x000000010a229f17  rfl: 0x0000000000010206  cr2: 0x0000000000000000

Logical CPU:     0
Error Code:      0x00000004
Trap Number:     14


Binary Images:
       0x109ab3000 -        0x109ab3ff7 +python (0) <7A897AB3-9853-3A76-93BE-F864DB4ECC8D> /Users/USER/*/python
       0x109ab6000 -        0x109bf2fff +libpython2.7.dylib (0) <A6E60E14-9E72-34C5-874C-600772A7F298> /Users/USER/*/libpython2.7.dylib
       0x10a0e2000 -        0x10a0e8ff7 +itertools.so (0) <045A60E6-26D8-394A-B37E-F25D54307FED> /Users/USER/*/itertools.so
       0x10a0f3000 -        0x10a0f4fff +_functools.so (0) <765061F4-C740-386C-B0EF-73D9E03AECB2> /Users/USER/*/_functools.so
       0x10a0f7000 -        0x10a10bff7 +_ctypes.so (0) <5406D7E2-2D30-313B-B3B6-46EB46F31F8B> /Users/USER/*/_ctypes.so
       0x10a11c000 -        0x10a120ff7 +_struct.so (0) <374ECB70-B58E-3D8A-9E1D-65A5F4F62D7C> /Users/USER/*/_struct.so
       0x10a128000 -        0x10a12bff7 +strop.so (0) <14A6EEF5-4C55-32D1-B8CF-5EDE2E43B7B2> /Users/USER/*/strop.so
       0x10a130000 -        0x10a132fff +time.so (0) <DA27EF10-D49C-3536-879D-237E5A73EC45> /Users/USER/*/time.so
       0x10a138000 -        0x10a13cfff +operator.so (0) <FECCF5F1-1BE1-316D-BFC0-C3F841DC9DE8> /Users/USER/*/operator.so
       0x10a143000 -        0x10a144ff7 +_locale.so (0) <EE16349A-9907-3DEA-B419-7E39D4C6DCF2> /Users/USER/*/_locale.so
       0x10a148000 -        0x10a14bff7 +_collections.so (0) <F2E4C6A7-C3E8-3AC5-9153-16A76BC0B857> /Users/USER/*/_collections.so
       0x10a151000 -        0x10a151ff7 +_bisect.so (0) <6E1E38C3-D597-356F-9CCF-D077E2030B7B> /Users/USER/*/_bisect.so
       0x10a154000 -        0x10a155ff7 +_heapq.so (0) <B5765696-25FC-36F3-9CD8-B5F02E69DE5F> /Users/USER/*/_heapq.so
       0x10a219000 -        0x10a21cfff +_csv.so (0) <417DF404-51EB-3D9B-9F13-96C971352277> /Users/USER/*/_csv.so
       0x10a222000 -        0x10a223ff7 +cStringIO.so (0) <9ABC813E-BDA3-3129-A31C-564144C1821C> /Users/USER/*/cStringIO.so
       0x10a228000 -        0x10a22afff +readline.so (0) <1DD349FC-7CCC-3D87-98C1-39EE6AFE5226> /Users/USER/*/readline.so
       0x10a231000 -        0x10a24fffb  libedit.3.dylib (39) <1B0596DB-F336-32E7-BB9F-51BF70DB5305> /usr/lib/libedit.3.dylib
       0x10a260000 -        0x10a266fff +math.so (0) <B8D32AA6-1136-3D9B-8F3D-063E373CE751> /Users/USER/*/math.so
       0x10a26d000 -        0x10a274ff7 +_socket.so (0) <9B1A31D6-C635-34F7-A605-82CD7FAAB760> /Users/USER/*/_socket.so
       0x10a27e000 -        0x10a282fff +_ssl.so (0) <C1F761A1-803F-34C0-99D6-61E90020294E> /Users/USER/*/_ssl.so
       0x10a288000 -        0x10a295fff +datetime.so (0) <C0564CBB-516A-385B-8B96-6767B73BEDC3> /Users/USER/*/datetime.so
       0x10a2a1000 -        0x10a2a6fff +_json.so (0) <293437E3-C642-3B8C-85A1-9AB3304B3F05> /Users/USER/*/_json.so
       0x10a2ab000 -        0x10a2adff7 +binascii.so (0) <46D54602-4338-36A3-85BC-4866FAEA6036> /Users/USER/*/binascii.so
       0x10a2b1000 -        0x10a2b4fff +select.so (0) <C84B6BEF-4DE8-3BD1-8B5D-BD8E22295D6E> /Users/USER/*/select.so
       0x10a2ba000 -        0x10a2bbff7 +fcntl.so (0) <B687409B-BF1D-3104-82A5-BF0F642185B6> /Users/USER/*/fcntl.so
       0x10a3bf000 -        0x10a3c2ff7 +zlib.so (0) <E3BB63E5-B4ED-35D2-80CB-C3614CCDAA22> /Users/USER/*/zlib.so
       0x10a447000 -        0x10a449ff7 +fastbinary.so (0) <AAF034FA-51DB-38A0-BF1C-01F5C19B1D46> /Users/USER/*/fastbinary.so
    0x7fff6d77e000 -     0x7fff6d7b1817  dyld (239.3) <D1DFCF3F-0B0C-332A-BCC0-87A851B570FF> /usr/lib/dyld
    0x7fff882c8000 -     0x7fff882caff3  libsystem_configuration.dylib (596.12) <C4F633D9-94C8-35D9-BB2D-84C5122533C7> /usr/lib/system/libsystem_configuration.dylib
    0x7fff88365000 -     0x7fff883eeff7  libsystem_c.dylib (997.1.1) <61833FAA-7281-3FF9-937F-686B6F20427C> /usr/lib/system/libsystem_c.dylib
    0x7fff88488000 -     0x7fff884caff7  libauto.dylib (185.5) <F45C36E8-B606-3886-B5B1-B6745E757CA8> /usr/lib/libauto.dylib
    0x7fff88c80000 -     0x7fff88c87fff  libcompiler_rt.dylib (35) <4CD916B2-1B17-362A-B403-EF24A1DAC141> /usr/lib/system/libcompiler_rt.dylib
    0x7fff88ff2000 -     0x7fff890d1fff  libcrypto.0.9.8.dylib (50) <B95B9DBA-39D3-3EEF-AF43-44608B28894E> /usr/lib/libcrypto.0.9.8.dylib
    0x7fff897c8000 -     0x7fff897c9fff  libunc.dylib (28) <62682455-1862-36FE-8A04-7A6B91256438> /usr/lib/system/libunc.dylib
    0x7fff897e3000 -     0x7fff897e5ff7  libquarantine.dylib (71) <7A1A2BCB-C03D-3A25-BFA4-3E569B2D2C38> /usr/lib/system/libquarantine.dylib
    0x7fff89830000 -     0x7fff8984afff  libdispatch.dylib (339.1.9) <46878A5B-4248-3057-962C-6D4A235EEF31> /usr/lib/system/libdispatch.dylib
    0x7fff89f8d000 -     0x7fff89f8efff  com.apple.TrustEvaluationAgent (2.0 - 25) <334A82F4-4AE4-3719-A511-86D0B0723E2B> /System/Library/PrivateFrameworks/TrustEvaluationAgent.framework/Versions/A/TrustEvaluationAgent
    0x7fff8a3e9000 -     0x7fff8a3f3fff  libcommonCrypto.dylib (60049) <8C4F0CA0-389C-3EDC-B155-E62DD2187E1D> /usr/lib/system/libcommonCrypto.dylib
    0x7fff8a46d000 -     0x7fff8a46effb  libremovefile.dylib (33) <3543F917-928E-3DB2-A2F4-7AB73B4970EF> /usr/lib/system/libremovefile.dylib
    0x7fff8a91f000 -     0x7fff8a925ff7  libsystem_platform.dylib (24.1.4) <331BA4A5-55CE-3B95-99EB-44E0C89D7FB8> /usr/lib/system/libsystem_platform.dylib
    0x7fff8ad08000 -     0x7fff8ad19ff7  libz.1.dylib (53) <42E0C8C6-CA38-3CA4-8619-D24ED5DD492E> /usr/lib/libz.1.dylib
    0x7fff8ad8a000 -     0x7fff8adbefff  libssl.0.9.8.dylib (50) <B15F967C-B002-36C2-9621-3456D8509F50> /usr/lib/libssl.0.9.8.dylib
    0x7fff8aee2000 -     0x7fff8aefeff7  libsystem_kernel.dylib (2422.1.72) <D14913DB-47F1-3591-8DAF-D4B4EF5F8818> /usr/lib/system/libsystem_kernel.dylib
    0x7fff8b98e000 -     0x7fff8b992fff  libsystem_stats.dylib (93.1.26) <B9E26A9E-FBBC-3938-B8B7-6CF7CA8C99AD> /usr/lib/system/libsystem_stats.dylib
    0x7fff8bc70000 -     0x7fff8bc71ff7  libsystem_blocks.dylib (63) <FB856CD1-2AEA-3907-8E9B-1E54B6827F82> /usr/lib/system/libsystem_blocks.dylib
    0x7fff8cb46000 -     0x7fff8cb4bff7  libunwind.dylib (35.3) <78DCC358-2FC1-302E-B395-0155B47CB547> /usr/lib/system/libunwind.dylib
    0x7fff8ccec000 -     0x7fff8ce99f27  libobjc.A.dylib (551.1) <AD7FD984-271E-30F4-A361-6B20319EC73B> /usr/lib/libobjc.A.dylib
    0x7fff8d889000 -     0x7fff8d88aff7  libDiagnosticMessagesClient.dylib (100) <4CDB0F7B-C0AF-3424-BC39-495696F0DB1E> /usr/lib/libDiagnosticMessagesClient.dylib
    0x7fff8dd93000 -     0x7fff8dd93ff7  libkeymgr.dylib (28) <3AA8D85D-CF00-3BD3-A5A0-E28E1A32A6D8> /usr/lib/system/libkeymgr.dylib
    0x7fff8e0cd000 -     0x7fff8e0d2fff  libmacho.dylib (845) <1D2910DF-C036-3A82-A3FD-44FF73B5FF9B> /usr/lib/system/libmacho.dylib
    0x7fff8e511000 -     0x7fff8e518ff7  liblaunch.dylib (842.1.4) <FCBF0A02-0B06-3F97-9248-5062A9DEB32C> /usr/lib/system/liblaunch.dylib
    0x7fff8e5c8000 -     0x7fff8e5efffb  libsystem_info.dylib (449.1.3) <7D41A156-D285-3849-A2C3-C04ADE797D98> /usr/lib/system/libsystem_info.dylib
    0x7fff8e8af000 -     0x7fff8e8b0ff7  libSystem.B.dylib (1197.1.1) <BFC0DC97-46C6-3BE0-9983-54A98734897A> /usr/lib/libSystem.B.dylib
    0x7fff8ee3b000 -     0x7fff8eff3ff3  libicucore.A.dylib (511.25) <3ED7B656-416E-3071-AEC8-E85C90232F78> /usr/lib/libicucore.A.dylib
    0x7fff90c52000 -     0x7fff90c59ff7  libsystem_pthread.dylib (53.1.4) <AB498556-B555-310E-9041-F67EC9E00E2C> /usr/lib/system/libsystem_pthread.dylib
    0x7fff90eeb000 -     0x7fff90eeeff7  libdyld.dylib (239.3) <62F4D752-4089-31A8-8B73-B95A68893B3C> /usr/lib/system/libdyld.dylib
    0x7fff9155e000 -     0x7fff91587ff7  libc++abi.dylib (48) <8C16158F-CBF8-3BD7-BEF4-022704B2A326> /usr/lib/libc++abi.dylib
    0x7fff91634000 -     0x7fff91635ff7  libsystem_sandbox.dylib (278.10) <A47E7E11-3C76-318E-B67D-98972B86F094> /usr/lib/system/libsystem_sandbox.dylib
    0x7fff91777000 -     0x7fff9177ffff  libsystem_dnssd.dylib (522.1.11) <270DCF6C-502D-389A-AA9F-DE4624A36FF7> /usr/lib/system/libsystem_dnssd.dylib
    0x7fff91bec000 -     0x7fff91c1cfff  libncurses.5.4.dylib (42) <BF763D62-9149-37CB-B1D2-F66A2510E6DD> /usr/lib/libncurses.5.4.dylib
    0x7fff91fb6000 -     0x7fff91fc7ff7  libsystem_asl.dylib (217.1.4) <655FB343-52CF-3E2F-B14D-BEBF5AAEF94D> /usr/lib/system/libsystem_asl.dylib
    0x7fff92396000 -     0x7fff923b1ff7  libsystem_malloc.dylib (23.1.10) <FFE5C472-B23A-318A-85BF-77CDE61900D1> /usr/lib/system/libsystem_malloc.dylib
    0x7fff932f1000 -     0x7fff9333ffff  libcorecrypto.dylib (161.1) <F3973C28-14B6-3006-BB2B-00DD7F09ABC7> /usr/lib/system/libcorecrypto.dylib
    0x7fff93530000 -     0x7fff93582fff  libc++.1.dylib (120) <4F68DFC5-2077-39A8-A449-CAC5FDEE7BDE> /usr/lib/libc++.1.dylib
    0x7fff93b66000 -     0x7fff93b6fff3  libsystem_notify.dylib (121) <52571EC3-6894-37E4-946E-064B021ED44E> /usr/lib/system/libsystem_notify.dylib
    0x7fff93b8a000 -     0x7fff93b8eff7  libcache.dylib (62) <BDC1E65B-72A1-3DA3-A57C-B23159CAAD0B> /usr/lib/system/libcache.dylib
    0x7fff941a8000 -     0x7fff941cfff7  libsystem_network.dylib (241.3) <8B1E1F1D-A5CC-3BAE-8B1E-ABC84337A364> /usr/lib/system/libsystem_network.dylib
    0x7fff94515000 -     0x7fff94539fff  libxpc.dylib (300.1.17) <4554927A-9467-365C-91F1-5A116989DD7F> /usr/lib/system/libxpc.dylib
    0x7fff94afa000 -     0x7fff94b01ff3  libcopyfile.dylib (103) <5A881779-D0D6-3029-B371-E3021C2DDA5E> /usr/lib/system/libcopyfile.dylib
    0x7fff94c7e000 -     0x7fff94cadfd2  libsystem_m.dylib (3047.16) <B7F0E2E4-2777-33FC-A787-D6430B630D54> /usr/lib/system/libsystem_m.dylib
    0x7fff95794000 -     0x7fff95979ff7  com.apple.CoreFoundation (6.9 - 855.11) <E22C6A1F-8996-349C-905E-96C3BBE07C2F> /System/Library/Frameworks/CoreFoundation.framework/Versions/A/CoreFoundation

External Modification Summary:
  Calls made by other processes targeting this process:
    task_for_pid: 0
    thread_create: 0
    thread_set_state: 0
  Calls made by this process:
    task_for_pid: 0
    thread_create: 0
    thread_set_state: 0
  Calls made by all processes on this machine:
    task_for_pid: 29978
    thread_create: 2
    thread_set_state: 0

VM Region Summary:
ReadOnly portion of Libraries: Total=78.0M resident=65.2M(84%) swapped_out_or_unallocated=12.8M(16%)
Writable regions: Total=52.1M written=7924K(15%) resident=9.9M(19%) swapped_out=0K(0%) unallocated=42.2M(81%)

REGION TYPE                      VIRTUAL
===========                      =======
Kernel Alloc Once                     4K
MALLOC                             43.6M
MALLOC (admin)                       16K
STACK GUARD                        56.0M
Stack                              8192K
VM_ALLOCATE                          16K
__DATA                             1784K
__LINKEDIT                         66.2M
__TEXT                             11.8M
__UNICODE                           544K
shared memory                         4K
===========                      =======
TOTAL                             188.0M

我从源头抓住了卡桑德拉的分布。问题依然存在。它真的是一个JVM错误吗?

如何解决这个问题?

解决

这不是JVM错误。我使用pythonbrew来管理python解释器(忘了提)。当我在全局解释器上安装cql时,一切都很顺利。显然python路径存在一些问题。我在使用Cassandra时会使用全局python解释器。

我将问题缩小到pythonbrew。难怪它被弃用了。当我使用pyenv时没有段错误。

2 个答案:

答案 0 :(得分:2)

在运行cqlsh时,我在OS X 10.9.5上遇到类似的问题 解决方案是安装https://www.python.org/ftp/python/2.7.9/python-2.7.9-macosx10.6.pkg

答案 1 :(得分:0)

运行其他工具(cassandra-cli等)时是否有类似的问题?内核日志中是否有可能提示的内容?它很可能是JVM本身的一个错误。默认情况下,Cassandra不包含任何本机库。我想知道自制软件是否还安装了JNA库或JEMalloc与Cassandra。

我建议从源代码中获取Cassandra的分布(它将是纯Java)。如果它以相同的方式崩溃 - 这将是一个JVM错误。和Maverick成千上万的问题之一;(如果没有,那么请仔细搜索您使用自制软件包Cassandra的其他本地库。