Squid internals The Storage Manager (src/store*.c) Swapping an object in - storeSwapInStart() / storeClientFileRead() storeSwapInStart() and storeClientFileRead() are called by storeClientCopy() if the client is a STORE_DISK_CLIENT storeSwapInStart() opens the file from the relevant storedir storeClientFileRead() does the following reads the metadata in to verify the object is the right one reads the data in to memory this data is NOT cached! calls httpReplyParse() to parse the reply header hands the data to the callback supplied to storeClientCopy() Each STORE_DISK_CLIENT can have a seperate instance of the same file being swapped in