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:
parent
6aae6898e7
commit
769b7615dd
1 changed files with 4 additions and 4 deletions
|
@ -128,10 +128,10 @@ void * merge_scheduler::memMergeThread() {
|
||||||
|
|
||||||
// 5: force c1'
|
// 5: force c1'
|
||||||
|
|
||||||
rwlc_writelock(ltable_->header_mut);
|
|
||||||
|
|
||||||
//force write the new tree to disk
|
//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++;
|
merge_count++;
|
||||||
DEBUG("mmt:\tmerge_count %lld #bytes written %lld\n", stats.stats_merge_count, stats.output_size());
|
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) {
|
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);
|
if(forceMe) forceMe->force(xid);
|
||||||
log->force_tail(log, LOG_FORCE_WAL);
|
log->force_tail(log, LOG_FORCE_WAL);
|
||||||
*i = 0;
|
*i = 0;
|
||||||
|
|
Loading…
Reference in a new issue