summaryrefslogtreecommitdiff
path: root/java/src/Freeze/Index.java
diff options
context:
space:
mode:
authorBernard Normier <bernard@zeroc.com>2006-11-28 19:59:45 +0000
committerBernard Normier <bernard@zeroc.com>2006-11-28 19:59:45 +0000
commit4a232e37f452fb9c2359e4b6d54c15f926c4aa1f (patch)
tree81dd7fa74fdc9eef0e5524d497811d0a18b340ad /java/src/Freeze/Index.java
parentfix for bug 1589: compatibility issue with VS2005 (diff)
downloadice-4a232e37f452fb9c2359e4b6d54c15f926c4aa1f.tar.bz2
ice-4a232e37f452fb9c2359e4b6d54c15f926c4aa1f.tar.xz
ice-4a232e37f452fb9c2359e4b6d54c15f926c4aa1f.zip
Optimizations from bug #1513
Diffstat (limited to 'java/src/Freeze/Index.java')
-rw-r--r--java/src/Freeze/Index.java13
1 files changed, 13 insertions, 0 deletions
diff --git a/java/src/Freeze/Index.java b/java/src/Freeze/Index.java
index ac1b61a4793..6acd7d1a023 100644
--- a/java/src/Freeze/Index.java
+++ b/java/src/Freeze/Index.java
@@ -72,6 +72,12 @@ public abstract class Index implements com.sleepycat.db.SecondaryKeyCreator
{
com.sleepycat.db.DatabaseEntry key = new com.sleepycat.db.DatabaseEntry(k);
+ // When we have a custom-comparison function, Berkeley DB returns
+ // the key on-disk (when it finds one). We disable this behavior:
+ // (ref Oracle SR 5925672.992)
+ //
+ key.setPartial(true);
+
com.sleepycat.db.DatabaseEntry pkey = new com.sleepycat.db.DatabaseEntry();
com.sleepycat.db.DatabaseEntry value = new com.sleepycat.db.DatabaseEntry();
//
@@ -196,6 +202,13 @@ public abstract class Index implements com.sleepycat.db.SecondaryKeyCreator
try
{
com.sleepycat.db.DatabaseEntry key = new com.sleepycat.db.DatabaseEntry(k);
+
+ // When we have a custom-comparison function, Berkeley DB returns
+ // the key on-disk (when it finds one). We disable this behavior:
+ // (ref Oracle SR 5925672.992)
+ //
+ key.setPartial(true);
+
com.sleepycat.db.DatabaseEntry value = new com.sleepycat.db.DatabaseEntry();
//
// dlen is 0, so we should not retrieve any value