From 28d0b3c1737ba38759f84ee9fdbb769f903dbf0e Mon Sep 17 00:00:00 2001 From: "Brian S. O'Neill" Date: Sat, 8 Jan 2011 01:18:58 +0000 Subject: Add option to disable reverse splits. --- .../carbonado/repo/sleepycat/BDBRepositoryBuilder.java | 13 +++++++++++++ 1 file changed, 13 insertions(+) diff --git a/src/main/java/com/amazon/carbonado/repo/sleepycat/BDBRepositoryBuilder.java b/src/main/java/com/amazon/carbonado/repo/sleepycat/BDBRepositoryBuilder.java index 562572f..7605b30 100644 --- a/src/main/java/com/amazon/carbonado/repo/sleepycat/BDBRepositoryBuilder.java +++ b/src/main/java/com/amazon/carbonado/repo/sleepycat/BDBRepositoryBuilder.java @@ -98,6 +98,7 @@ public final class BDBRepositoryBuilder extends AbstractRepositoryBuilder { private boolean mTxnNoSync; private boolean mTxnWriteNoSync; private Boolean mDatabasesTransactional = null; + private boolean mReverseSplitOff; private Map, Integer> mDatabasePageSizes; private boolean mPrivate; private boolean mMultiversion; @@ -570,6 +571,18 @@ public final class BDBRepositoryBuilder extends AbstractRepositoryBuilder { return mDatabasesTransactional; } + /** + * Pass true to disable reverse split of B-tree nodes to reduce deadlocks. + * This setting has no effect for BDB-JE. + */ + public void setReverseSplitOff(boolean off) { + mReverseSplitOff = off; + } + + public boolean isReverseSplitOff() { + return mReverseSplitOff; + } + /** * Sets the desired page size for a given type. If not specified, the page * size applies to all types. -- cgit v1.2.3