[sheepdog] [sheepdog/sheepdog] 91c88b: sheep: redesign get_vdis_from() with bitmap and ob...

Hitoshi Mitake mitake.hitoshi at lab.ntt.co.jp
Tue Mar 8 06:34:53 CET 2016


  Branch: refs/heads/for-142
  Home:   https://github.com/sheepdog/sheepdog
  Commit: 91c88bf881fa9d4fc820740da6107105edabab70
      https://github.com/sheepdog/sheepdog/commit/91c88bf881fa9d4fc820740da6107105edabab70
  Author: Hitoshi Mitake <mitake.hitoshi at lab.ntt.co.jp>
  Date:   2016-03-08 (Tue, 08 Mar 2016)

  Changed paths:
    M sheep/group.c
    M sheep/ops.c

  Log Message:
  -----------
  sheep: redesign get_vdis_from() with bitmap and object reading

Current get_vdis_from() is based on SD_OP_GET_VDI_COPIES. The opcode
isn't scalable because it requires memory area whose size is linear to
a number of VDIs stored in the cluster. It cannot work well for a
cluster which has many VDIs.

This commit fixes the problem with redesign the function with bitmap
synchronization (SD_OP_READ_VDIS and SD_OP_READ_DEL_VDIS) and ordinal
inode object reading (SD_OP_READ_OBJ).

Fixes https://github.com/sheepdog/sheepdog/issues/142

Signed-off-by: Hitoshi Mitake <mitake.hitoshi at lab.ntt.co.jp>


  Commit: 7bc93157eb9e75f74d344a3ad7eb443b01930399
      https://github.com/sheepdog/sheepdog/commit/7bc93157eb9e75f74d344a3ad7eb443b01930399
  Author: Hitoshi Mitake <mitake.hitoshi at lab.ntt.co.jp>
  Date:   2016-03-08 (Tue, 08 Mar 2016)

  Changed paths:
    M sheep/group.c
    M sheep/sheep.c
    M sheep/sheep_priv.h

  Log Message:
  -----------
  sheep: parallelize inode bitmap gathering process

This commit is a performance improvement of the previous commit. The
inode bitmap gathering process can be parallelized for fast
completion.

Signed-off-by: Hitoshi Mitake <mitake.hitoshi at lab.ntt.co.jp>


Compare: https://github.com/sheepdog/sheepdog/compare/d44ff039b3b1...7bc93157eb9e


More information about the sheepdog mailing list