anchor.diff:  
                 DDocNames = ddoc_names(BucketName),
   
  +              MasterDbCompactor = get_forced_master_db_compactor(BucketName, Config),
                 DbsCompactor = get_dbs_compactor(BucketName, Config, true),
                 DDocCompactors = get_view_compactors(BucketName, DDocNames, Config, true),
   
                 case Config#config.parallel_view_compact of
                     true ->
  -                      DbsPid = chain_compactors([DbsCompactor]),
  +                      DbsPid = chain_compactors([MasterDbCompactor, DbsCompactor]),
                         ViewsPid = chain_compactors(DDocCompactors),
   
                         misc:wait_for_process(DbsPid, infinity),
                         misc:wait_for_process(ViewsPid, infinity);
                     false ->
  -                      AllCompactors = [DbsCompactor | DDocCompactors],
  +                      AllCompactors = [MasterDbCompactor | [DbsCompactor | DDocCompactors]],
                         Pid = chain_compactors(AllCompactors),
                         misc:wait_for_process(Pid, infinity)
                 end
  
positive.code:     end;
  handle_info(config_changed,
              #state{kv_compaction = KVCompaction,
                     views_compaction = ViewsCompaction} = State) ->
      misc:flush(config_changed),
      Config = ns_config:get(),
  
      {noreply, State#state{kv_compaction = process_config_change(Config, KVCompaction),
                            views_compaction = process_config_change(Config, ViewsCompaction)}};
  handle_info(Info, State) ->
      ?log_warning("Got unexpected message ~p:~n~p", [Info, State]),
      {noreply, State}.
  
negative.code: 
  -record(state, {kv_compaction :: #compaction_state{},
                  views_compaction :: #compaction_state{},
                  master_compaction :: #compaction_state{},
  
                  %% bucket for which view compaction is inhibited (note
                  %% it's also set when we're running 'uninhibit' views
  