[sheepdog] [sheepdog/sheepdog] 596b0d: sheep: redesign get_vdis_from() with bitmap and ob...

Hitoshi Mitake mitake.hitoshi at lab.ntt.co.jp
Mon Feb 29 06:25:10 CET 2016


  Branch: refs/heads/for-142
  Home:   https://github.com/sheepdog/sheepdog
  Commit: 596b0db2c1b9408e26c988c7cf05f0c5eb78e339
      https://github.com/sheepdog/sheepdog/commit/596b0db2c1b9408e26c988c7cf05f0c5eb78e339
  Author: Hitoshi Mitake <mitake.hitoshi at lab.ntt.co.jp>
  Date:   2016-02-29 (Mon, 29 Feb 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: d44ff039b3b1bbe37c556c034876d5d91531f772
      https://github.com/sheepdog/sheepdog/commit/d44ff039b3b1bbe37c556c034876d5d91531f772
  Author: Hitoshi Mitake <mitake.hitoshi at lab.ntt.co.jp>
  Date:   2016-02-29 (Mon, 29 Feb 2016)

  Changed paths:
    M sheep/group.c

  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/4af6f30741cf...d44ff039b3b1


More information about the sheepdog mailing list