From 00680a37a9881c8fc1c234ea47ba37bf31ad4c18 Mon Sep 17 00:00:00 2001 From: Joey Hess Date: Fri, 13 Nov 2015 16:34:54 -0400 Subject: devblog --- doc/devblog/day_337__who_needs_POSIX.mdwn | 21 +++++++++++++++++++++ 1 file changed, 21 insertions(+) create mode 100644 doc/devblog/day_337__who_needs_POSIX.mdwn (limited to 'doc') diff --git a/doc/devblog/day_337__who_needs_POSIX.mdwn b/doc/devblog/day_337__who_needs_POSIX.mdwn new file mode 100644 index 000000000..3ab185cc9 --- /dev/null +++ b/doc/devblog/day_337__who_needs_POSIX.mdwn @@ -0,0 +1,21 @@ +Got the pid locks working pretty easily, as expected. + +But then... Detoured into some truely insane behavior of the Lustre +filesystem. It seems that Lustre is perfectly happy to let link() +succeed even when there's a file there that it would overwrite. Rather than +overwriting the file, Lustre picks an even more crazy way to violate +POSIX.. It lets there be 2 files in a directory with the **same name**, but +different contents. Has to be seen to be believed: + + hess$ ls pidlock + -r--r--r-- 1 hess root 70 Nov 13 15:07 pidlock + -r--r--r-- 1 hess root 70 Nov 13 15:07 pidlock + hess$ rm pidlock; ls pidlock + -r--r--r-- 1 hess root 74 Nov 13 14:35 pidlock + +git-annex's pid locking code now detects this and seems to work +even on Lustre. Eep. + +I'm clutching my "NO WARRANTY" disclaimer pretty hard though, if anyone +wants to use git-annex on Lustre. When POSIX is being violated this badly, +it's hard to anticipate what other strangeness might result. -- cgit v1.2.3