Skip to content

Commit

Permalink
Added a note on unlinking directories.
Browse files Browse the repository at this point in the history
  • Loading branch information
jacobsa committed Mar 19, 2015
1 parent 1fa3d8d commit 863e4a5
Showing 1 changed file with 12 additions and 0 deletions.
12 changes: 12 additions & 0 deletions docs/semantics.md
Original file line number Diff line number Diff line change
Expand Up @@ -244,3 +244,15 @@ as GCS object/bucket ACLs, so we cannot faithfully represent the latter and to
do so would be misleading since it would not necessarily offer any security.

[allow_other]: https://github.com/torvalds/linux/blob/a33f32244d8550da8b4a26e277ce07d5c6d158b5/Documentation/filesystems/fuse.txt##L102-L105


# Surprising behaviors

## Unlinking directories

Because GCS offers no way to delete an object conditional on the non-existence
of other objects, there is no way for gcsfuse to unlink a directory if and only
if it is empty. So gcsfuse takes the simple route, and always allows a
directory to be unlinked, even if non-empty. The contents of a non-empty
directory that is unlinked are not deleted but simply become inaccessible—the
placeholder object for the unlinked directory is simply removed.

0 comments on commit 863e4a5

Please sign in to comment.