<div dir="ltr">Thanks for the help. I just had this issue again today..<div><br></div><div>Once the Atomic Save error appeared, I shut down TM and relaunched it from the cmdline </div><div>You're right, its the rename that fails...<br></div><div><br></div><div>$ rename("/Volumes/nodechat/public/js/client.js~", "/Volumes/nodechat/public/js/client.js"): Resource busy<br></div><div><br></div><div><div>I ssh'd into that machine (as the same non-privileged linux user I'm using to access the share)..</div><div><br></div><div>$ mv client.js~ client.js</div><div><br></div><div>This was actually successful, and after that I could also save the file from TM</div></div><div><br></div><div>Now even though TM didn't show the Atomic Save error at this point, it did output a 'write: Broken Pipe' log entry, each time the file is saved. </div><div>This is true even after restarting TM, so I guess renaming the file means it gotten out of sync with samba</div><div>Even with the "write: Broken Pipe error", it does seem to save the file successfully.</div><div><br></div><div>I'm kinda confused why the rename() fails when TM tries to call it, but doing it manually under the same user account is successful.</div><div><br></div><div><br></div><div><br></div><div><br></div><div><br></div><div><br></div><div><br></div><div><br></div><div><br></div><div><br></div></div><div class="gmail_extra"><br><div class="gmail_quote">On 3 June 2016 at 10:03, Allan Odgaard <span dir="ltr"><<a href="mailto:mailinglist@textmate.org" target="_blank">mailinglist@textmate.org</a>></span> wrote:<br><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex"><span class="">On 1 Jun 2016, at 14:15, Carpii UK wrote:<br>
<br>
<blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex">
Maybe 20% of the time I save, I then suddenly get the 'Atomic Save Failed,<br>
Resource Busy' error from TM<br>
</blockquote>
<br></span>
The error text is probably a little misleading, because it’s really TextMate’s “swap and unlink” that fails, and this function tries to do an “atomic save” using whatever means the file system offers, i.e. exchangedata() on a local file system, rename() on a non-local system.<br>
<br>
To get the exact error, try enable logging and see what it says: <a href="https://github.com/textmate/textmate/wiki/Enable-Logging" rel="noreferrer" target="_blank">https://github.com/textmate/textmate/wiki/Enable-Logging</a><br>
<br>
Though my guess would be that rename() fails.<br>
<br>
In this case though, are you able to run this in a terminal:<br>
<br>
   mv .tm_properties~ .tm_properties<br>
<br>
Or does that also fail with resource busy? And if it fails, does this work:<br>
<br>
   rm .tm_properties && mv .tm_properties~ .tm_properties<br>
<br>
The latter is not something TextMate currently do, but if that works for you, it could fallback to that when rename fails, as we already have ensured the data is on the disk (just under a wrong name), so there should be no data loss issue by removing the original file.<div class="HOEnZb"><div class="h5"><br>
<br>
_______________________________________________<br>
textmate mailing list<br>
<a href="mailto:textmate@lists.macromates.com" target="_blank">textmate@lists.macromates.com</a><br>
<a href="http://lists.macromates.com/listinfo/textmate" rel="noreferrer" target="_blank">http://lists.macromates.com/listinfo/textmate</a></div></div></blockquote></div><br></div>