Revision: 14231
Author: adrian.chadd
Date: Wed Jul 22 19:25:05 2009
Log: Edited wiki page through web user interface.
http://code.google.com/p/lusca-cache/source/detail?r=14231

Modified:
  /wiki/LuscaArchitectureStoreRebuilding.wiki

=======================================
--- /wiki/LuscaArchitectureStoreRebuilding.wiki Wed Jul 22 19:18:21 2009
+++ /wiki/LuscaArchitectureStoreRebuilding.wiki Wed Jul 22 19:25:05 2009
@@ -23,3 +23,23 @@
  This needs to be better documented. How the proxy stores or doesn't store  
content during rebuild, whether temporary disk files are still used  
anywhere, etc.

  = Squid Rebuild Information =
+
+== AUFS ==
+
+The AUFS rebuild process starts via a call to storeAufsDirRebuild(). This  
attempts to determine whether a valid swap log is available and chooses  
whether to rebuild by log or by directory.
+
+If the storedir is being rebuilt via swaplog, a periodic event is  
scheduled which reads in a fixed number of entries from the swaplog file,  
adds them to the cache as appropriate, and re-schedules a subsequent read  
to occur at a later time.
+
+If the storedir is being rebuild via directory, a periodic event is  
scheduled which walks the storedir and reads in the metadata from a fixed  
number of swap files. It then re-schedules a subsequent event to occur at a  
later time to repeat the process until all directories have been checked.
+
+Both of these processes use blocking POSIX IO and as such do not  
parallelise well. In some very limited cases (eg when the operating system  
is doing read-ahead) the rebuild-by-log process can parallelise but it  
requires the read-ahead to keep ahead of how much data is being read at any  
given time. The process will block on disk IO if more data is requested.
+
+== COSS ==
+
+The COSS rebuild process simply schedules an async read (via aioRead()) to  
read in a stripe at a time. It then looks through the stripe for valid swap  
objects and adds them to the cache as appropriate.
+
+This process is IO and CPU intensive. The large, linear reads performed to  
read the entire stripe contents may easily saturate available bus resources  
on a large cache.
+
+This process however does happen asynchronously.
+
+= Lusca Rebuild Process =

--~--~---------~--~----~------------~-------~--~----~
You received this message because you are subscribed to the Google Groups 
"lusca-commit" group.
To post to this group, send email to [email protected]
To unsubscribe from this group, send email to 
[email protected]
For more options, visit this group at 
http://groups.google.com/group/lusca-commit?hl=en
-~----------~----~----~----~------~----~------~--~---

Reply via email to