The current methodology, whatever it may be, seems to be rather inefficient in determining when a particular set of data is to be deleted from the host computer's disk.
Example:
On March 5th, this happened...
2008-03-05 18:24:19 [Einstein@Home] Sending scheduler request: To fetch work
2008-03-05 18:24:19 [Einstein@Home] Requesting 168931 seconds of new work
2008-03-05 18:24:39 [Einstein@Home] Scheduler RPC succeeded [server version 601]
2008-03-05 18:24:39 [Einstein@Home] Got server request to delete file h1_0807.10_S5R3
2008-03-05 18:24:39 [Einstein@Home] Got server request to delete file l1_0807.10_S5R3
Then just now, this happened...
2008-03-18 00:40:19 [Einstein@Home] Sending scheduler request: To fetch work
2008-03-18 00:40:19 [Einstein@Home] Requesting 62992 seconds of new work
2008-03-18 00:40:24 [Einstein@Home] Scheduler RPC succeeded [server version 601]
2008-03-18 00:40:24 [Einstein@Home] Deferring communication for 1 min 0 sec
2008-03-18 00:40:24 [Einstein@Home] Reason: requested by project
2008-03-18 00:40:26 [Einstein@Home] [file_xfer] Started download of file h1_0807.10_S5R3
2008-03-18 00:40:26 [Einstein@Home] [file_xfer] Started download of file l1_0807.10_S5R3
Since I have broadband (although of the slow type, 1.5M cable, which is the slowest plan offered), the download isn't a huge issue, but if on dialup, one might get a little irritated about redownloading something that was just deleted 2 weeks ago...
Copyright © 2024 Einstein@Home. All rights reserved.
Deletion of data files on hosts by the server
)
I've entertained similar thoughts because of a number of things that happen from time to time which seem to be not optimal.
In your case however, my own observations seem to suggest that the initial request for deletion was triggered by the server thinking that every task that needed 807.10 data had been issued at that point. Of course, 18 days later there are bound to be some that need to be reissued due to non return of the original issue. So if the server had made the decision to request deletion based on all tasks issued rather than all tasks returned and validated, what you saw in your case is bound to happen from time to time.
Common sense says that file deletion should only occur after all tasks have been returned and validated. My own observations suggest that this is not the case. I've been trying to get "runs" of tasks with sequential sequence numbers by increasing the preference for work_buf_additional_days in the local prefs override file on a particular host. I have observed, after getting several in sequence, that the server will sometimes "jump up" the frequency of the next task delivered by 0.05 or 0.10. This can often be accompanied by a drastic change in sequence number. However, I've also noticed that if I keep increasing the cache a day at a time, quite often the server will revert to the previous frequency and the correct next sequence number, allowing me to continue that particular run.
Mostly, this happens with no request for deletion but often a request for slightly higher frequency data. However, I have seen at least two cases where there were requests for deletion at the time of the small step change in frequency and then a reversion to the lower frequency with additional "correct" sequence numbers. This clearly seems to suggest that on at least two occasions that I've directly observed, the server was requesting deletion of data for which all tasks had not even been fully issued.
I think the local client must store up the request and only act on it after all tasks depending on a particular data file had been completed. I say this because there has not ever been a problem in crunching the additional tasks delivered after the request for deletion was issued by the server.
Another nasty thing I've seen happen a large number of times is that a new host will often be issued with "old" work for its very first task. This "old" work (sometimes even in the 7xx.xx frequency range) will often be a single task for which the complete suite of large data files has just been downloaded. Subsequent requests for work will result in a complete set of "newer" data files (in the 8xx.xx or 9xx.xx frequency range) which then can be used for a much larger number of tasks. I think it's quite unfair to force a new host to effectively do two complete data downloads in this way. The server should wait longer for someone who already has the data before picking a new host to be given this "reissue" work.
Cheers,
Gary.
RE: Another nasty thing
)
OTOH, remember what happened at the end of S5R1 (December 2006 - January 2007). It felt as if all those 'holes' in the database had been left on one side until the end of the run, so suddenly everyone was downloading a full set of datafiles for practically every new task. Sometimes you just can't win!
Ideally, of course, you would issue a new host with datafiles capable of sustaining a long run (new work, rather than resends). Then, if it recorded both a high proportion of validated results, and a broadband-class or better download speed, it could be designated a hole-filler and start to be issued these stray tasks asap to clean up the database before the end of the run. I don't know if the scheduler could cope with that, though.