Package com.google.gerrit.server.index
Class VersionManager
java.lang.Object
com.google.gerrit.server.index.VersionManager
- All Implemented Interfaces:
LifecycleListener,EventListener
Trigger for online reindexing in case the index version in use is not the latest.
-
Nested Class Summary
Nested Classes -
Field Summary
FieldsModifier and TypeFieldDescriptionprotected final Map<String, IndexDefinition<?, ?, ?>> protected final booleanprotected final Map<String, OnlineReindexer<?, ?, ?>> protected final booleanprotected final Stringprotected final SitePaths -
Constructor Summary
ConstructorsModifierConstructorDescriptionprotectedVersionManager(SitePaths sitePaths, PluginSetContext<OnlineUpgradeListener> listeners, Collection<IndexDefinition<?, ?, ?>> defs, boolean onlineUpgrade, boolean reuseExistingDocuments) -
Method Summary
Modifier and TypeMethodDescriptionbooleanactivateLatestIndex(String name) Activate the latest index if the current index is not already the latest.protected GerritIndexStatusstatic booleangetOnlineUpgrade(org.eclipse.jgit.lib.Config cfg) protected <K,V, I extends Index<K, V>>
voidinitIndex(IndexDefinition<K, V, I> def, GerritIndexStatus cfg) booleanisKnownIndex(String name) Tells if an index with this name is currently known or not.protected abstract <K,V, I extends Index<K, V>>
TreeMap<Integer, VersionManager.Version<V>> scanVersions(IndexDefinition<K, V, I> def, GerritIndexStatus cfg) voidstart()Invoked when the server is starting.booleanstartReindexer(String name, boolean force) Start the online reindexer if the current index is not already the latest.voidstop()Invoked when the server is stopping.
-
Field Details
-
onlineUpgrade
protected final boolean onlineUpgrade -
reuseExistingDocuments
protected final boolean reuseExistingDocuments -
runReindexMsg
-
sitePaths
-
defs
-
reindexers
-
-
Constructor Details
-
VersionManager
protected VersionManager(SitePaths sitePaths, PluginSetContext<OnlineUpgradeListener> listeners, Collection<IndexDefinition<?, ?, ?>> defs, boolean onlineUpgrade, boolean reuseExistingDocuments)
-
-
Method Details
-
getOnlineUpgrade
public static boolean getOnlineUpgrade(org.eclipse.jgit.lib.Config cfg) -
start
public void start()Description copied from interface:LifecycleListenerInvoked when the server is starting.- Specified by:
startin interfaceLifecycleListener
-
stop
public void stop()Description copied from interface:LifecycleListenerInvoked when the server is stopping.- Specified by:
stopin interfaceLifecycleListener
-
startReindexer
Start the online reindexer if the current index is not already the latest.- Parameters:
name- index nameforce- start re-index- Returns:
- true if started, otherwise false.
- Throws:
ReindexerAlreadyRunningException
-
activateLatestIndex
Activate the latest index if the current index is not already the latest.- Parameters:
name- index name- Returns:
- true if index was activated, otherwise false.
- Throws:
ReindexerAlreadyRunningException
-
isKnownIndex
Tells if an index with this name is currently known or not.- Parameters:
name- index name- Returns:
- true if index is known and can be used, otherwise false.
-
initIndex
protected <K,V, void initIndexI extends Index<K, V>> (IndexDefinition<K, V, I> def, GerritIndexStatus cfg) -
createIndexStatus
-
scanVersions
protected abstract <K,V, TreeMap<Integer,I extends Index<K, V>> VersionManager.Version<V>> scanVersions(IndexDefinition<K, V, I> def, GerritIndexStatus cfg)
-