Need info regarding contents of /caches directory.

caches directory has the following files:





and .len files
I am able to figure out what is part of names.dat, names.dat.keystream and records.dat (by going through community edition source code). Here is one line summary:
names.dat.keystream contains the files names [ascii/byte notation], names.dat contains #of filename. PersistentEnumerator.writeData(value, hashCode) is one of the functions in the call stack which writes into these cache files]
records.dat ( defines structure of this file) contains parent-Id, offset to names.dat entry of this file, flags, attributes record number (index to attrib.dat.storageRecordIndex), content, timestamp, modcount and length.

Where as, I am not able to completely understand attrib.dat.storageRecordIndex, attrib,dat.storageData contents [,, are the source files related to these caches files]. attrib.dat.storageRecordIndex points to attrib.dat.storageData (Address of storageData entry, size, capacity), but could not get what is stored in attrib.dat.storageData. Can some one explain?

What is part of content.dat? Where can I get (ie., relevant source files) more information related to this?

I observed that modcount is incremented for every change in records.dat. [the parents's modcount also is getting updated.] Where is this used?


1 comment
Comment actions Permalink

Hi Chandra,

attrib.* files are the storage for persistent attributes associated with VirtualFile objects. With every VirtualFile object you may associate some data that will be stored along with the file. content.dat is one of the main attributes and is stored separately for performance reasons. Several subsystems, for example indices and make store some file-related data in persistent attributes as well.



Please sign in to leave a comment.