anchor.diff:          "Seqs in progress were: ~p~nSeqs in progress are now: ~p",
           [Seq, ThroughSeq, NewThroughSeq, HighestDone,
               NewHighestDone, SeqsInProgress, NewSeqsInProgress]),
  -    case NewThroughSeq of
  -    ThroughSeq ->
  -        ok;
  -    _ ->
  -        couch_task_status:update("Processed source seq ~p", [NewThroughSeq])
  -    end,
  +    SourceCurSeq = source_cur_seq(State),
  +    couch_task_status:update(
  +        "Processed ~p / ~p changes", [NewThroughSeq, SourceCurSeq]),
       NewState = State#rep_state{
           stats = sum_stats([Stats, StatsInc]),
           current_through_seq = NewThroughSeq,
           seqs_in_progress = NewSeqsInProgress,
  -        highest_seq_done = NewHighestDone
  +        highest_seq_done = NewHighestDone,
  +        source_seq = SourceCurSeq
       },
       {noreply, NewState};
   
  
positive.code:     source_db_compaction_notifier = nil,
      target_db_compaction_notifier = nil,
      source_monitor = nil,
      target_monitor = nil
  }).
  
  
  
negative.code:     couch_db:monitor(Db);
  db_monitor(_HttpDb) ->
      nil.
  
  
  source_cur_seq(#rep_state{source = #httpdb{} = Db, source_seq = Seq}) ->
      case (catch couch_api_wrap:get_db_info(Db#httpdb{retries = 3})) of
      {ok, Info} ->
          get_value(<<"update_seq">>, Info, Seq);
      _ ->
          Seq
      end;
  source_cur_seq(#rep_state{source = Db, source_seq = Seq}) ->
      {ok, Info} = couch_api_wrap:get_db_info(Db),
      get_value(<<"update_seq">>, Info, Seq).
  