2016-06-08 136 views
0

我们的RabbitMQ服务,在$ RABBITMQ_NODENAME-sasl.log以下报告坠毁过两次:RabbitMQ的崩溃说明

=CRASH REPORT==== 7-Jun-2016::14:37:25 === 
    crasher: 
    initial call: gen:init_it/6 
    pid: <0.223.0> 
    registered_name: [] 
    exception exit: {{badmatch, 
         {[{msg_location, 
           <<162,171,39,113,226,229,228,92,227,253,48,186, 
           45,48,29,98>>, 
           1,357,0,583}, 
          ****************** 
          16000 similar msg_location lines snipped 
          ****************** 
          1795219}}, 
        [{rabbit_msg_store,combine_files,3,[]}, 
         {rabbit_msg_store_gc,attempt_action,3,[]}, 
         {rabbit_msg_store_gc,handle_cast,2,[]}, 
         {gen_server2,handle_msg,2,[]}, 
         {proc_lib,wake_up,3, 
          [{file,"proc_lib.erl"},{line,250}]}]} 
     in function gen_server2:terminate/3 
    ancestors: [msg_store_persistent,rabbit_sup,<0.159.0>] 
    messages: [{'$gen_cast',{combine,394,380}}] 
    links: [#Port<0.86370>,<0.218.0>,#Port<0.86369>] 
    dictionary: [{{"/var/lib/rabbitmq/mnesia/$RABBITMQ_NODENAME/msg_store_persistent/357.rdq", 
        fhc_file}, 
        {file,1,false}}, 
        {{"/var/lib/rabbitmq/mnesia/$RABBITMQ_NODENAME/msg_store_persistent/340.rdq", 
        fhc_file}, 
        {file,1,true}}, 
        {fhc_age_tree,{2, 
           {{1465,346244,764691}, 
            #Ref<0.0.3145729.257998>,nil, 
            {{1465,346244,891543}, 
            #Ref<0.0.3145729.258001>,nil,nil}}}}, 
        {{#Ref<0.0.3145729.257998>,fhc_handle}, 
        {handle,{file_descriptor,prim_file,{#Port<0.86369>,59}}, 
          0,false,0,1048576,[],false, 
          "/var/lib/rabbitmq/mnesia/$RABBITMQ_NODENAME/msg_store_persistent/357.rdq", 
          [raw,binary,read_ahead,read], 
          [{write_buffer,1048576}], 
          false,true, 
          {1465,346244,764691}}}, 
        {{#Ref<0.0.3145729.258001>,fhc_handle}, 
        {handle,{file_descriptor,prim_file,{#Port<0.86370>,64}}, 
          14212552,false,0,1048576,[],false, 
          "/var/lib/rabbitmq/mnesia/$RABBITMQ_NODENAME/msg_store_persistent/340.rdq", 
          [raw,binary,read_ahead,read,write], 
          [{write_buffer,1048576}], 
          true,true, 
          {1465,346244,891543}}}] 
    trap_exit: false 
    status: running 
    heap_size: 121536 
    stack_size: 27 
    reductions: 835024 
    neighbours: 

我们想理解这个崩溃报告意味着什么。它是否意味着一个坏消息,RMQ找不到消息,或者完全不同的东西?我们在Erlang 18中使用RabbitMQ 3.1.5,虽然我们知道我们使用的是旧版本,但我们希望在将资源专用于升级之前先了解导致崩溃的原因。

回答

0

此消息表示RabbitMQ消息存储过程未能在消息存储上的垃圾回收期间合并文件。这在理论上会导致信息丢失。 请注意,3.1.5不受支持,尚未使用OTP 10进行测试。不过,此问题已在新版本中得到修复。