Package org.alfresco.solr.tracker
Class MetadataTracker
- java.lang.Object
-
- org.alfresco.solr.tracker.AbstractTracker
-
- org.alfresco.solr.tracker.MetadataTracker
-
- All Implemented Interfaces:
Tracker
public class MetadataTracker extends AbstractTracker implements Tracker
-
-
Nested Class Summary
-
Nested classes/interfaces inherited from interface org.alfresco.solr.tracker.Tracker
Tracker.Type
-
-
Field Summary
Fields Modifier and Type Field Description protected static org.slf4j.Loggerlog-
Fields inherited from class org.alfresco.solr.tracker.AbstractTracker
alfrescoVersion, batchCount, client, coreName, infoSrv, isMaster, isSlave, props, rollback, runPostModelLoadInit, SHARD_METHOD_ACLID, SHARD_METHOD_DBID, shardCount, shardInstance, shardMethod, shardTemplate, state, storeRef, threadHandler, TIME_STEP_1_HR_IN_MS, TIME_STEP_32_DAYS_IN_MS, trackerStats, transformContent, type
-
-
Constructor Summary
Constructors Constructor Description MetadataTracker(Properties p, org.alfresco.solr.client.SOLRAPIClient client, String coreName, InformationServer informationServer)
-
Method Summary
All Methods Static Methods Instance Methods Concrete Methods Modifier and Type Method Description voidaddNodeToIndex(Long nodeId)voidaddNodeToPurge(Long nodeId)voidaddNodeToReindex(Long nodeId)voidaddQueryToReindex(String query)voidaddTransactionToIndex(Long txId)voidaddTransactionToPurge(Long txId)voidaddTransactionToReindex(Long txId)org.alfresco.solr.tracker.IndexHealthReportcheckIndex(Long toTx, Long toAclTx, Long fromTime, Long toTime)org.alfresco.solr.NodeReportcheckNode(Long dbid)org.alfresco.solr.NodeReportcheckNode(org.alfresco.solr.client.Node node)protected voiddoTrack()Subclasses must implement behaviour that completes the following steps, in order: Purge Reindex Index Track repositoryDocRoutergetDocRouter()List<org.alfresco.solr.client.Node>getFullNodesForDbTransaction(Long txid)static org.alfresco.service.namespace.QNamegetShardProperty(String field)protected org.alfresco.solr.client.TransactionsgetSomeTransactions(org.alfresco.solr.BoundedDeque<org.alfresco.solr.client.Transaction> txnsFound, Long fromCommitTime, long timeStep, int maxResults, long endTime)protected LonggetTxFromCommitTime(org.alfresco.solr.BoundedDeque<org.alfresco.solr.client.Transaction> txnsFound, long lastGoodTxCommitTimeInIndex)booleanhasMaintenance()voidinvalidateState()voidmaintenance()protected voidtrackTransactions()-
Methods inherited from class org.alfresco.solr.tracker.AbstractTracker
checkShutdown, getAlfrescoVersion, getMaxLiveSearchers, getProps, getRollback, getRunLock, getTrackerState, getType, getWriteLock, setRollback, setShutdown, shutdown, track, waitForAsynchronous
-
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
-
Methods inherited from interface org.alfresco.solr.tracker.Tracker
getAlfrescoVersion, getProps, getRollback, getTrackerState, getType, getWriteLock, setRollback, setShutdown, shutdown, track
-
-
-
-
Constructor Detail
-
MetadataTracker
public MetadataTracker(Properties p, org.alfresco.solr.client.SOLRAPIClient client, String coreName, InformationServer informationServer)
-
-
Method Detail
-
getDocRouter
public DocRouter getDocRouter()
-
doTrack
protected void doTrack() throws org.alfresco.httpclient.AuthenticationException, IOException, org.json.JSONException, org.apache.commons.codec.EncoderExceptionDescription copied from class:AbstractTrackerSubclasses must implement behaviour that completes the following steps, in order:- Purge
- Reindex
- Index
- Track repository
- Specified by:
doTrackin classAbstractTracker- Throws:
org.alfresco.httpclient.AuthenticationExceptionIOExceptionorg.json.JSONExceptionorg.apache.commons.codec.EncoderException
-
maintenance
public void maintenance() throws Exception- Specified by:
maintenancein interfaceTracker- Throws:
Exception
-
hasMaintenance
public boolean hasMaintenance() throws Exception- Specified by:
hasMaintenancein interfaceTracker- Throws:
Exception
-
getTxFromCommitTime
protected Long getTxFromCommitTime(org.alfresco.solr.BoundedDeque<org.alfresco.solr.client.Transaction> txnsFound, long lastGoodTxCommitTimeInIndex)
-
getSomeTransactions
protected org.alfresco.solr.client.Transactions getSomeTransactions(org.alfresco.solr.BoundedDeque<org.alfresco.solr.client.Transaction> txnsFound, Long fromCommitTime, long timeStep, int maxResults, long endTime) throws org.alfresco.httpclient.AuthenticationException, IOException, org.json.JSONException, org.apache.commons.codec.EncoderException- Throws:
org.alfresco.httpclient.AuthenticationExceptionIOExceptionorg.json.JSONExceptionorg.apache.commons.codec.EncoderException
-
trackTransactions
protected void trackTransactions() throws org.alfresco.httpclient.AuthenticationException, IOException, org.json.JSONException, org.apache.commons.codec.EncoderException- Throws:
org.alfresco.httpclient.AuthenticationExceptionIOExceptionorg.json.JSONExceptionorg.apache.commons.codec.EncoderException
-
checkNode
public org.alfresco.solr.NodeReport checkNode(Long dbid)
-
checkNode
public org.alfresco.solr.NodeReport checkNode(org.alfresco.solr.client.Node node)
-
getFullNodesForDbTransaction
public List<org.alfresco.solr.client.Node> getFullNodesForDbTransaction(Long txid)
-
checkIndex
public org.alfresco.solr.tracker.IndexHealthReport checkIndex(Long toTx, Long toAclTx, Long fromTime, Long toTime) throws IOException, org.alfresco.httpclient.AuthenticationException, org.json.JSONException, org.apache.commons.codec.EncoderException
- Throws:
IOExceptionorg.alfresco.httpclient.AuthenticationExceptionorg.json.JSONExceptionorg.apache.commons.codec.EncoderException
-
addTransactionToPurge
public void addTransactionToPurge(Long txId)
-
addNodeToPurge
public void addNodeToPurge(Long nodeId)
-
addTransactionToReindex
public void addTransactionToReindex(Long txId)
-
addNodeToReindex
public void addNodeToReindex(Long nodeId)
-
addTransactionToIndex
public void addTransactionToIndex(Long txId)
-
addNodeToIndex
public void addNodeToIndex(Long nodeId)
-
invalidateState
public void invalidateState()
- Specified by:
invalidateStatein interfaceTracker- Overrides:
invalidateStatein classAbstractTracker
-
addQueryToReindex
public void addQueryToReindex(String query)
- Parameters:
query-
-
getShardProperty
public static org.alfresco.service.namespace.QName getShardProperty(String field)
-
-