本文整理汇总了Java中org.apache.lucene.index.MergeScheduler类的典型用法代码示例。如果您正苦于以下问题:Java MergeScheduler类的具体用法?Java MergeScheduler怎么用?Java MergeScheduler使用的例子?那么恭喜您, 这里精选的类代码示例或许可以为您提供帮助。
MergeScheduler类属于org.apache.lucene.index包,在下文中一共展示了MergeScheduler类的5个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于我们的系统推荐出更棒的Java代码示例。
示例1: reduceOpenFiles
import org.apache.lucene.index.MergeScheduler; //导入依赖的package包/类
/** just tries to configure things to keep the open file
* count lowish */
public static void reduceOpenFiles(IndexWriter w) {
// keep number of open files lowish
MergePolicy mp = w.getConfig().getMergePolicy();
if (mp instanceof LogMergePolicy) {
LogMergePolicy lmp = (LogMergePolicy) mp;
lmp.setMergeFactor(Math.min(5, lmp.getMergeFactor()));
lmp.setNoCFSRatio(1.0);
} else if (mp instanceof TieredMergePolicy) {
TieredMergePolicy tmp = (TieredMergePolicy) mp;
tmp.setMaxMergeAtOnce(Math.min(5, tmp.getMaxMergeAtOnce()));
tmp.setSegmentsPerTier(Math.min(5, tmp.getSegmentsPerTier()));
tmp.setNoCFSRatio(1.0);
}
MergeScheduler ms = w.getConfig().getMergeScheduler();
if (ms instanceof ConcurrentMergeScheduler) {
// wtf... shouldnt it be even lower since its 1 by default?!?!
((ConcurrentMergeScheduler) ms).setMaxMergesAndThreads(3, 2);
}
}
开发者ID:europeana,项目名称:search,代码行数:22,代码来源:TestUtil.java
示例2: reduceOpenFiles
import org.apache.lucene.index.MergeScheduler; //导入依赖的package包/类
/** just tries to configure things to keep the open file
* count lowish */
public static void reduceOpenFiles(IndexWriter w) {
// keep number of open files lowish
MergePolicy mp = w.getConfig().getMergePolicy();
if (mp instanceof LogMergePolicy) {
LogMergePolicy lmp = (LogMergePolicy) mp;
lmp.setMergeFactor(Math.min(5, lmp.getMergeFactor()));
lmp.setUseCompoundFile(true);
} else if (mp instanceof TieredMergePolicy) {
TieredMergePolicy tmp = (TieredMergePolicy) mp;
tmp.setMaxMergeAtOnce(Math.min(5, tmp.getMaxMergeAtOnce()));
tmp.setSegmentsPerTier(Math.min(5, tmp.getSegmentsPerTier()));
tmp.setUseCompoundFile(true);
}
MergeScheduler ms = w.getConfig().getMergeScheduler();
if (ms instanceof ConcurrentMergeScheduler) {
((ConcurrentMergeScheduler) ms).setMaxThreadCount(2);
((ConcurrentMergeScheduler) ms).setMaxMergeCount(3);
}
}
开发者ID:pkarmstr,项目名称:NYBC,代码行数:22,代码来源:_TestUtil.java
示例3: getMergeScheduler
import org.apache.lucene.index.MergeScheduler; //导入依赖的package包/类
public MergeScheduler getMergeScheduler() {
return new MergeScheduler() {
private final String _id = UUID.randomUUID().toString();
@Override
public void merge(IndexWriter writer) throws IOException {
addMerges(_id, writer);
}
@Override
public void close() throws IOException {
remove(_id);
}
@Override
public MergeScheduler clone() {
return getMergeScheduler();
}
};
}
开发者ID:apache,项目名称:incubator-blur,代码行数:22,代码来源:SharedMergeScheduler.java
示例4: clone
import org.apache.lucene.index.MergeScheduler; //导入依赖的package包/类
@Override
public MergeScheduler clone() {
// Lucene IW makes a clone internally but since we hold on to this instance
// the clone will just be the identity.
return this;
}
开发者ID:justor,项目名称:elasticsearch_my,代码行数:7,代码来源:ElasticsearchConcurrentMergeScheduler.java
示例5: syncConcurrentMerges
import org.apache.lucene.index.MergeScheduler; //导入依赖的package包/类
public static void syncConcurrentMerges(MergeScheduler ms) {
if (ms instanceof ConcurrentMergeScheduler)
((ConcurrentMergeScheduler) ms).sync();
}
开发者ID:europeana,项目名称:search,代码行数:5,代码来源:TestUtil.java
注:本文中的org.apache.lucene.index.MergeScheduler类示例整理自Github/MSDocs等源码及文档管理平台,相关代码片段筛选自各路编程大神贡献的开源项目,源码版权归原作者所有,传播和使用请参考对应项目的License;未经允许,请勿转载。 |
请发表评论