show changes in real time
ExpanDrive 4 seems to be more aggressive in caching than ExpanDrive 3, at least for SFTP connections.
I frequently mount a disk from a local VM (created with VirtualBox). When I create or delete a file or directory on the ExpanDrive mounted disk, this change is immediately visible on the remote location.
When I create or delete a file or directory on the VM (on the 'remote' location), ideally I also want this change would immediately be shown in the ExpanDrive mounted disk. This is not the case.
Here is the behaviour I've experienced:
* With ExpanDrive 3 the change is visible in the terminal (eg: ls /Volumes/Mounted_SFPT_disk/) after 2-4 seconds.
* With ExpanDrive 3 the change is visible in the Finder if a 'refresh Finder' command is selected from the menu after 2-4 seconds (before that delay, the command has no effect).
* With ExpanDrive 4.1.2 a deletion is never visible in the terminal nor Finder, until the disk is unmounted and remounted. Trying to operate on a deleted file or folder results in a 'Input/output error' in the terminal or "An unexpected error occured (error code -36)" in the Finder.
* With ExpanDrive 4.1.2 a creation is visible in the terminal after 2-4 seconds. It is also visible in other programs that read the file or browse the folders after this delay.
* With ExpanDrive 4.1.2 a creation is never visible in the Finder, even not if the file is accessed from the terminal or another program. The only thing that helps is to unmount and remount the disk.
To me, ExpanDrive 3 wasn't great in this respect (which I contributed to protocol limitations), but It really seems that ExpanDrive 4 caches so often that it is unworkable.
Last week I've found myself unmounting and mounting a disk so often that I got annoyed and started looking for alternatives (e.g. shared disks in Virtual Box or downgrading to ExpanDrive 3). I did the later.
I really would hope that ExpanDrive 4 will be improved that at least it is as good as ExpanDrive 3 again.
On my Mac, I have a similar problem, though I don't need to unmount/remount to get it to see files created on the server. It seems like in terminal I need to ls the directory 2-3 times, and then ExpanDrive finally sees the new files.
Unfortunately, it seems like programatically doing this (via os.listdir() in python, or even calling ls via Popen) does not trigger ExpanDrive to update its knowledge of remote files. Something about literally being in a shell and listing the directory is the trick. Would love to know why that is.
An option to completely disable caching would be even better.
Philip Chen commented
This is the most important feature I need and it just doesn't work. This is so annoying and I have to go back to use MacFuse sshfs again. I really hope this can be fixed or enhanced.
I would like to have an option to turn caching off entirely.
For example, when using Total Commander of Allway Sync I would rather I could see the progress (I can always move it to the background) than have it hidden from me.
In older versions one could force a refresh by creating a new directory (which you'd immediately delete after), this would trigger a new listing to be fetched I guess. That no longer works. I am reading about a 'Refresh' function there used to be? Can't find that in v5.1 at least.
I do a lot of dev work in git branches, and it's a nuisance to have to unmount/mount the working directory after checking out a different branch.
I wouldn't mind a manual action so much, like ctr-click->refresh, or a menu item.. still better than having all open work windows close upon unmount, really.
Grant Grueninger commented
In ExpanDrive 5, a file created on the remote side isn't visible in applications or the Finder (haven't tried Terminal). Ejecting a remounting the drive solves the problem. It may auto-appear after a length of time, but I haven't tested thoroughly enough to know - it certainly isn't after 3-4 (or 20) seconds.
Harry Zhong commented
Yes. Totally back Chris.
That's the only thing I dislike Expandrive.
Is there other better alternatives?
Chris Francy commented
Seriously. This needs to be drastically improved. A file that was deleted over 4 hours ago for me on the server is still showing as available on the client. Expandrive needs to be redesigned to accommodate the fact that it should not expect that it has total control what happens on the server, and that changes may happen on the server.
Heck, at the bare minimum give me a button somewhere that lets me tell expandrive it is time to clear the caches.