anchor.diff:  %% send either indication of backfill (initial stream opaque message)
   %% or or indication of no backfill (checkpoint start message) pretty
   %% much immediately.
  -had_backfill(Pid) ->
  -    gen_server:call(Pid, had_backfill).
  +had_backfill(Pid, Timeout) ->
  +    gen_server:call(Pid, had_backfill, Timeout).
   
   %%
   %% Internal functions
  
positive.code:             complete_old_vb_filter_change(State1)
      end;
  handle_call(had_backfill, From, #state{had_backfill = HadBF} = State) ->
      case HadBF#had_backfill.value of
          undefined ->
              OldWaiters = HadBF#had_backfill.waiters,
              NewBF = HadBF#had_backfill{waiters = [From | OldWaiters]},
              {noreply, State#state{had_backfill = NewBF}};
          Value ->
              {reply, Value, State}
      end;
  handle_call(_Req, _From, State) ->
      {reply, unhandled, State}.
  
negative.code: %% @doc Process a packet from the downstream server.
  -spec process_downstream(<<_:8,_:_*8>>, #state{}) ->
                                  {ok, #state{}}.
  process_downstream(<<?RES_MAGIC:8, _Opcode:8, _KeyLen:16, _ExtLen:8, _DataType:8,
                       _VBucket:16, _BodyLen:32, Opaque:32, _CAS:64, _Rest/binary>> = Packet,
                     State) ->
      State#state.upstream_sender ! Packet,
      #had_backfill{value = BFValue,
                    waiters = Waiters,
                    backfill_opaque = BFOpaque} = HadBF = State#state.had_backfill,
      case BFOpaque =:= Opaque of
          true ->
              [gen_server:reply(From, BFValue)
               || From <- Waiters],
              case Waiters of
                  [] -> ok;
                  _ ->
                      ?rebalance_debug("Replied had_backfill: ~p to ~p", [BFValue, Waiters])
              end,
              NewBF = HadBF#had_backfill{waiters = [],
                                         backfill_opaque = undefined},
              {ok, State#state{had_backfill = NewBF}};
          false ->
              {ok, State}
      end.
  
  mark_takeover_seen(State) ->
      true = State#state.takeover,
  