(Illustration by Gaich Muramatsu)
Hello, I've been using coda for a few months now (I'm currently using 6.0.4 but am about to upgrade to 6.0.5), however I have a few questions regarding how the hoard command and it's priorities affect the HDB. Please correct my if I'm wrong, but my assumption is that once the venus cache is full, the cached objects with the lowest priority value assigned to them are automatically evicted from the cache to make room for a new incoming object. If this is so, I'm quite confused as to why a certain experiment I'm working on doesn't turn out results as I expect. I have a small wireless setup that consists of 3 pc nodes. 2 of these run coda servers, and the remaining pc runs a coda client.I've written a small program for testing purposes in the client that calls hoard each time a file is opened in coda (using filenames outputted by spy). The program uses a system() call for hoard to assign a priority value from 1-1000 to the just-opened file. This priority is primarily based on the wireless connection strength (among other things) from the client to the server the opened file resides in. Thus,the weaker the connection strength...the higher the priority value assigned by hoard to that file. I made a script that would copy 200 files from a pool of fifty 1mb files from both servers, where one server has a missing wireless card antenna. This would force my program to assign high priority hoard values (at least 900 according to "hoard list") to files coming from that server. Consequently, it would assign relatively low values to files coming from the other "stronger" server (around 100). Using the linux time command, the script finishes in around 14 minutes. My question is this: why is it that if I hardcode my program to assign a constant priority value (e.g 100) using hoard to all opened files from both servers...the script still finishes in around 14 minutes? I flush the cache and clear the hoard list before running each script. Theoretically, I was expecting it to be a lot slower because it would not prioritize keeping files from the "weak" server in the cache. Manually copying a file from the "weak" server takes at least twice the time to copy a file of the same size from the "stronger" server. On another note, sometimes when hoard is called repetitively for long periods fo time..something like this happens: Coda_pioctl: Venus return -4 for (0xf000001.0X1.0x) 16:28:23 Dispatchworker: Signal received (seq=6307) I guess hoard wasn't meant to be used like this though...:) Thanks for your time, I'd appreciate any insights/suggestions/workarounds. More power to the coda project! -PaulReceived on 2004-03-20 03:01:13