Recover index takes lots of time in translog

Hi, I am using elasticsearch 5.3.0 as a one node cluster with a 3GB heap. It stores about 11GB data. When I use systemctl restart elasticsearch to restart cluster, it will cost about 5s for each index to recovery. The recovery log is like that

{
  "fulleth_smartprobe2_nic0_4h_2018010316" : {
    "shards" : [
      {
        "id" : 0,
        "type" : "EXISTING_STORE",
        "stage" : "DONE",
        "primary" : true,
        "start_time_in_millis" : 1518425354773,
        "stop_time_in_millis" : 1518425359645,
        "total_time_in_millis" : 4872,
        "source" : { },
        "target" : {
          "id" : "jUsj1URzQ_KUEsn58EoBag",
          "host" : "10.1.4.137",
          "transport_address" : "10.1.4.137:9300",
          "ip" : "10.1.4.137",
          "name" : "jUsj1UR"
        },
        "index" : {
          "size" : {
            "total_in_bytes" : 138131014,
            "reused_in_bytes" : 138131014,
            "recovered_in_bytes" : 0,
            "percent" : "100.0%"
          },
          "files" : {
            "total" : 40,
            "reused" : 40,
            "recovered" : 0,
            "percent" : "100.0%"
          },
          "total_time_in_millis" : 32,
          "source_throttle_time_in_millis" : 0,
          "target_throttle_time_in_millis" : 0
        },
        "translog" : {
          "recovered" : 0,
          "total" : 0,
          "percent" : "100.0%",
          "total_on_start" : 0,
          "total_time_in_millis" : 4813
        },
        "verify_index" : {
          "check_index_time_in_millis" : 0,
          "total_time_in_millis" : 0
        }
      }
    ]
  }
}

it shows that it costs 32ms to recover index and 4800ms to recovery translog, but the recovered translog is 0.

Why it costs 4800ms to recovery 0 translog? How to reduce this time cost?

Any reply is appreciated. Thanks.

This topic was automatically closed 28 days after the last reply. New replies are no longer allowed.