disable periodic force writes in merger (now handled by stasis instead); fix concurrency bug where merge held writelock while forcing data

git-svn-id: svn+ssh://svn.corp.yahoo.com/yahoo/yrl/labs/pnuts/code/logstore@3285 8dad8b1f-cf64-0410-95b6-bcf113ffbcfe
This commit is contained in:
sears 2011-11-04 20:55:27 +00:00
parent 6aae6898e7
commit 769b7615dd

View file

@ -128,10 +128,10 @@ void * merge_scheduler::memMergeThread() {
// 5: force c1'
rwlc_writelock(ltable_->header_mut);
//force write the new tree to disk
c1_prime->force(xid); // XXX put before the writelock?
c1_prime->force(xid);
rwlc_writelock(ltable_->header_mut);
merge_count++;
DEBUG("mmt:\tmerge_count %lld #bytes written %lld\n", stats.stats_merge_count, stats.output_size());
@ -332,7 +332,7 @@ void * merge_scheduler::diskMergeThread()
}
static void periodically_force(int xid, int *i, diskTreeComponent * forceMe, stasis_log_t * log) {
if(*i > mergeManager::FORCE_INTERVAL) {
if(false && *i > mergeManager::FORCE_INTERVAL) {
if(forceMe) forceMe->force(xid);
log->force_tail(log, LOG_FORCE_WAL);
*i = 0;