if object's version is found committed. OST implements this logic yet.
Change-Id: I17a05c0202bba3f97f80b165d6a3c9c2aff01996
Signed-off-by: Alex Zhuravlev <bzzz@whamcloud.com>
Reviewed-on: https://review.whamcloud.com/33266
Reviewed-by: Andreas Dilger <adilger@whamcloud.com>
Tested-by: jenkins <devops@whamcloud.com>
Tested-by: Maloo <maloo@whamcloud.com>
Reviewed-by: Mike Pershin <mpershin@whamcloud.com>
Reviewed-by: Oleg Drokin <green@whamcloud.com>
static int mdt_object_sync(const struct lu_env *env, struct obd_export *exp,
struct mdt_object *mo)
{
static int mdt_object_sync(const struct lu_env *env, struct obd_export *exp,
struct mdt_object *mo)
{
- rc = mo_object_sync(env, mdt_object_child(mo));
+ if (S_ISREG(lu_object_attr(&mo->mot_obj))) {
+ struct lu_target *tgt = tgt_ses_info(env)->tsi_tgt;
+ dt_obj_version_t version;
+
+ version = dt_version_get(env, mdt_obj2dt(mo));
+ if (version > tgt->lut_obd->obd_last_committed)
+ rc = mo_object_sync(env, mdt_object_child(mo));
+ } else {
+ rc = mo_object_sync(env, mdt_object_child(mo));
+ }