aboutsummaryrefslogtreecommitdiff
path: root/doc/bugs/Handling_of_files_inside_and_outside_archive_directory_at_the_same_time/comment_2_ead9fa75a12ef36be9a92637b144e74f._comment
blob: 2be39d451a1510f9d1a42b7e1ed0207896cdeaa1 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
[[!comment format=mdwn
 username="http://joeyh.name/"
 nickname="joey"
 subject="comment 2"
 date="2013-06-15T17:52:36Z"
 content="""
This turns out to be much worse in direct mode than in indirect mode.

In indirect mode, it only does extra work during the full startup scan. Suppose there are 3 files with the same content, 1, archive/2, and 3. It will download 1, and then will drop archive/2, and then will download 3. This certainly is not ideal, especially when the file content is large.

In indirect mode, it continally and repeatedly downloads the drops the files, as long as it's running. Which is beyond unacceptable.

What seems to be going on is that when archive/2 gets dropped, it necessary needs to convert 1 and 3 to broken symlinks. But the watcher than sees those file changes, thinks these are new or renamed files that have appeared, and promptly re-downloads them. That, in turn triggers an update of archive/2, to convert it back from symlink to direct mode file, and that in turn is noticed by the watcher. Round and round we go!
"""]]