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 boolean
protected final Map<String,
OnlineReindexer<?, ?, ?>> protected final boolean
protected final String
protected final SitePaths
-
Constructor Summary
ConstructorsModifierConstructorDescriptionprotected
VersionManager
(SitePaths sitePaths, PluginSetContext<OnlineUpgradeListener> listeners, Collection<IndexDefinition<?, ?, ?>> defs, boolean onlineUpgrade, boolean reuseExistingDocuments) -
Method Summary
Modifier and TypeMethodDescriptionboolean
activateLatestIndex
(String name) Activate the latest index if the current index is not already the latest.protected GerritIndexStatus
static boolean
getOnlineUpgrade
(org.eclipse.jgit.lib.Config cfg) protected <K,
V, I extends Index<K, V>>
voidinitIndex
(IndexDefinition<K, V, I> def, GerritIndexStatus cfg) boolean
isKnownIndex
(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) void
start()
Invoked when the server is starting.boolean
startReindexer
(String name, boolean force) Start the online reindexer if the current index is not already the latest.void
stop()
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:LifecycleListener
Invoked when the server is starting.- Specified by:
start
in interfaceLifecycleListener
-
stop
public void stop()Description copied from interface:LifecycleListener
Invoked when the server is stopping.- Specified by:
stop
in 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)
-