]> git.apps.os.sepia.ceph.com Git - ceph.git/commitdiff
client: force getattr when inline data is missing 1471/head
authorYan, Zheng <zheng.z.yan@intel.com>
Sun, 16 Mar 2014 04:38:55 +0000 (12:38 +0800)
committerYan, Zheng <zheng.z.yan@intel.com>
Sun, 16 Mar 2014 04:42:35 +0000 (12:42 +0800)
Signed-off-by: Yan, Zheng <zheng.z.yan@intel.com>
src/client/Client.cc

index 8b5a036e5138f280063d687882772802ba560484..c770286a91957fb15d56fe9e0314a685108703bc 100644 (file)
@@ -5891,7 +5891,7 @@ int Client::_read(Fh *f, int64_t offset, uint64_t size, bufferlist *bl)
   //bool lazy = f->mode == CEPH_FILE_MODE_LAZY;
 
   if (in->inline_version == 0) {
-    int r = _getattr(in, CEPH_STAT_CAP_INLINE_DATA);
+    int r = _getattr(in, CEPH_STAT_CAP_INLINE_DATA, -1, -1, true);
     if (r < 0)
       return r;
     assert(in->inline_version > 0);
@@ -6256,7 +6256,7 @@ int Client::_write(Fh *f, int64_t offset, uint64_t size, const char *buf)
   utime_t start = ceph_clock_now(cct);
 
   if (in->inline_version == 0) {
-    int r = _getattr(in, CEPH_STAT_CAP_INLINE_DATA);
+    int r = _getattr(in, CEPH_STAT_CAP_INLINE_DATA, -1, -1, true);
     if (r < 0)
       return r;
     assert(in->inline_version > 0);