WEB开发网
开发学院软件开发Java 深入浅出 jackrabbit 十 redolog 和 recovery.doc... 阅读

深入浅出 jackrabbit 十 redolog 和 recovery.docx

 2009-09-17 00:00:00 来源:WEB开发网   
核心提示:在前面的文章中,我们对jackrabbit做索引的流程有了较为深刻的认识,深入浅出 jackrabbit 十 redolog 和 recovery.docx,这个过程中包含了很多的特性,比如多线程作内存索引啊,总是会进入这个方法multiIndex#executeAndLog(Action a): Java代码priv

在前面的文章中,我们对jackrabbit做索引的流程有了较为深刻的认识,这个过程中包含了很多的特性,比如多线程作内存索引啊,文件系统的目录算法啊,文本提取的策略等等,在本文中,ahuaxuan将会继续描述jackrabbit在索引过程中的另一个特性。

Redolog是jackrabbit中保证数据一致性的又一个特色。

本文将会阐述以下几点内容:

1. Redolog的存储方式

2. Redolog和indexes还有deletable这两个文件之前的亲密关系

3. Redolog的恢复方式

Redolog的存储介质。

其实在前面的文章中,我们已经接触过它了,之前我们在执行Action的时候,总是会进入这个方法multiIndex#executeAndLog(Action a):

Java代码   

private Action executeAndLog(Action a) 
      throws IOException { 
a. execute(this); 
/*从这个代码,我们可以看出,每执行一个Action,都会将这个action追加到redoLog中*/ 
    redoLog.append(a); 
    // please note that flushing the redo log is only required on 
    // commit, but we also want to keep track of new indexes for sure. 
    // otherwise it might happen that unused index folders are orphaned 
    // after a crash. 
    if (a.getType() == Action.TYPE_COMMIT || a.getType() == Action.TYPE_ADD_INDEX) { 
      redoLog.flush(); 
      // also flush indexing queue 
      indexingQueue.commit(); 
    } 
    return a; 
} 

1 2 3 4  下一页

Tags:深入浅出 jackrabbit redolog

编辑录入:爽爽 [复制链接] [打 印]
赞助商链接