From c430f8b3da724d0a117eadd172b92179b9a0b5a9 Mon Sep 17 00:00:00 2001
From: Jean-Noel Rouvignac <jean-noel.rouvignac@forgerock.com>
Date: Fri, 21 Mar 2014 11:59:48 +0000
Subject: [PATCH] OPENDJ-1368 (CR-3232) Remove AttributeValue
---
opendj3-server-dev/src/server/org/opends/server/backends/jeb/VLVIndex.java | 449 +++++++++++++++-----------------------------------------
1 files changed, 120 insertions(+), 329 deletions(-)
diff --git a/opendj3-server-dev/src/server/org/opends/server/backends/jeb/VLVIndex.java b/opendj3-server-dev/src/server/org/opends/server/backends/jeb/VLVIndex.java
index cc8038e..1f90e1a 100644
--- a/opendj3-server-dev/src/server/org/opends/server/backends/jeb/VLVIndex.java
+++ b/opendj3-server-dev/src/server/org/opends/server/backends/jeb/VLVIndex.java
@@ -149,8 +149,7 @@
try
{
- this.filter =
- SearchFilter.createFilterFromString(config.getFilter());
+ this.filter = SearchFilter.createFilterFromString(config.getFilter());
}
catch(Exception e)
{
@@ -161,8 +160,7 @@
String[] sortAttrs = config.getSortOrder().split(" ");
SortKey[] sortKeys = new SortKey[sortAttrs.length];
- MatchingRule[] orderingRules =
- new MatchingRule[sortAttrs.length];
+ MatchingRule[] orderingRules = new MatchingRule[sortAttrs.length];
boolean[] ascending = new boolean[sortAttrs.length];
for(int i = 0; i < sortAttrs.length; i++)
{
@@ -666,53 +664,45 @@
ByteString[] values, AttributeType[] types) throws DatabaseException,
DirectoryException
{
- SortValuesSet sortValuesSet = null;
DatabaseEntry key = new DatabaseEntry();
- OperationStatus status;
- LockMode lockMode = LockMode.DEFAULT;
DatabaseEntry data = new DatabaseEntry();
+ key.setData(encodeKey(entryID, values, types));
+ return getSortValuesSet(txn, key, data, LockMode.DEFAULT);
+ }
- Cursor cursor = openCursor(txn, CursorConfig.READ_COMMITTED);
-
- try
+ private SortValuesSet getSortValuesSet(Transaction txn, DatabaseEntry key,
+ DatabaseEntry data, LockMode lockMode)
+ {
+ OperationStatus status = getSearchKeyRange(txn, key, data, lockMode);
+ if (status != OperationStatus.SUCCESS)
{
- key.setData(encodeKey(entryID, values, types));
- status = cursor.getSearchKeyRange(key, data,lockMode);
-
- if(status != OperationStatus.SUCCESS)
+ // There are no records in the database
+ if (logger.isTraceEnabled())
{
- // There are no records in the database
- if(logger.isTraceEnabled())
- {
- logger.trace("No sort values set exist in VLV vlvIndex %s. " +
- "Creating unbound set.", config.getName());
- }
- sortValuesSet = new SortValuesSet(this);
+ logger.trace("No sort values set exist in VLV vlvIndex %s. "
+ + "Creating unbound set.", config.getName());
}
- else
- {
- if(logger.isTraceEnabled())
- {
- StringBuilder searchKeyHex = new StringBuilder();
- StaticUtils.byteArrayToHexPlusAscii(searchKeyHex, key.getData(), 4);
- StringBuilder foundKeyHex = new StringBuilder();
- StaticUtils.byteArrayToHexPlusAscii(foundKeyHex, key.getData(), 4);
- logger.trace("Retrieved a sort values set in VLV vlvIndex " +
- "%s\nSearch Key:%s\nFound Key:%s\n",
- config.getName(),
- searchKeyHex,
- foundKeyHex);
- }
- sortValuesSet = new SortValuesSet(key.getData(), data.getData(),
- this);
- }
- }
- finally
- {
- cursor.close();
+ // this could not be found, so clean the key for later reuse
+ key.setData(new byte[0]);
+ return new SortValuesSet(this);
}
- return sortValuesSet;
+ if (logger.isTraceEnabled())
+ {
+ logSearchKeyResult(key);
+ }
+ return new SortValuesSet(key.getData(), data.getData(), this);
+ }
+
+ private void logSearchKeyResult(DatabaseEntry key)
+ {
+ StringBuilder searchKeyHex = new StringBuilder();
+ StaticUtils.byteArrayToHexPlusAscii(searchKeyHex, key.getData(), 4);
+ StringBuilder foundKeyHex = new StringBuilder();
+ StaticUtils.byteArrayToHexPlusAscii(foundKeyHex, key.getData(), 4);
+ logger.trace("Retrieved a sort values set in VLV vlvIndex %s\n" +
+ "Search Key:%s\nFound Key:%s\n",
+ config.getName(), searchKeyHex, foundKeyHex);
}
/**
@@ -736,7 +726,7 @@
DatabaseException, DirectoryException
{
SortValuesSet valuesSet = getSortValuesSet(txn, entryID, values, types);
- int pos = valuesSet.binarySearch(entryID, values, types);
+ int pos = valuesSet.binarySearch(entryID, values);
return pos >= 0;
}
@@ -746,68 +736,19 @@
ByteString[] values = getSortValues(entry);
AttributeType[] types = getSortTypes();
DatabaseEntry key = new DatabaseEntry();
- OperationStatus status;
- LockMode lockMode = LockMode.RMW;
DatabaseEntry data = new DatabaseEntry();
- Cursor cursor = openCursor(txn, CursorConfig.READ_COMMITTED);
- try
- {
- key.setData(encodeKey(entryID, values, types));
- status = cursor.getSearchKeyRange(key, data,lockMode);
- }
- finally
- {
- cursor.close();
- }
-
- SortValuesSet sortValuesSet;
- if(status != OperationStatus.SUCCESS)
- {
- // There are no records in the database
- if(logger.isTraceEnabled())
- {
- logger.trace("No sort values set exist in VLV vlvIndex %s. " +
- "Creating unbound set.", config.getName());
- }
- sortValuesSet = new SortValuesSet(this);
- key.setData(new byte[0]);
- }
- else
- {
- if(logger.isTraceEnabled())
- {
- StringBuilder searchKeyHex = new StringBuilder();
- StaticUtils.byteArrayToHexPlusAscii(searchKeyHex, key.getData(), 4);
- StringBuilder foundKeyHex = new StringBuilder();
- StaticUtils.byteArrayToHexPlusAscii(foundKeyHex, key.getData(), 4);
- logger.trace("Retrieved a sort values set in VLV vlvIndex " +
- "%s\nSearch Key:%s\nFound Key:%s\n",
- config.getName(),
- searchKeyHex,
- foundKeyHex);
- }
- sortValuesSet = new SortValuesSet(key.getData(), data.getData(),
- this);
- }
-
-
-
-
+ key.setData(encodeKey(entryID, values, types));
+ SortValuesSet sortValuesSet =
+ getSortValuesSet(txn, key, data, LockMode.RMW);
boolean success = sortValuesSet.add(entryID, values, types);
int newSize = sortValuesSet.size();
if(newSize >= sortedSetCapacity)
{
SortValuesSet splitSortValuesSet = sortValuesSet.split(newSize / 2);
- byte[] splitAfter = splitSortValuesSet.toDatabase();
- key.setData(splitSortValuesSet.getKeyBytes());
- data.setData(splitAfter);
- put(txn, key, data);
- byte[] after = sortValuesSet.toDatabase();
- key.setData(sortValuesSet.getKeyBytes());
- data.setData(after);
- put(txn, key, data);
+ put(txn, key, data, splitSortValuesSet); // splitAfter
+ put(txn, key, data, sortValuesSet); // after
if(logger.isTraceEnabled())
{
@@ -820,8 +761,7 @@
}
else
{
- byte[] after = sortValuesSet.toDatabase();
- data.setData(after);
+ data.setData(sortValuesSet.toDatabase()); // after
put(txn, key, data);
// TODO: What about phantoms?
}
@@ -834,6 +774,14 @@
return success;
}
+ private void put(Transaction txn, DatabaseEntry key, DatabaseEntry data,
+ SortValuesSet set) throws DirectoryException
+ {
+ key.setData(set.getKeyBytes());
+ data.setData(set.toDatabase());
+ put(txn, key, data);
+ }
+
/**
* Gets the types of the attribute values to sort.
*
@@ -845,8 +793,7 @@
AttributeType[] types = new AttributeType[sortKeys.length];
for (int i = 0; i < sortKeys.length; i++)
{
- SortKey sortKey = sortKeys[i];
- types[i] = sortKey.getAttributeType();
+ types[i] = sortKeys[i].getAttributeType();
}
return types;
}
@@ -857,38 +804,18 @@
ByteString[] values = getSortValues(entry);
AttributeType[] types = getSortTypes();
DatabaseEntry key = new DatabaseEntry();
- OperationStatus status;
- LockMode lockMode = LockMode.RMW;
DatabaseEntry data = new DatabaseEntry();
- Cursor cursor = openCursor(txn, CursorConfig.READ_COMMITTED);
-
- try
- {
- key.setData(encodeKey(entryID, values, types));
- status = cursor.getSearchKeyRange(key, data,lockMode);
- }
- finally
- {
- cursor.close();
- }
-
+ key.setData(encodeKey(entryID, values, types));
+ OperationStatus status = getSearchKeyRange(txn, key, data, LockMode.RMW);
if(status == OperationStatus.SUCCESS)
{
if(logger.isTraceEnabled())
{
- StringBuilder searchKeyHex = new StringBuilder();
- StaticUtils.byteArrayToHexPlusAscii(searchKeyHex, key.getData(), 4);
- StringBuilder foundKeyHex = new StringBuilder();
- StaticUtils.byteArrayToHexPlusAscii(foundKeyHex, key.getData(), 4);
- logger.trace("Retrieved a sort values set in VLV vlvIndex " +
- "%s\nSearch Key:%s\nFound Key:%s\n",
- config.getName(),
- searchKeyHex,
- foundKeyHex);
+ logSearchKeyResult(key);
}
SortValuesSet sortValuesSet = new SortValuesSet(key.getData(), data.getData(), this);
- boolean success = sortValuesSet.remove(entryID, values, types);
+ boolean success = sortValuesSet.remove(entryID, values);
byte[] after = sortValuesSet.toDatabase();
if(after == null)
@@ -911,6 +838,20 @@
return false;
}
+ private OperationStatus getSearchKeyRange(Transaction txn, DatabaseEntry key,
+ DatabaseEntry data, LockMode lockMode)
+ {
+ Cursor cursor = openCursor(txn, CursorConfig.READ_COMMITTED);
+ try
+ {
+ return cursor.getSearchKeyRange(key, data, lockMode);
+ }
+ finally
+ {
+ cursor.close();
+ }
+ }
+
/**
* Update the vlvIndex with the specified values to add and delete.
*
@@ -935,10 +876,7 @@
}
DatabaseEntry key = new DatabaseEntry();
- OperationStatus status;
- LockMode lockMode = LockMode.RMW;
DatabaseEntry data = new DatabaseEntry();
- SortValuesSet sortValuesSet;
Iterator<SortValues> aValues = null;
Iterator<SortValues> dValues = null;
SortValues av = null;
@@ -985,46 +923,7 @@
break;
}
- Cursor cursor = openCursor(txn, CursorConfig.READ_COMMITTED);
-
- try
- {
- status = cursor.getSearchKeyRange(key, data,lockMode);
- }
- finally
- {
- cursor.close();
- }
-
- if(status != OperationStatus.SUCCESS)
- {
- // There are no records in the database
- if(logger.isTraceEnabled())
- {
- logger.trace("No sort values set exist in VLV vlvIndex %s. " +
- "Creating unbound set.", config.getName());
- }
- sortValuesSet = new SortValuesSet(this);
- key.setData(new byte[0]);
- }
- else
- {
- if(logger.isTraceEnabled())
- {
- StringBuilder searchKeyHex = new StringBuilder();
- StaticUtils.byteArrayToHexPlusAscii(searchKeyHex, key.getData(), 4);
- StringBuilder foundKeyHex = new StringBuilder();
- StaticUtils.byteArrayToHexPlusAscii(foundKeyHex, key.getData(), 4);
- logger.trace("Retrieved a sort values set in VLV vlvIndex " +
- "%s\nSearch Key:%s\nFound Key:%s\n",
- config.getName(),
- searchKeyHex,
- foundKeyHex);
- }
- sortValuesSet = new SortValuesSet(key.getData(), data.getData(),
- this);
- }
-
+ final SortValuesSet sortValuesSet = getSortValuesSet(txn, data, data, LockMode.RMW);
int oldSize = sortValuesSet.size();
if(key.getData().length == 0)
{
@@ -1032,29 +931,13 @@
while(av != null)
{
sortValuesSet.add(av.getEntryID(), av.getValues(), av.getTypes());
- aValues.remove();
- if(aValues.hasNext())
- {
- av = aValues.next();
- }
- else
- {
- av = null;
- }
+ av = moveToNextSortValues(aValues);
}
while(dv != null)
{
- sortValuesSet.remove(dv.getEntryID(), dv.getValues(), dv.getTypes());
- dValues.remove();
- if(dValues.hasNext())
- {
- dv = dValues.next();
- }
- else
- {
- dv = null;
- }
+ sortValuesSet.remove(dv.getEntryID(), dv.getValues());
+ dv = moveToNextSortValues(dValues);
}
}
else
@@ -1064,29 +947,13 @@
while(av != null && av.compareTo(maxValues) <= 0)
{
sortValuesSet.add(av.getEntryID(), av.getValues(), av.getTypes());
- aValues.remove();
- if(aValues.hasNext())
- {
- av = aValues.next();
- }
- else
- {
- av = null;
- }
+ av = moveToNextSortValues(aValues);
}
while(dv != null && dv.compareTo(maxValues) <= 0)
{
- sortValuesSet.remove(dv.getEntryID(), dv.getValues(), dv.getTypes());
- dValues.remove();
- if(dValues.hasNext())
- {
- dv = dValues.next();
- }
- else
- {
- dv = null;
- }
+ sortValuesSet.remove(dv.getEntryID(), dv.getValues());
+ dv = moveToNextSortValues(dValues);
}
}
@@ -1094,14 +961,8 @@
if(newSize >= sortedSetCapacity)
{
SortValuesSet splitSortValuesSet = sortValuesSet.split(newSize / 2);
- byte[] splitAfter = splitSortValuesSet.toDatabase();
- key.setData(splitSortValuesSet.getKeyBytes());
- data.setData(splitAfter);
- put(txn, key, data);
- byte[] after = sortValuesSet.toDatabase();
- key.setData(sortValuesSet.getKeyBytes());
- data.setData(after);
- put(txn, key, data);
+ put(txn, key, data, splitSortValuesSet); // splitAfter
+ put(txn, key, data, sortValuesSet); // after
if(logger.isTraceEnabled())
{
@@ -1127,6 +988,16 @@
}
}
+ private SortValues moveToNextSortValues(Iterator<SortValues> sortValues)
+ {
+ sortValues.remove();
+ if (sortValues.hasNext())
+ {
+ return sortValues.next();
+ }
+ return null;
+ }
+
private byte[] encodeKey(SortValues sv) throws DirectoryException
{
return encodeKey(sv.getEntryID(), sv.getValues(), sv.getTypes());
@@ -1156,23 +1027,11 @@
StringBuilder debugBuilder)
throws DirectoryException, DatabaseException
{
- if(!trusted || rebuildRunning)
- {
- return null;
- }
- if(!searchOperation.getBaseDN().equals(baseDN))
- {
- return null;
- }
- if(!searchOperation.getScope().equals(scope))
- {
- return null;
- }
- if(!searchOperation.getFilter().equals(filter))
- {
- return null;
- }
- if(!sortControl.getSortOrder().equals(this.sortOrder))
+ if (!trusted || rebuildRunning
+ || !searchOperation.getBaseDN().equals(baseDN)
+ || !searchOperation.getScope().equals(scope)
+ || !searchOperation.getFilter().equals(filter)
+ || !sortControl.getSortOrder().equals(sortOrder))
{
return null;
}
@@ -1241,34 +1100,21 @@
int count = 1 + beforeCount + afterCount;
selectedIDs = new long[count];
- DatabaseEntry key = new DatabaseEntry();
- OperationStatus status;
- LockMode lockMode = LockMode.DEFAULT;
- DatabaseEntry data = new DatabaseEntry();
-
Cursor cursor = openCursor(txn, CursorConfig.READ_COMMITTED);
-
try
{
+ DatabaseEntry key = new DatabaseEntry();
+ DatabaseEntry data = new DatabaseEntry();
+ LockMode lockMode = LockMode.DEFAULT;
//Locate the set that contains the target entry.
int cursorCount = 0;
int selectedPos = 0;
- status = cursor.getFirst(key, data,lockMode);
+ OperationStatus status = cursor.getFirst(key, data, lockMode);
while(status == OperationStatus.SUCCESS)
{
if(logger.isTraceEnabled())
{
- StringBuilder searchKeyHex = new StringBuilder();
- StaticUtils.byteArrayToHexPlusAscii(searchKeyHex, key.getData(),
- 4);
- StringBuilder foundKeyHex = new StringBuilder();
- StaticUtils.byteArrayToHexPlusAscii(foundKeyHex, key.getData(),
- 4);
- logger.trace("Retrieved a sort values set in VLV " +
- "vlvIndex %s\nSearch Key:%s\nFound Key:%s\n",
- config.getName(),
- searchKeyHex,
- foundKeyHex);
+ logSearchKeyResult(key);
}
long[] IDs = SortValuesSet.getEncodedIDs(data.getData(), 0);
for(int i = startPos + selectedPos - cursorCount;
@@ -1313,14 +1159,12 @@
int includedAfterCount = 0;
LinkedList<EntryID> idList = new LinkedList<EntryID>();
DatabaseEntry key = new DatabaseEntry();
- OperationStatus status;
- LockMode lockMode = LockMode.DEFAULT;
DatabaseEntry data = new DatabaseEntry();
Cursor cursor = openCursor(txn, CursorConfig.READ_COMMITTED);
-
try
{
+ LockMode lockMode = LockMode.DEFAULT;
ByteSequence vBytes = vlvRequest.getGreaterThanOrEqualAssertion();
ByteStringBuilder keyBytes =
new ByteStringBuilder(vBytes.length() + 4);
@@ -1328,34 +1172,18 @@
vBytes.copyTo(keyBytes);
key.setData(keyBytes.getBackingArray(), 0, keyBytes.length());
- status = cursor.getSearchKeyRange(key, data, lockMode);
+ OperationStatus status = cursor.getSearchKeyRange(key, data, lockMode);
if(status == OperationStatus.SUCCESS)
{
if(logger.isTraceEnabled())
{
- StringBuilder searchKeyHex = new StringBuilder();
- StaticUtils.byteArrayToHexPlusAscii(searchKeyHex, key.getData(),
- 4);
- StringBuilder foundKeyHex = new StringBuilder();
- StaticUtils.byteArrayToHexPlusAscii(foundKeyHex, key.getData(),
- 4);
- logger.trace("Retrieved a sort values set in VLV " +
- "vlvIndex %s\nSearch Key:%s\nFound Key:%s\n",
- config.getName(),
- searchKeyHex,
- foundKeyHex);
+ logSearchKeyResult(key);
}
SortValuesSet sortValuesSet =
new SortValuesSet(key.getData(), data.getData(), this);
- ByteString[] assertionValue = new ByteString[] {
- vlvRequest.getGreaterThanOrEqualAssertion()
- };
- AttributeType[] assertionType = new AttributeType[] {
- sortOrder.getSortKeys()[0].getAttributeType()
- };
- int adjustedTargetOffset =
- sortValuesSet.binarySearch(-1, assertionValue, assertionType);
+ int adjustedTargetOffset = sortValuesSet.binarySearch(
+ -1, vlvRequest.getGreaterThanOrEqualAssertion());
if(adjustedTargetOffset < 0)
{
// For a negative return value r, the vlvIndex -(r+1) gives the
@@ -1379,7 +1207,6 @@
}
status = cursor.getPrev(key, data, lockMode);
-
if(status != OperationStatus.SUCCESS)
{
break;
@@ -1387,8 +1214,7 @@
if(includedBeforeCount < beforeCount)
{
- lastIDs =
- SortValuesSet.getEncodedIDs(data.getData(), 0);
+ lastIDs = SortValuesSet.getEncodedIDs(data.getData(), 0);
lastOffset = lastIDs.length - 1;
targetOffset += lastIDs.length;
}
@@ -1423,14 +1249,12 @@
}
status = cursor.getNext(key, data, lockMode);
-
if(status != OperationStatus.SUCCESS)
{
break;
}
- lastIDs =
- SortValuesSet.getEncodedIDs(data.getData(), 0);
+ lastIDs = SortValuesSet.getEncodedIDs(data.getData(), 0);
lastOffset = 0;
afterIDCount += lastIDs.length;
}
@@ -1465,28 +1289,18 @@
LinkedList<long[]> idSets = new LinkedList<long[]>();
int currentCount = 0;
DatabaseEntry key = new DatabaseEntry();
- OperationStatus status;
- LockMode lockMode = LockMode.RMW;
DatabaseEntry data = new DatabaseEntry();
Cursor cursor = openCursor(txn, CursorConfig.READ_COMMITTED);
-
try
{
- status = cursor.getFirst(key, data, lockMode);
+ LockMode lockMode = LockMode.RMW;
+ OperationStatus status = cursor.getFirst(key, data, lockMode);
while(status == OperationStatus.SUCCESS)
{
if(logger.isTraceEnabled())
{
- StringBuilder searchKeyHex = new StringBuilder();
- StaticUtils.byteArrayToHexPlusAscii(searchKeyHex, key.getData(), 4);
- StringBuilder foundKeyHex = new StringBuilder();
- StaticUtils.byteArrayToHexPlusAscii(foundKeyHex, key.getData(), 4);
- logger.trace("Retrieved a sort values set in VLV vlvIndex " +
- "%s\nSearch Key:%s\nFound Key:%s\n",
- config.getName(),
- searchKeyHex,
- foundKeyHex);
+ logSearchKeyResult(key);
}
long[] ids = SortValuesSet.getEncodedIDs(data.getData(), 0);
idSets.add(ids);
@@ -1563,12 +1377,9 @@
for (int i=0; i < sortKeys.length; i++)
{
SortKey sortKey = sortKeys[i];
- AttributeType attrType = sortKey.getAttributeType();
- List<Attribute> attrList = entry.getAttribute(attrType);
+ List<Attribute> attrList = entry.getAttribute(sortKey.getAttributeType());
if (attrList != null)
{
- ByteString sortValue = null;
-
// There may be multiple versions of this attribute in the target entry
// (e.g., with different sets of options), and it may also be a
// multivalued attribute. In that case, we need to find the value that
@@ -1576,15 +1387,12 @@
// in ascending order, we want to find the lowest value; for sorting in
// descending order, we want to find the highest value). This is
// handled by the SortKey.compareValues method.
+ ByteString sortValue = null;
for (Attribute a : attrList)
{
for (ByteString v : a)
{
- if (sortValue == null)
- {
- sortValue = v;
- }
- else if (sortKey.compareValues(v, sortValue) < 0)
+ if (sortValue == null || sortKey.compareValues(v, sortValue) < 0)
{
sortValue = v;
}
@@ -1647,8 +1455,7 @@
* @return The sort values represented by the key bytes.
* @throws DirectoryException If a Directory Server error occurs.
*/
- SortValues decodeKey(byte[] keyBytes)
- throws DirectoryException
+ SortValues decodeKey(byte[] keyBytes) throws DirectoryException
{
if(keyBytes == null || keyBytes.length == 0)
{
@@ -1685,16 +1492,8 @@
vBytesPos += valueLength;
}
- // FIXME: Should pos+offset method for decoding IDs be added to
- // JebFormat?
- long v = 0;
- for (int i = vBytesPos; i < keyBytes.length; i++)
- {
- v <<= 8;
- v |= (keyBytes[i] & 0xFF);
- }
-
- return new SortValues(new EntryID(v), attributeValues, sortOrder);
+ final long id = JebFormat.toLong(keyBytes, vBytesPos, keyBytes.length);
+ return new SortValues(new EntryID(id), attributeValues, sortOrder);
}
/**
@@ -1732,8 +1531,7 @@
{
try
{
- this.filter =
- SearchFilter.createFilterFromString(cfg.getFilter());
+ this.filter = SearchFilter.createFilterFromString(cfg.getFilter());
}
catch(Exception e)
{
@@ -1746,8 +1544,7 @@
String[] sortAttrs = cfg.getSortOrder().split(" ");
SortKey[] sortKeys = new SortKey[sortAttrs.length];
- MatchingRule[] orderingRules =
- new MatchingRule[sortAttrs.length];
+ MatchingRule[] orderingRules = new MatchingRule[sortAttrs.length];
boolean[] ascending = new boolean[sortAttrs.length];
for(int i = 0; i < sortAttrs.length; i++)
{
@@ -1815,15 +1612,13 @@
}
// Update sort set capacity only if changed.
- if(config.getMaxBlockSize() !=
- cfg.getMaxBlockSize())
+ if (config.getMaxBlockSize() != cfg.getMaxBlockSize())
{
this.sortedSetCapacity = cfg.getMaxBlockSize();
// Require admin action only if the new capacity is larger. Otherwise,
// we will lazyly update the sorted sets.
- if(config.getMaxBlockSize() <
- cfg.getMaxBlockSize())
+ if (config.getMaxBlockSize() < cfg.getMaxBlockSize())
{
adminActionRequired = true;
}
@@ -1834,8 +1629,7 @@
{
try
{
- this.filter =
- SearchFilter.createFilterFromString(cfg.getFilter());
+ this.filter = SearchFilter.createFilterFromString(cfg.getFilter());
adminActionRequired = true;
}
catch(Exception e)
@@ -1852,13 +1646,11 @@
}
// Update the sort order only if changed.
- if(!config.getSortOrder().equals(
- cfg.getSortOrder()))
+ if (!config.getSortOrder().equals(cfg.getSortOrder()))
{
String[] sortAttrs = cfg.getSortOrder().split(" ");
SortKey[] sortKeys = new SortKey[sortAttrs.length];
- MatchingRule[] orderingRules =
- new MatchingRule[sortAttrs.length];
+ MatchingRule[] orderingRules = new MatchingRule[sortAttrs.length];
boolean[] ascending = new boolean[sortAttrs.length];
for(int i = 0; i < sortAttrs.length; i++)
{
@@ -1935,8 +1727,7 @@
if(adminActionRequired)
{
trusted = false;
- LocalizableMessage message = NOTE_JEB_INDEX_ADD_REQUIRES_REBUILD.get(name);
- messages.add(message);
+ messages.add(NOTE_JEB_INDEX_ADD_REQUIRES_REBUILD.get(name));
try
{
state.putIndexTrustState(null, this, false);
--
Gitblit v1.10.0