开始
IndexWriter.commit()
检查pendingCommit
执行commit前的工作
synchronized(commit)开始
收集所有达到flush条件的DWPT
执行DWPT的doFlush()
synchronized(fullFlushLock)开始
更新删除信息
强制发布生成的段
IndexWriter处理事件
更新ReaderPool
设置commitUserData
更新索引文件的计数引用
执行commit后的工作
执行flush后的工作
执行同步磁盘工作
生成新的Segment_N文件
执行检查点(checkPoint)工作
设置rollbackSegments
尝试段合并
结束
synchronized(commit)结束
synchronized(fullFlushLock)结束
两阶段提交之第一阶段
两阶段提交之第二阶段
synchronized(commit)开始
synchronized(commit)结束
更新索引文件的计数引用