SEARCH-1719, amend as per toms feedback and upload V2 design of AsyncContentTracker

This commit is contained in:
michaelsuzukisagi
2019-07-24 14:34:51 +01:00
parent db793a183b
commit 54e9aebc6a
2 changed files with 29 additions and 27 deletions
@@ -9,12 +9,36 @@ skinparam sequence {
[-> Scheduler : Initialise on first core load
participant ContentProducer
participant ContentMessageProducer
participant ContentConsumer
participant SharedFileStoreClient #green
...
Scheduler -> ContentConsumer: Run
loop process messages in queue
Scheduler -> ContentMessageProducer
loop
activate ContentMessageProducer
ContentMessageProducer -> ContentMessageProducer: aquireRunLock
activate ContentMessageProducer
ContentMessageProducer -> ContentMessageProducer: getTrackerState
ContentMessageProducer -> ContentConsumer: readMessages
deactivate ContentConsumer
participant SolrInformationServer #FFBBBB
ContentMessageProducer -> SolrInformationServer: getDocsWithUncleanContent
activate SolrInformationServer #FFBBBB
SolrInformationServer -> SolrInformationServer: cleanContentCache (periodically)
participant SolrIndexSearcher #aqua
activate SolrIndexSearcher #aqua
SolrInformationServer -> SolrIndexSearcher: search (Search unclean documents)
SolrIndexSearcher -> SolrInformationServer: result docList
deactivate SolrIndexSearcher
ContentMessageProducer <- SolrInformationServer: result docList
deactivate SolrInformationServer
ContentMessageProducer -> ContentMessageProducer:markFTSStatus (dirty)
ContentMessageProducer -> Scheduler
deactivate ContentMessageProducer
deactivate ContentMessageProducer
end
Scheduler -> ContentConsumer: Run
loop process messages in queue
activate ContentConsumer
ContentConsumer->ContentConsumer:createSolrDoc
activate ContentConsumer
@@ -28,29 +52,6 @@ skinparam sequence {
deactivate ContentConsumer
deactivate ContentConsumer
end
Scheduler -> ContentProducer
loop
activate ContentProducer
ContentProducer -> ContentProducer: aquireRunLock
activate ContentProducer
ContentProducer -> ContentProducer: getTrackerState
ContentProducer -> ContentConsumer: readMessages
deactivate ContentConsumer
participant SolrInformationServer #FFBBBB
ContentProducer -> SolrInformationServer: getDocsWithUncleanContent
activate SolrInformationServer #FFBBBB
SolrInformationServer -> SolrInformationServer: cleanContentCache (periodically)
participant SolrIndexSearcher #aqua
activate SolrIndexSearcher #aqua
SolrInformationServer -> SolrIndexSearcher: search (Search unclean documents)
SolrIndexSearcher -> SolrInformationServer: result docList
deactivate SolrIndexSearcher
ContentProducer <- SolrInformationServer: result docList
deactivate SolrInformationServer
ContentProducer -> ContentProducer:markFTSStatus (dirty)
ContentProducer -> Scheduler
deactivate ContentProducer
end
...
center footer Copyright 2019 Alfresco Software Inc
@@ -32,7 +32,7 @@ skinparam sequence {
ContentIndexWorkerRunnable -> ContentIndexWorkerRunnable: doWork
activate ContentIndexWorkerRunnable #lightgrey
ContentIndexWorkerRunnable -> SolrInformationServer: updateContentToIndexAndCache
SolrInformationServer -> SolrContentStore: retrieveDocFromSolrContentStore
SolrInformationServer -> SolrContentStore:
activate SolrContentStore
SolrContentStore -> SolrInformationServer
deactivate SolrContentStore
@@ -52,6 +52,7 @@ skinparam sequence {
SolrInformationServer -> UpdateRequestProcessor:processAdd(addDocCmd)
end
end
ContentTracker -> ContentTracker:releaseLock
ContentTracker -> Scheduler
deactivate ContentTracker
...