Author: tolusha
Date: 2011-02-09 06:25:30 -0500 (Wed, 09 Feb 2011)
New Revision: 3954
Modified:
jcr/trunk/exo.jcr.component.core/src/main/java/org/exoplatform/services/jcr/impl/core/query/Indexable.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/storage/jdbc/JDBCWorkspaceDataContainer.java
Log:
EXOJCR-1104: for Sybase keep old way reindexing
Modified:
jcr/trunk/exo.jcr.component.core/src/main/java/org/exoplatform/services/jcr/impl/core/query/Indexable.java
===================================================================
---
jcr/trunk/exo.jcr.component.core/src/main/java/org/exoplatform/services/jcr/impl/core/query/Indexable.java 2011-02-09
11:10:36 UTC (rev 3953)
+++
jcr/trunk/exo.jcr.component.core/src/main/java/org/exoplatform/services/jcr/impl/core/query/Indexable.java 2011-02-09
11:25:30 UTC (rev 3954)
@@ -26,18 +26,17 @@
* Date: 1 02 2011
*
* @author <a href="mailto:anatoliy.bazko@exoplatform.com.ua">Anatoliy
Bazko</a>
- * @version $Id: Indexing.java 34360 2010-11-11 11:11:11Z tolusha $
+ * @version $Id: Indexable.java 34360 2010-11-11 11:11:11Z tolusha $
*/
public interface Indexable
{
/**
- * Returns NodeDataIndexingIterator.
+ * Returns NodeDataIndexingIterator or null.
*
* @param pageSize
- * the maximum amount of the rows which can be retrieved from database per
once
- * @return NodeDataIndexingIterator
+ * the maximum amount of the rows which can be retrieved from storage per
once
+ * @return NodeDataIndexingIterator or null
* @throws RepositoryException
*/
- NodeDataIndexingIterator getNodeDataIndexingIterator(int pageSize)
- throws RepositoryException;
+ NodeDataIndexingIterator getNodeDataIndexingIterator(int pageSize) throws
RepositoryException;
}
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-09
11:10:36 UTC (rev 3953)
+++
jcr/trunk/exo.jcr.component.core/src/main/java/org/exoplatform/services/jcr/impl/core/query/lucene/MultiIndex.java 2011-02-09
11:25:30 UTC (rev 3954)
@@ -432,14 +432,24 @@
// traverse and index workspace
executeAndLog(new Start(Action.INTERNAL_TRANSACTION));
- // NodeData rootState = (NodeData) stateMgr.getItemData(rootId);
+ long count;
+
// check if we have deal with JDBC indexing mechanism
Indexable indexableComponent =
(Indexable)handler.getContext().getContainer().getComponent(Indexable.class);
- long count =
- indexableComponent == null ? createIndex(indexingTree.getIndexingRoot(),
stateMgr) : createIndex(
-
indexableComponent.getNodeDataIndexingIterator(handler.getReindexingPageSize()),
- indexingTree.getIndexingRoot());
+ if (indexableComponent == null)
+ {
+ count = createIndex(indexingTree.getIndexingRoot(), stateMgr);
+ }
+ else
+ {
+ NodeDataIndexingIterator iterator =
+
indexableComponent.getNodeDataIndexingIterator(handler.getReindexingPageSize());
+ count =
+ iterator == null ? createIndex(indexingTree.getIndexingRoot(),
stateMgr) : createIndex(iterator,
+ indexingTree.getIndexingRoot());
+ }
+
executeAndLog(new Commit(getTransactionId()));
log.info("Created initial index for {} nodes", new Long(count));
releaseMultiReader();
@@ -1630,6 +1640,7 @@
{
while (iterator.hasNext())
{
+
Callable<Void> task = new Callable<Void>()
{
public Void call() throws Exception
Modified:
jcr/trunk/exo.jcr.component.core/src/main/java/org/exoplatform/services/jcr/impl/storage/jdbc/JDBCWorkspaceDataContainer.java
===================================================================
---
jcr/trunk/exo.jcr.component.core/src/main/java/org/exoplatform/services/jcr/impl/storage/jdbc/JDBCWorkspaceDataContainer.java 2011-02-09
11:10:36 UTC (rev 3953)
+++
jcr/trunk/exo.jcr.component.core/src/main/java/org/exoplatform/services/jcr/impl/storage/jdbc/JDBCWorkspaceDataContainer.java 2011-02-09
11:25:30 UTC (rev 3954)
@@ -1511,6 +1511,7 @@
public NodeDataIndexingIterator getNodeDataIndexingIterator(int pageSize)
throws RepositoryException
{
- return new JdbcNodeDataIndexingIterator(connFactory, pageSize);
+ return dbDialect.equals(DBConstants.DB_DIALECT_SYBASE) ? null : new
JdbcNodeDataIndexingIterator(connFactory,
+ pageSize);
}
}
Show replies by date