Author: tolusha
Date: 2011-02-10 08:39:51 -0500 (Thu, 10 Feb 2011)
New Revision: 3959
Modified:
jcr/trunk/exo.jcr.component.core/src/main/java/org/exoplatform/services/jcr/config/QueryHandlerParams.java
jcr/trunk/exo.jcr.component.core/src/main/java/org/exoplatform/services/jcr/impl/core/query/SearchIndexConfigurationHelper.java
jcr/trunk/exo.jcr.component.core/src/main/java/org/exoplatform/services/jcr/impl/core/query/lucene/MultiIndex.java
jcr/trunk/exo.jcr.component.core/src/main/java/org/exoplatform/services/jcr/impl/core/query/lucene/SearchIndex.java
Log:
EXOJCR-1104: add option for disabling rdbms indexing
Modified:
jcr/trunk/exo.jcr.component.core/src/main/java/org/exoplatform/services/jcr/config/QueryHandlerParams.java
===================================================================
---
jcr/trunk/exo.jcr.component.core/src/main/java/org/exoplatform/services/jcr/config/QueryHandlerParams.java 2011-02-10
10:04:24 UTC (rev 3958)
+++
jcr/trunk/exo.jcr.component.core/src/main/java/org/exoplatform/services/jcr/config/QueryHandlerParams.java 2011-02-10
13:39:51 UTC (rev 3959)
@@ -110,4 +110,6 @@
public static final String PARAM_CHANGES_FILTER_CLASS =
"changesfilter-class";
public static final String PARAM_REINDEXING_PAGE_SIZE =
"reindexing-page-size";
+
+ public static final String PARAM_RDBMS_REINDEXING = "rdbms-reindexing";
}
Modified:
jcr/trunk/exo.jcr.component.core/src/main/java/org/exoplatform/services/jcr/impl/core/query/SearchIndexConfigurationHelper.java
===================================================================
---
jcr/trunk/exo.jcr.component.core/src/main/java/org/exoplatform/services/jcr/impl/core/query/SearchIndexConfigurationHelper.java 2011-02-10
10:04:24 UTC (rev 3958)
+++
jcr/trunk/exo.jcr.component.core/src/main/java/org/exoplatform/services/jcr/impl/core/query/SearchIndexConfigurationHelper.java 2011-02-10
13:39:51 UTC (rev 3959)
@@ -190,5 +190,9 @@
{
searchIndex.setReindexingPageSize(StringNumberParser.parseNumber(value).intValue());
}
+ else if (QueryHandlerParams.PARAM_RDBMS_REINDEXING.equals(name))
+ {
+ searchIndex.setRDBMSReindexing(Boolean.parseBoolean(value));
+ }
}
}
Modified:
jcr/trunk/exo.jcr.component.core/src/main/java/org/exoplatform/services/jcr/impl/core/query/lucene/MultiIndex.java
===================================================================
---
jcr/trunk/exo.jcr.component.core/src/main/java/org/exoplatform/services/jcr/impl/core/query/lucene/MultiIndex.java 2011-02-10
10:04:24 UTC (rev 3958)
+++
jcr/trunk/exo.jcr.component.core/src/main/java/org/exoplatform/services/jcr/impl/core/query/lucene/MultiIndex.java 2011-02-10
13:39:51 UTC (rev 3959)
@@ -434,12 +434,12 @@
long count;
- // check if we have deal with RDBMS reindexing mechanism
- Indexable indexableComponent =
(Indexable)handler.getContext().getContainer().getComponent(Indexable.class);
- if (indexableComponent != null &&
indexableComponent.isPagingSupport())
+ // check if we have deal with RDBMS indexing mechanism
+ Indexable rdbmsIndexableComponent =
(Indexable)handler.getContext().getContainer().getComponent(Indexable.class);
+ if (handler.isRDBMSReindexing() && rdbmsIndexableComponent != null
&& rdbmsIndexableComponent.isPagingSupport())
{
count =
-
createIndex(indexableComponent.getNodeDataIndexingIterator(handler.getReindexingPageSize()),
+
createIndex(rdbmsIndexableComponent.getNodeDataIndexingIterator(handler.getReindexingPageSize()),
indexingTree.getIndexingRoot());
}
else
Modified:
jcr/trunk/exo.jcr.component.core/src/main/java/org/exoplatform/services/jcr/impl/core/query/lucene/SearchIndex.java
===================================================================
---
jcr/trunk/exo.jcr.component.core/src/main/java/org/exoplatform/services/jcr/impl/core/query/lucene/SearchIndex.java 2011-02-10
10:04:24 UTC (rev 3958)
+++
jcr/trunk/exo.jcr.component.core/src/main/java/org/exoplatform/services/jcr/impl/core/query/lucene/SearchIndex.java 2011-02-10
13:39:51 UTC (rev 3959)
@@ -176,6 +176,11 @@
public static final int DEFAULT_REINDEXING_PAGE_SIZE = 100;
/**
+ * The default value for {@link #rdbmsReindexing}.
+ */
+ public static final boolean DEFAULT_RDBMS_REINDEXING = true;
+
+ /**
* Default name of the error log file
*/
private static final String ERROR_LOG = "error.log";
@@ -466,6 +471,11 @@
private int reindexingPageSize = DEFAULT_REINDEXING_PAGE_SIZE;
/**
+ * Indicates what reindexing mechanism need to use.
+ */
+ private boolean rdbmsReindexing = DEFAULT_RDBMS_REINDEXING;
+
+ /**
* Working constructor.
*
* @throws RepositoryConfigurationException
@@ -2668,6 +2678,14 @@
}
/**
+ * @return the current value for rdbmsReindexing
+ */
+ public boolean isRDBMSReindexing()
+ {
+ return rdbmsReindexing;
+ }
+
+ /**
* Sets a new value for termInfosIndexDivisor.
*
* @param termInfosIndexDivisor
@@ -2710,6 +2728,17 @@
this.reindexingPageSize = reindexingPageSize;
}
+ /**
+ * Set a new value for reindexingPageSize.
+ *
+ * @param reindexingPageSize
+ * the new value
+ */
+ public void setRDBMSReindexing(boolean rdbmsReindexing)
+ {
+ this.rdbmsReindexing = rdbmsReindexing;
+ }
+
// ----------------------------< internal
// >----------------------------------
Show replies by date