2016-06-08 135 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進行測試。不過,此問題已在新版本中得到修復。