From a42d8edc14f3ff2eb4dd85f1483490d8137fdef2 Mon Sep 17 00:00:00 2001
From: dugan <dugan@localhost>
Date: Fri, 16 May 2008 14:18:26 +0000
Subject: [PATCH] Fixes to improve performance using default JVM ergonomics:
---
opendj-sdk/opends/src/server/org/opends/server/backends/jeb/importLDIF/IntegerImportIDSet.java | 21 +++++++++++++++++++++
1 files changed, 21 insertions(+), 0 deletions(-)
diff --git a/opendj-sdk/opends/src/server/org/opends/server/backends/jeb/importLDIF/IntegerImportIDSet.java b/opendj-sdk/opends/src/server/org/opends/server/backends/jeb/importLDIF/IntegerImportIDSet.java
index f553d07..8b5eb0a 100644
--- a/opendj-sdk/opends/src/server/org/opends/server/backends/jeb/importLDIF/IntegerImportIDSet.java
+++ b/opendj-sdk/opends/src/server/org/opends/server/backends/jeb/importLDIF/IntegerImportIDSet.java
@@ -35,6 +35,10 @@
*/
public class IntegerImportIDSet implements ImportIDSet {
+
+ //Indicate if a undefined import set has been written to the index DB.
+ private boolean dirty = true;
+
//Gleamed from JHAT. The same for 32/64 bit.
private final static int THIS_OVERHEAD = 25;
@@ -93,11 +97,25 @@
count = 0;
isDefined = true;
undefinedSize = 0;
+ dirty = true;
}
/**
* {@inheritDoc}
*/
+ public void setDirty(boolean dirty) {
+ this.dirty = dirty;
+ }
+
+ /**
+ * {@inheritDoc}
+ */
+ public boolean isDirty() {
+ return dirty;
+ }
+ /**
+ * {@inheritDoc}
+ */
public boolean isDefined() {
return isDefined;
}
@@ -239,9 +257,11 @@
if(dbUndefined) {
isDefined=false;
importIdSet.setUndefined();
+ undefinedSize = Long.MAX_VALUE;
} else if(!importIdSet.isDefined()) {
isDefined=false;
incrLimitCount=true;
+ undefinedSize = Long.MAX_VALUE;
} else {
array = JebFormat.intArrayFromDatabaseBytes(dBbytes);
if(array.length + importIdSet.size() > limit) {
@@ -249,6 +269,7 @@
incrLimitCount=true;
count = 0;
importIdSet.setUndefined();
+ undefinedSize = Long.MAX_VALUE;
} else {
count = array.length;
addAll((IntegerImportIDSet) importIdSet);
--
Gitblit v1.10.0