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 (FSRecords.java 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 [AbstractRecordTable.java, AbstractStorage.java, DataTable.java 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?