X-Git-Url: https://git.arvados.org/arvados.git/blobdiff_plain/5c4cbf1ae8496930deb7e35c9880af05941cda75..47eb67e4c084abde49d5463d4ced8b4436a59dfd:/services/fuse/arvados_fuse/__init__.py diff --git a/services/fuse/arvados_fuse/__init__.py b/services/fuse/arvados_fuse/__init__.py index de0338ea79..788d475e33 100644 --- a/services/fuse/arvados_fuse/__init__.py +++ b/services/fuse/arvados_fuse/__init__.py @@ -159,10 +159,11 @@ class InodeCache(object): if obj.in_use(): _logger.debug("InodeCache cannot clear inode %i, in use", obj.inode) return - obj.kernel_invalidate() if obj.has_ref(True): - _logger.debug("InodeCache sent kernel invalidate inode %i", obj.inode) + _logger.debug("InodeCache cannot clear inode %i, still referenced", obj.inode) return + obj.kernel_invalidate() + _logger.debug("InodeCache sent kernel invalidate inode %i", obj.inode) obj.clear() # The llfuse lock is released in del_entry(), which is called by @@ -437,6 +438,7 @@ class Operations(llfuse.Operations): entry = llfuse.EntryAttributes() entry.st_ino = inode entry.generation = 0 + entry.entry_timeout = 0 entry.attr_timeout = e.time_to_next_poll() if e.allow_attr_cache else 0 entry.st_mode = stat.S_IRUSR | stat.S_IRGRP | stat.S_IROTH