[sheepdog] [sheepdog/sheepdog] d2c62f: Revert "sheep: update ledger objects in an asynchr...

Takashi Menjo menjo.takashi at lab.ntt.co.jp
Wed Feb 22 08:29:25 CET 2017


  Branch: refs/heads/stable-0.9
  Home:   https://github.com/sheepdog/sheepdog
  Commit: d2c62f3bbcff667edfa859d2001a66890462479f
      https://github.com/sheepdog/sheepdog/commit/d2c62f3bbcff667edfa859d2001a66890462479f
  Author: Takashi Menjo <menjo.takashi at lab.ntt.co.jp>
  Date:   2017-02-21 (Tue, 21 Feb 2017)

  Changed paths:
    M sheep/gateway.c

  Log Message:
  -----------
  Revert "sheep: update ledger objects in an asynchronous manner"

As mentioned in #362, there is a risk of deadlock in the stable-0.9
branch. We can mitigate (or may remove) the risk by increasing the
maximum number of threads for workqueues enough. However, it is hard
to forecast the behavior of parallel execution of (1) and (2) below,
making it difficult to estimate the number of threads:

  (1) gateway_write_object (run in a "gateway" thread) to update the
      data_vdi_id field of an inode, causing update of reference count

  (2) async_update_obj_refcnt_work (run in an "io" thread) to update
      reference count, following (1)

This commit lets the two above run in serial in a "gateway" thread.
Note that the (2) is now update_obj_refcnt.

This reverts commit 796c88df19e32a6a83a6ba54f2b17b03e166b3d2.

Signed-off-by: Takashi Menjo <menjo.takashi at lab.ntt.co.jp>

Conflicts:
	sheep/gateway.c


  Commit: d7223dc1072216489d96ae22c544a67a3cb1b2cb
      https://github.com/sheepdog/sheepdog/commit/d7223dc1072216489d96ae22c544a67a3cb1b2cb
  Author: Takashi Menjo <menjo.takashi at lab.ntt.co.jp>
  Date:   2017-02-22 (Wed, 22 Feb 2017)

  Changed paths:
    M CHANGELOG.md
    M configure.ac

  Log Message:
  -----------
  sheepdog stable release v0.9.5_rc1

Signed-off-by: Takashi Menjo <menjo.takashi at lab.ntt.co.jp>


Compare: https://github.com/sheepdog/sheepdog/compare/37f282d129c3...d7223dc10722


More information about the sheepdog mailing list