On Fri, May 2, 2008 at 11:24 PM, Robert Hailey
<robert at freenetproject.org> wrote:
> On May 2, 2008, at 9:59 AM, j16sdiz at freenetproject.org wrote:
>
> Author: j16sdiz
> Date: 2008-05-02 14:59:50 +0000 (Fri, 02 May 2008)
> New Revision: 19683
>
> Modified:
>    trunk/freenet/src/freenet/store/BerkeleyDBFreenetStore.java
> Log:
> oomhook: lower database cache size
>
>
> Modified: trunk/freenet/src/freenet/store/BerkeleyDBFreenetStore.java
> ===================================================================
> --- trunk/freenet/src/freenet/store/BerkeleyDBFreenetStore.java 2008-05-02
> 14:59:29 UTC (rev 19682)
> +++ trunk/freenet/src/freenet/store/BerkeleyDBFreenetStore.java 2008-05-02
> 14:59:50 UTC (rev 19683)
> @@ -25,6 +25,7 @@
>  import com.sleepycat.je.DatabaseNotFoundException;
>  import com.sleepycat.je.Environment;
>  import com.sleepycat.je.EnvironmentConfig;
> +import com.sleepycat.je.EnvironmentMutableConfig;
>  import com.sleepycat.je.LockMode;
>  import com.sleepycat.je.OperationStatus;
>  import com.sleepycat.je.RunRecoveryException;
> @@ -2247,6 +2248,11 @@
>  keysFC.force(true);
>  if (lruFC != null)
>  lruFC.force(true);
> +
> + EnvironmentMutableConfig dbmc = environment.getMutableConfig();
> + long cacheSize = (long) (dbmc.getCacheSize() * .9); // we have 6
> databases, 0.9^6 = 0.53
> + dbmc.setCacheSize(cacheSize);
> + Logger.normal(this, "low memory, set db cache = " + cacheSize);
>  }
>
>
> What is the significance of 0.9^6=0.53? It seems to me if you are trying to
> half the memory usage, all the caches would have to be reduced by 0.5;
> otherwise the comment could be made a bit more clear.
>

Yes, I am trying to half the memory cache.
This cache is global, setting to 90% 6 times give 53% of original size.

> --
> Robert Hailey
>

Reply via email to