diff --git a/config/alfresco/ibatis/org.hibernate.dialect.Dialect/node-common-SqlMap.xml b/config/alfresco/ibatis/org.hibernate.dialect.Dialect/node-common-SqlMap.xml
index 4e450f0c9d..767c29da5c 100644
--- a/config/alfresco/ibatis/org.hibernate.dialect.Dialect/node-common-SqlMap.xml
+++ b/config/alfresco/ibatis/org.hibernate.dialect.Dialect/node-common-SqlMap.xml
@@ -735,6 +735,7 @@
#{item}
+ and node.node_deleted = #{deleted}
diff --git a/source/java/org/alfresco/repo/domain/node/AbstractNodeDAOImpl.java b/source/java/org/alfresco/repo/domain/node/AbstractNodeDAOImpl.java
index 52c6264c2f..aa6db3fac1 100644
--- a/source/java/org/alfresco/repo/domain/node/AbstractNodeDAOImpl.java
+++ b/source/java/org/alfresco/repo/domain/node/AbstractNodeDAOImpl.java
@@ -3840,14 +3840,14 @@ public abstract class AbstractNodeDAOImpl implements NodeDAO, BatchingDAO
if (batch.size() >= batchSize)
{
// Preload
- cacheNodesNoBatch(selectNodesByIds(batch));
+ cacheNodesNoBatch(selectNodesByIds(batch, Boolean.FALSE));
batch.clear();
}
}
// Load any remaining nodes
if (batch.size() > 0)
{
- cacheNodesNoBatch(selectNodesByIds(batch));
+ cacheNodesNoBatch(selectNodesByIds(batch, Boolean.FALSE));
}
}
@@ -4048,7 +4048,7 @@ public abstract class AbstractNodeDAOImpl implements NodeDAO, BatchingDAO
protected abstract NodeEntity selectNodeById(Long id, Boolean deleted);
protected abstract NodeEntity selectNodeByNodeRef(NodeRef nodeRef, Boolean deleted);
protected abstract List selectNodesByUuids(Long storeId, SortedSet uuids);
- protected abstract List selectNodesByIds(SortedSet ids);
+ protected abstract List selectNodesByIds(SortedSet ids, Boolean deleted);
protected abstract Map> selectNodeProperties(Set nodeIds);
protected abstract Map> selectNodeProperties(Long nodeId);
protected abstract Map> selectNodeProperties(Long nodeId, Set qnameIds);
diff --git a/source/java/org/alfresco/repo/domain/node/ibatis/NodeBatchLoadEntity.java b/source/java/org/alfresco/repo/domain/node/ibatis/NodeBatchLoadEntity.java
index 7c21d82744..7bf3a5aff8 100644
--- a/source/java/org/alfresco/repo/domain/node/ibatis/NodeBatchLoadEntity.java
+++ b/source/java/org/alfresco/repo/domain/node/ibatis/NodeBatchLoadEntity.java
@@ -31,6 +31,7 @@ public class NodeBatchLoadEntity
private Long storeId;
private List uuids;
private List ids;
+ private Boolean deleted;
public Long getStoreId()
{
@@ -56,4 +57,12 @@ public class NodeBatchLoadEntity
{
this.ids = ids;
}
+ public Boolean getDeleted()
+ {
+ return deleted;
+ }
+ public void setDeleted(Boolean deleted)
+ {
+ this.deleted = deleted;
+ }
}
diff --git a/source/java/org/alfresco/repo/domain/node/ibatis/NodeDAOImpl.java b/source/java/org/alfresco/repo/domain/node/ibatis/NodeDAOImpl.java
index 0ef4de257c..c0a02c8046 100644
--- a/source/java/org/alfresco/repo/domain/node/ibatis/NodeDAOImpl.java
+++ b/source/java/org/alfresco/repo/domain/node/ibatis/NodeDAOImpl.java
@@ -421,10 +421,16 @@ public class NodeDAOImpl extends AbstractNodeDAOImpl
@SuppressWarnings("unchecked")
@Override
- protected List selectNodesByIds(SortedSet ids)
+ protected List selectNodesByIds(SortedSet ids, Boolean deleted)
{
NodeBatchLoadEntity nodeBatchLoadEntity = new NodeBatchLoadEntity();
+ // IDs
nodeBatchLoadEntity.setIds(new ArrayList(ids));
+ // Deleted
+ if (deleted != null)
+ {
+ nodeBatchLoadEntity.setDeleted(deleted);
+ }
return (List) template.selectList(SELECT_NODES_BY_IDS, nodeBatchLoadEntity);
}