Author: toad
Date: 2008-08-21 12:42:03 +0000 (Thu, 21 Aug 2008)
New Revision: 22072

Modified:
   branches/db4o/freenet/src/freenet/client/async/InsertCompressor.java
Log:
Don't do a native query here. Metadata related to native queries appears to be 
a fairly substantial amount of memory, so only use them on startup.


Modified: branches/db4o/freenet/src/freenet/client/async/InsertCompressor.java
===================================================================
--- branches/db4o/freenet/src/freenet/client/async/InsertCompressor.java        
2008-08-21 12:38:08 UTC (rev 22071)
+++ branches/db4o/freenet/src/freenet/client/async/InsertCompressor.java        
2008-08-21 12:42:03 UTC (rev 22072)
@@ -4,7 +4,7 @@

 import com.db4o.ObjectContainer;
 import com.db4o.ObjectSet;
-import com.db4o.query.Predicate;
+import com.db4o.query.Query;

 import freenet.client.InsertException;
 import freenet.keys.NodeCHK;
@@ -229,12 +229,10 @@

        public static void load(ObjectContainer container, ClientContext 
context) {
                final long handle = context.nodeDBHandle;
-               ObjectSet<InsertCompressor> results = container.query(new 
Predicate<InsertCompressor>() {
-                       public boolean match(InsertCompressor comp) {
-                               if(comp.nodeDBHandle == handle) return true;
-                               return false;
-                       }
-               });
+               Query query = container.query();
+               query.constrain(InsertCompressor.class);
+               query.descend("nodeDBHandle").constrain(handle);
+               ObjectSet<InsertCompressor> results = query.execute();
                while(results.hasNext()) {
                        InsertCompressor comp = results.next();
                        if(!container.ext().isActive(comp)) {


Reply via email to