/** * @return a newly minted segment file */ static CommitLogSegment freshSegment() { return new CommitLogSegment(null); }
public CommitLogSegment call() { return new CommitLogSegment(file.getPath()); } });
/** * Recycle processes an unneeded segment file for reuse. * * @return a new CommitLogSegment representing the newly reusable segment. */ CommitLogSegment recycle() { try { sync(); } catch (FSWriteError e) { logger.error("I/O error flushing {} {}", this, e.getMessage()); throw e; } close(); return new CommitLogSegment(getPath()); }