Fix for ALF-786: WCM Cluster / Lucene: Searching in staging returns duplicate entries (when concurrently submtting)

- fixed duplication arising from indexing 0-1 and 0-2 against the index for near simultaneous snapshots 
- tracking has not been modified nor has index rebuild - the latest index info from the AVM index is definitive and complete - we do not have to do additional work as we do for DM

git-svn-id: https://svn.alfresco.com/repos/alfresco-enterprise/alfresco/HEAD/root@19898 c4b6b30b-aa2e-2d43-bbcb-ca4b014f7261
This commit is contained in:
Andrew Hind
2010-04-19 14:11:47 +00:00
parent 16c4b49359
commit 0d3f558e11
19 changed files with 1366 additions and 239 deletions

View File

@@ -951,6 +951,65 @@ public class AVMStoreImpl implements AVMStore
return descs;
}
public List<VersionDescriptor> getVersionsTo(int version)
{
List<VersionRoot> versions = AVMDAOs.Instance().fVersionRootDAO.getByVersionsTo(this, version);
List<VersionDescriptor> descs = new ArrayList<VersionDescriptor>();
for (VersionRoot vr : versions)
{
VersionDescriptor desc =
new VersionDescriptor(getName(),
vr.getVersionID(),
vr.getCreator(),
vr.getCreateDate(),
vr.getTag(),
vr.getDescription());
descs.add(desc);
}
return descs;
}
public List<VersionDescriptor> getVersionsFrom(int version)
{
List<VersionRoot> versions = AVMDAOs.Instance().fVersionRootDAO.getByVersionsFrom(this, version);
List<VersionDescriptor> descs = new ArrayList<VersionDescriptor>();
for (VersionRoot vr : versions)
{
VersionDescriptor desc =
new VersionDescriptor(getName(),
vr.getVersionID(),
vr.getCreator(),
vr.getCreateDate(),
vr.getTag(),
vr.getDescription());
descs.add(desc);
}
return descs;
}
public List<VersionDescriptor> getVersionsBetween(int startVersion, int endVersion)
{
List<VersionRoot> versions = AVMDAOs.Instance().fVersionRootDAO.getByVersionsBetween(this, startVersion, endVersion);
List<VersionDescriptor> descs = new ArrayList<VersionDescriptor>();
for (VersionRoot vr : versions)
{
VersionDescriptor desc =
new VersionDescriptor(getName(),
vr.getVersionID(),
vr.getCreator(),
vr.getCreateDate(),
vr.getTag(),
vr.getDescription());
descs.add(desc);
}
return descs;
}
/**
* Get the AVMRepository.
* @return The AVMRepository