00001 // @file dur_journal.h 00002 00019 #pragma once 00020 00021 namespace mongo { 00022 class AlignedBuilder; 00023 00024 namespace dur { 00025 00028 extern bool okToCleanUp; 00029 00031 void journalCleanup(); 00032 00034 void journalMakeDir(); 00035 00041 void journalRotate(); 00042 00047 void journal(const AlignedBuilder& buf); 00048 00052 void journalingFailure(const char *msg); 00053 00055 unsigned long long journalReadLSN(); 00056 00057 unsigned long long getLastDataFileFlushTime(); 00058 00062 bool haveJournalFiles(); 00063 00064 // in case disk controller buffers writes 00065 const long long ExtraKeepTimeMs = 10000; 00066 00067 } 00068 }