If a file is deleted while a brick is offline, and a file by the same name is subsequently created once the brick has been brought back online but not fully healed, the brick returns the old, pre-deletion GFID for the file, This results in lack of consensus about the GFID, which is bad, and usually manifests as EROFS. Fix by making bricks honor the GFID requested by the server when a file is created, even if there is a pre-existing one. This fixes the race and has the additional benefit that any clients with the old GFID will get ESTALE accessing the old file instead of silently getting access to a file which differs fromthe one they thought they were accessing.
REVIEW: https://review.gluster.org/16816 (storage/posix: Fix race in file creation when brick was offline during delete.) posted (#4) for review on master by Jeff Darcy
Closing as per the discussion on https://review.gluster.org/16816