Author: crossley
Date: Thu Aug 21 22:45:54 2008
New Revision: 687951

URL: http://svn.apache.org/viewvc?rev=687951&view=rev
Log:
For the "Object Stores" section, synchronise comments and attributes with 
cocoon-2.1 xconf. Not yet compared default values.

Modified:
    
forrest/branches/update_cocoon_2.1.12-dev/main/webapp/WEB-INF/xconf/forrest-core.xconf

Modified: 
forrest/branches/update_cocoon_2.1.12-dev/main/webapp/WEB-INF/xconf/forrest-core.xconf
URL: 
http://svn.apache.org/viewvc/forrest/branches/update_cocoon_2.1.12-dev/main/webapp/WEB-INF/xconf/forrest-core.xconf?rev=687951&r1=687950&r2=687951&view=diff
==============================================================================
--- 
forrest/branches/update_cocoon_2.1.12-dev/main/webapp/WEB-INF/xconf/forrest-core.xconf
 (original)
+++ 
forrest/branches/update_cocoon_2.1.12-dev/main/webapp/WEB-INF/xconf/forrest-core.xconf
 Thu Aug 21 22:45:54 2008
@@ -508,62 +508,109 @@
 
   <!--+
       | Transient Store: holds objects that don't have to survive shutdown
+      |
+      | Common configuration parameters:
+      | maxobjects: Indicates how many objects will be held in the cache.
+      |    When the number of maxobjects has been reached. The last object
+      |    in the cache will be thrown out.
       +-->
   <transient-store logger="core.store.transient">
-
-     <!--+
-         | Indicates how many objects will be hold in the cache.
-         | When the number of maxobjects has been reached. The last object
-         | in the cache will be thrown out.
-         +-->
-     <parameter name="maxobjects" value="100"/>
-
-     <!-- Turns swapping of the objects into persistent cache on and off. -->
-     <parameter name="use-persistent-cache" value="false"/>
+    <parameter name="maxobjects" value="100"/>
   </transient-store>
 
   <!--+
-      | Transient Store: holds objects that don't have to survive shutdown
+      | Store: generic store. The default implementation is an in-memory store
+      | backed by a disk store (based on EHCache). This forms a two-stage
+      | cache composed of a fast in-memory MRU front-end and a persistent
+      | back-end which stores the less-used objects.
       |
       | Common configuration parameters:
       | maxobjects: Indicates how many objects will be held in the cache.
       |    When the number of maxobjects has been reached. The last object
       |    in the cache will be thrown out.
       +-->
-   <store logger="core.store">
-     <parameter name="maxobjects" value="1000"/>
-     <parameter name="use-cache-directory" value="true"/>
-   </store>
-   
+  <store logger="core.store">
+    <parameter name="maxobjects" value="1000"/>
+    <parameter name="use-cache-directory" value="true"/>
+  </store>
+
   <!--+
       | Store Janitor: the store garbage collector and memory usage controller.
       |
-      | Be careful with the heapsize and freememory parameters. Wrong values
-      | can cause high cpu usage. Example configuration:
+      | WARNING: Be careful with the heapsize and freememory parameters.
+      |           Wrong values can cause high cpu usage.
+      |
+      | Example configuration:
       | Jvm settings:
       |    -Xmx200000000
       | store-janitor settings:
       |    <parameter name="freememory" value="5000000"/>
-      |    <parameter name="heapsize" value="150000000"/>
+      |    <parameter name="heapsize" value="196000000"/>
       |
       | It is recommended to have heapsize equal to -Xmx, especially on Sun's
       | JVM which are unable to shrink its heap once it grows above minimum.
       | Freememory should be greater than amount of memory necessary for normal
       | application operation.
+      | BUT: The heap size of the memory of the JVM is a little bit less than
+      |      the value you specify for -Xmx, so you have to set the heapsize
+      |      for the store janitor to a value which is lower (2% less seems
+      |      to be a working value).
       +-->
   <store-janitor logger="core.store.janitor">
-     <!-- How much free memory shall be available in the jvm -->
-     <parameter name="freememory" value="1000000"/>
-     <!-- Indicates the limit of the jvm memory consumption. The default max
-          heapsize for Sun's JVM is 64Mb -->
-     <parameter name="heapsize" value="67108864"/>
-     <!-- How often shall the cleanup thread check memory -->
-     <parameter name="cleanupthreadinterval" value="10"/>
-     <!-- Indicates the thread priority of the cleanup thread -->
-     <parameter name="threadpriority" value="5"/>
-     <!-- How much percent of the elements of each registered Store
-          shall be removed when low on memory. Default 10% -->
-     <parameter name="percent_to_free" value="10"/>
+    <!--+
+        | How much free memory shall be available in the jvm?
+        | If not specified, defaults to 1Mb.
+        +-->
+    <parameter name="freememory" value="1000000"/>
+    <!--+
+        | How much memory at max jvm can consume?
+        | The default max heapsize for Sun's JVM is (almost) 64Mb,
+        | can be increased by specifying -Xmx command line parameter.
+        | If not specified, defaults to 66600000 bytes.
+        +-->
+    <parameter name="heapsize" value="67108864"/>
+    <!--+
+        | How often shall the cleanup thread check memory?
+        | If not specified, defaults to 10 seconds.
+        +-->
+    <parameter name="cleanupthreadinterval" value="10"/>
+    <!--+
+        | Experimental adaptive algorithm for cleanup interval
+    <parameter name="adaptivethreadinterval" value="true"/>
+        +-->
+    <!--+
+        | What percent of the store elements shall be dropped on low memory?
+        | If not specified, defaults to 10%
+        +-->
+    <parameter name="percent_to_free" value="10"/>
+    <!--+
+        | Shall garbage collector be invoked on low memory?
+        | If not specified, defaults to false.
+        +-->
+    <parameter name="invokegc" value="false"/>
+    <!--+
+        | Algorithm describing how to clean caches in low memory situations.
+        |   round-robin: The registered caches are cycled through,
+        |                and each time there is a low memory situation one
+        |                of the registered caches has objects freed from it.
+        |   all-stores:  All registered stores have objects removed from
+        |                them each time there is a low memory situation.
+        | If not specified, defaults to 'round-robin'.
+        +-->
+    <parameter name="freeingalgorithm" value="round-robin"/>
+    <!--+
+        | Name of the thread pool to use.
+        | If not specified, defaults to 'daemon'.
+        +-->
+    <parameter name="thread-pool" value="daemon"/>
+
+    <!--+
+        | What should be the priority of the cleanup thread?
+        | This parameter is used only by older implementation of the janitor.
+        | New implementation uses centrally configured thread pool (see
+        | thread-pools element below).
+    <parameter name="threadpriority" value="5"/>
+        +-->
   </store-janitor>
 
 <!-- ========================= Protocol Handlers =========================== 
-->