anchor.diff:      lager:error(ErrorMsg),
       gen_server:reply(From, {error, {tcp_error, ErrorMsg}}),
       NewFroms = queue:filter(fun({F, _T}) -> F =/= From end, State#tcp_state.froms),
  -    {noreply, State#tcp_state{froms = NewFroms}};
  +    NewLen = queue:len(NewFroms),
  +    {noreply, State#tcp_state{froms = NewFroms, froms_len = NewLen}};
   
   handle_info({'EXIT', Worker, _Reason}, State) ->
       {noreply, remove_worker(Worker, State)};
  
positive.code:           listener,
            pool_name,
            froms,
            workers,
            workers_queue
           }).
  
negative.code: 
  checkin_worker(Worker, State) ->
      Froms = State#tcp_state.froms,
      Len = State#tcp_state.froms_len,
      case queue:out(Froms) of
          %% NOTE We have an ongoing transaction which has to be carried out...
          {{value, {From, Transaction}}, NewFroms} when is_function(Transaction, 1) ->
              %% FIXME This shouldn't run here as it may clog the entire connector up.
              %% NOTE This is currently unused as it is too slow.
              gen_server:reply(From, Transaction(Worker)),
              checkin_worker(Worker, State#tcp_state{froms = NewFroms, froms_len = Len - 1});
  
          %% NOTE ...or an ongoing checkout request...
          {{value, {From, Timer}}, NewFroms} ->
              erlang:cancel_timer(Timer),
              gen_server:reply(From, {ok, Worker}),
              {ok, State#tcp_state{froms = NewFroms, froms_len = Len - 1}};
  
          %% NOTE ...or we're good to go.
          {empty, Froms} ->
  