public class MultiDataPathUpgrader extends Object
Constructor and Description |
---|
MultiDataPathUpgrader(NodeEnvironment nodeEnvironment)
Creates a new upgrader instance
|
Modifier and Type | Method and Description |
---|---|
void |
checkIndex(ShardPath targetPath)
Runs check-index on the target shard and throws an exception if it failed
|
protected long |
getSpaceUsedByShard(Path path) |
protected long |
getUsabelSpace(NodeEnvironment.NodePath path) |
boolean |
needsUpgrading(ShardId shard)
Returns true iff the given shard needs upgrading.
|
ShardPath |
pickShardPath(ShardId shard)
Picks a target ShardPath to allocate and upgrade the given shard to.
|
void |
upgrade(ShardId shard,
ShardPath targetPath)
Upgrades the given shard Id from multiple shard paths into the given target path.
|
static void |
upgradeMultiDataPath(NodeEnvironment nodeEnv,
ESLogger logger)
Runs an upgrade on all shards located under the given node environment if there is more than 1 data.path configured
otherwise this method will return immediately.
|
public MultiDataPathUpgrader(NodeEnvironment nodeEnvironment)
nodeEnvironment
- the node env to operate on.public void upgrade(ShardId shard, ShardPath targetPath) throws IOException
IOException
pickShardPath(org.elasticsearch.index.shard.ShardId)
public void checkIndex(ShardPath targetPath) throws IOException
IOException
public boolean needsUpgrading(ShardId shard)
public ShardPath pickShardPath(ShardId shard) throws IOException
IOException
protected long getSpaceUsedByShard(Path path) throws IOException
IOException
protected long getUsabelSpace(NodeEnvironment.NodePath path) throws IOException
IOException
public static void upgradeMultiDataPath(NodeEnvironment nodeEnv, ESLogger logger) throws IOException
IOException
Copyright © 2009–2016. All rights reserved.