Whamcloud - gitweb
LU-3534 osp: send updates by separate thread
Sending updates to other MDT by separate thread, so
1. The thread will sends the update by version number, i.e.
lower version of update will be sent first.
2. If one operation includes updates on several MDTs, these
updates can be sent on different MDTs in parallel. Though in
transaction stop (top_trans_stop()), the top transaction needs
to wait all sub transaction stop their transaction (i.e. updates
have been executed on all MDTs), then return.
3. Move dt_update_request to osp layer, since it is only OSP layer
thing, and each OSP transaction will create the osp_update_request
and attached to the list of OSP sending thread.
4. Change lgh_hdr_lock from spinlock to rw_semaphore, because if
the llog object is remote object, it will go into osp_md_write_obj,
where it might be blocked by memory allocation.
5. a few cleanups for the pervious DNE patches
http://review.whamcloud.com/11572
http://review.whamcloud.com/11737
see LU-6691, LU-6692, LU-6693.
Change-Id: I2dde892e4ca4bf74c2cd56e16bb1125920365334
Signed-off-by: Wang Di <di.wang@intel.com>
Reviewed-on: http://review.whamcloud.com/12825
Tested-by: Jenkins
Reviewed-by: James Simmons <uja.ornl@yahoo.com>
Tested-by: Maloo <hpdd-maloo@intel.com>
Reviewed-by: Alex Zhuravlev <alexey.zhuravlev@intel.com>
Reviewed-by: Lai Siyao <lai.siyao@intel.com>
Reviewed-by: Oleg Drokin <oleg.drokin@intel.com>
19 files changed: