The current method of creating lock files is mostly good enough, especially with the recent testing by QuickCheck. However, it's probably a good idea to use the rename method used by riak_core_util:replace_file/2. h/t @gburd for reminding me.
There have been a number of flare-ups on this front, lately, #163, etc. Ideally we'd write a test to exhibit the problem then work on getting it fixed. Relatedly, basho/riak#535 should be worked on to handle the numerous stale lockfile on startup issues that we've been seeing.
My proposal would be to consolidate all bugs into this bug and 535, to make the actual state of things clear.