Closed sgifford closed 13 years ago
File Conveyor does adhere to ignoredDirs
, it's just that pyinotify
is incapable of ignoring certain directories, hence File Conveyor is doing some very basic checks on everything that pyinotify
tells File Conveyor.
The strange thing is that this seems to be happening despite the fact that the code is actually checking if the file still exists:
# The file may have already been deleted!
deleted = event == FSMonitor.DELETED
touched = event == FSMonitor.CREATED or event == FSMonitor.MODIFIED
if deleted or (touched and os.path.exists(event_path)):
# Ignore directories (we cannot test deleted files to see if they
# are directories, because they obviously don't exist anymore).
if touched:
if stat.S_ISDIR(os.stat(event_path)[stat.ST_MODE]):
return
I guess the file must have been created and must still exist (hence passing the first if
test), but is then immediately deleted (hence failing at the third if
test).
I'll definitely have to make this more robust.
That makes sense. SVN creates the file for only an instant while it is checking to see what needs to be checked out. It may be that this will have to be solved by catching the exception.
We have svn on a cron doing updates every 1 minute on a directory. That directory is successfully synced to amazon by fileconveyor, however, we keep seeing the following in the logs every few minutes. It borks fileconveyor completely requiring a cron to constantly keep restarting fileconveyor.
It seems that for whatever reason, fsmonitor isn't adhering to the ignoredDirs, however, those svn files are not being pushed to amazon.