Fixes for ACE-3077 BM-0013: SOLR GC performance

Fixed content tracker to limit concurrent commits.
    Fixed delete to use "id" - better then delete by query which requires NRT reload
    Fixed TX and Changeset in index detection
        1) only check if it can be in the index based on timestamp
        2) cache that should cover last hour recheck

git-svn-id: https://svn.alfresco.com/repos/alfresco-enterprise/alfresco/HEAD/root@87960 c4b6b30b-aa2e-2d43-bbcb-ca4b014f7261
This commit is contained in:
Andrew Hind
2014-10-13 20:52:27 +00:00
parent aaab2dbb2b
commit 2ffbea5118
2 changed files with 46 additions and 1 deletions

View File

@@ -29,6 +29,9 @@ public class Node
private String nodeRef; private String nodeRef;
private long txnId; private long txnId;
private SolrApiNodeStatus status; private SolrApiNodeStatus status;
private String tenant;
private long aclId;
public long getId() public long getId()
{ {
return id; return id;
@@ -61,9 +64,41 @@ public class Node
{ {
this.status = status; this.status = status;
} }
/**
* @return the tenant
*/
public String getTenant()
{
return tenant;
}
/**
* @param tenant the tenant to set
*/
public void setTenant(String tenant)
{
this.tenant = tenant;
}
/**
* @return the aclId
*/
public long getAclId()
{
return aclId;
}
/**
* @param aclId the aclId to set
*/
public void setAclId(long aclId)
{
this.aclId = aclId;
}
/* (non-Javadoc)
* @see java.lang.Object#toString()
*/
@Override @Override
public String toString() public String toString()
{ {
return "NodeInfo [id=" + id + ", txnId=" + txnId + ", status=" + status + "]"; return "Node [id=" + id + ", nodeRef=" + nodeRef + ", txnId=" + txnId + ", status=" + status + ", tenant=" + tenant + ", aclId=" + aclId + "]";
} }
} }

View File

@@ -589,6 +589,16 @@ public class SOLRAPIClient
nodeInfo.setTxnId(jsonNodeInfo.getLong("txnId")); nodeInfo.setTxnId(jsonNodeInfo.getLong("txnId"));
} }
if(jsonNodeInfo.has("aclId"))
{
nodeInfo.setAclId(jsonNodeInfo.getLong("aclId"));
}
if(jsonNodeInfo.has("tenant"))
{
nodeInfo.setTenant(jsonNodeInfo.getString("tenant"));
}
if(jsonNodeInfo.has("status")) if(jsonNodeInfo.has("status"))
{ {
Node.SolrApiNodeStatus status; Node.SolrApiNodeStatus status;