#50472: Effectiveness of MDRCache improved.
1.1 --- a/mdr/src/org/netbeans/mdr/persistence/btreeimpl/btreestorage/BtreeDatabase.java Tue Oct 26 09:30:15 2004 +0000
1.2 +++ b/mdr/src/org/netbeans/mdr/persistence/btreeimpl/btreestorage/BtreeDatabase.java Thu Oct 28 15:14:46 2004 +0000
1.3 @@ -70,7 +70,7 @@
1.4 /* tuning parameters explained above */
1.5 static final int PAGE_SIZE = 2048;
1.6 static final int FILE_CACHE_SIZE = 128;
1.7 - static final int MDR_CACHE_SIZE = 2048;
1.8 + static final int MDR_CACHE_SIZE = 1024;
1.9 static final int MDR_CACHE_THRESHHOLD = 1000;
1.10
1.11 /* number of times database has been modified */
2.1 --- a/mdr/src/org/netbeans/mdr/persistence/btreeimpl/btreestorage/MDRCache.java Tue Oct 26 09:30:15 2004 +0000
2.2 +++ b/mdr/src/org/netbeans/mdr/persistence/btreeimpl/btreestorage/MDRCache.java Thu Oct 28 15:14:46 2004 +0000
2.3 @@ -132,21 +132,22 @@
2.4 }
2.5
2.6 public Object put(Object key, Object value) {
2.7 - inner[cursor] = value;
2.8 - cursor++;
2.9 - if (size < inner.length) {
2.10 - size++;
2.11 - }
2.12 - if (cursor >= size) {
2.13 - cursor = 0;
2.14 + if (value != inner[cursor]) {
2.15 + cursor++;
2.16 + if (size < inner.length) {
2.17 + size++;
2.18 + }
2.19 + if (cursor >= inner.length) {
2.20 + cursor = 0;
2.21 + }
2.22 + inner[cursor] = value;
2.23 }
2.24 return null;
2.25 }
2.26
2.27 public void clear() {
2.28 Arrays.fill(inner, null);
2.29 - size = 0;
2.30 - cursor = 0;
2.31 + size = cursor = 0;
2.32 }
2.33
2.34 public int size() {