hi, all
When tracing bug 851381 (https://bugzilla.redhat.com/show_bug.cgi?id=851381),, I found following code caused the problem:
if ((!uuid_is_null (inode->gfid))
&& (uuid_compare (stbuf.ia_gfid, inode->gfid) != 0)) {
gf_log (frame->this->name, GF_LOG_DEBUG,
"gfid changed for %s", local->loc.path);
rsp.op_ret = -1;
op_errno = ESTALE;
goto out;
}
I could fix it by simply changing the code to "uuid_copy(inode->gfid, stbuf.ia_gfid);", but I think throw a error is the intended behavior.
So, why we throw a error when gfid is changed?
Best Regards.
Jules Wang.