You are viewing a plain text version of this content. The canonical link for it is here.
Posted to oak-commits@jackrabbit.apache.org by th...@apache.org on 2015/09/10 14:54:50 UTC

svn commit: r1702240 - in /jackrabbit/oak/trunk/oak-core/src/main/java/org/apache/jackrabbit/oak: cache/CacheLIRS.java plugins/blob/datastore/DataStoreBlobStore.java plugins/segment/SegmentTracker.java plugins/segment/StringCache.java

Author: thomasm
Date: Thu Sep 10 12:54:49 2015
New Revision: 1702240

URL: http://svn.apache.org/r1702240
Log:
OAK-3158 AE when specifiying 2G cache for FileStore

Modified:
    jackrabbit/oak/trunk/oak-core/src/main/java/org/apache/jackrabbit/oak/cache/CacheLIRS.java
    jackrabbit/oak/trunk/oak-core/src/main/java/org/apache/jackrabbit/oak/plugins/blob/datastore/DataStoreBlobStore.java
    jackrabbit/oak/trunk/oak-core/src/main/java/org/apache/jackrabbit/oak/plugins/segment/SegmentTracker.java
    jackrabbit/oak/trunk/oak-core/src/main/java/org/apache/jackrabbit/oak/plugins/segment/StringCache.java

Modified: jackrabbit/oak/trunk/oak-core/src/main/java/org/apache/jackrabbit/oak/cache/CacheLIRS.java
URL: http://svn.apache.org/viewvc/jackrabbit/oak/trunk/oak-core/src/main/java/org/apache/jackrabbit/oak/cache/CacheLIRS.java?rev=1702240&r1=1702239&r2=1702240&view=diff
==============================================================================
--- jackrabbit/oak/trunk/oak-core/src/main/java/org/apache/jackrabbit/oak/cache/CacheLIRS.java (original)
+++ jackrabbit/oak/trunk/oak-core/src/main/java/org/apache/jackrabbit/oak/cache/CacheLIRS.java Thu Sep 10 12:54:49 2015
@@ -1527,7 +1527,7 @@ public class CacheLIRS<K, V> implements
             return this;
         }
 
-        public Builder<K, V> maximumSize(int maxSize) {
+        public Builder<K, V> maximumSize(long maxSize) {
             this.maxWeight = maxSize;
             this.averageWeight = 1;
             return this;

Modified: jackrabbit/oak/trunk/oak-core/src/main/java/org/apache/jackrabbit/oak/plugins/blob/datastore/DataStoreBlobStore.java
URL: http://svn.apache.org/viewvc/jackrabbit/oak/trunk/oak-core/src/main/java/org/apache/jackrabbit/oak/plugins/blob/datastore/DataStoreBlobStore.java?rev=1702240&r1=1702239&r2=1702240&view=diff
==============================================================================
--- jackrabbit/oak/trunk/oak-core/src/main/java/org/apache/jackrabbit/oak/plugins/blob/datastore/DataStoreBlobStore.java (original)
+++ jackrabbit/oak/trunk/oak-core/src/main/java/org/apache/jackrabbit/oak/plugins/blob/datastore/DataStoreBlobStore.java Thu Sep 10 12:54:49 2015
@@ -109,7 +109,7 @@ public class DataStoreBlobStore implemen
 
         this.cache = CacheLIRS.<String, byte[]>newBuilder()
                 .module("DataStoreBlobStore")
-                .maximumWeight(cacheSizeInMB * FileUtils.ONE_MB)
+                .maximumWeight((long) cacheSizeInMB * FileUtils.ONE_MB)
                 .weigher(new Weigher<String, byte[]>() {
                     @Override
                     public int weigh(@Nonnull String key, @Nonnull byte[] value) {

Modified: jackrabbit/oak/trunk/oak-core/src/main/java/org/apache/jackrabbit/oak/plugins/segment/SegmentTracker.java
URL: http://svn.apache.org/viewvc/jackrabbit/oak/trunk/oak-core/src/main/java/org/apache/jackrabbit/oak/plugins/segment/SegmentTracker.java?rev=1702240&r1=1702239&r2=1702240&view=diff
==============================================================================
--- jackrabbit/oak/trunk/oak-core/src/main/java/org/apache/jackrabbit/oak/plugins/segment/SegmentTracker.java (original)
+++ jackrabbit/oak/trunk/oak-core/src/main/java/org/apache/jackrabbit/oak/plugins/segment/SegmentTracker.java Thu Sep 10 12:54:49 2015
@@ -120,13 +120,12 @@ public class SegmentTracker {
         if (DISABLE_STRING_CACHE) {
             c = null;
         } else {
-            int stringCacheSize = (int) Math.min(Integer.MAX_VALUE, cacheSizeMB * MB);
-            c = new StringCache(stringCacheSize);
+            c = new StringCache((long) cacheSizeMB * MB);
         }
         stringCache = c;
         segmentCache = CacheLIRS.<SegmentId, Segment>newBuilder()
             .module("SegmentTracker")
-            .maximumSize((int) Math.min(Integer.MAX_VALUE, cacheSizeMB * MB))
+            .maximumWeight((long) cacheSizeMB * MB)
             .averageWeight(Segment.MAX_SEGMENT_SIZE/2)
             .evictionCallback(new EvictionCallback<SegmentId, Segment>() {
                 @Override

Modified: jackrabbit/oak/trunk/oak-core/src/main/java/org/apache/jackrabbit/oak/plugins/segment/StringCache.java
URL: http://svn.apache.org/viewvc/jackrabbit/oak/trunk/oak-core/src/main/java/org/apache/jackrabbit/oak/plugins/segment/StringCache.java?rev=1702240&r1=1702239&r2=1702240&view=diff
==============================================================================
--- jackrabbit/oak/trunk/oak-core/src/main/java/org/apache/jackrabbit/oak/plugins/segment/StringCache.java (original)
+++ jackrabbit/oak/trunk/oak-core/src/main/java/org/apache/jackrabbit/oak/plugins/segment/StringCache.java Thu Sep 10 12:54:49 2015
@@ -48,10 +48,10 @@ public class StringCache {
      *
      * @param maxSize the maximum memory in bytes.
      */
-    StringCache(int maxSize) {
+    StringCache(long maxSize) {
         cache = CacheLIRS.<StringCacheEntry, String>newBuilder()
                 .module("StringCache")
-                .maximumSize(maxSize)
+                .maximumWeight(maxSize)
                 .averageWeight(100)
                 .build();
     }