(Illustration by Gaich Muramatsu)
> I'm removing huge amounts of files in coda, and that fills up my CML > completely. > > Now I try to get rid of the CML using cfs purgeml, and guess what: > > [quake:~] bernerus% cfs purgeml > /coda/medic.chalmers.se/playground/testdir.375 > DANGER: will destroy all changes made while disconnected > Do you really want to do this? [n] y > Fools rush in where angels fear to tread ........ > VIOC_PURGEML: No space left on device I'm not sure where this error would be generated. The vol->PurgeMLEs function only returns ENOENT and EACCESS errors. Before that function is called we grab a lock on the volume (v->Enter), but there we only return EWOULDBLOCK or EINTR. Before that is where we grab a reference to the volume. This code could _possibly_ return ENOSPC. But only if the volume isn't already cached and we need to fetch it from the servers, but that seems highly unlikely since it would be pinned down by the dirty objects that are in the CML. Maybe some intermediate volume (like the realm root) got thrown out of the cache. We pin parent directories, but this pinning doesn't cross volume boundaries. Hoarding suffers from the lack of pinning as well, if I hoard my email, there is no guarantee that my client actually cached the volumes I need to traverse to reach those files. JanReceived on 2004-11-30 14:15:47