anchor.diff:                                   {Name, Value}),
       {noreply, State#state{parameters = Parameters2}};
   
  -on_message({$E, Data}, State) ->
  -    %% TODO use it
  -    {error, pgsql_wire:decode_error(Data)},
  -    {infinity, State};
  -
  +%% NotificationResponse
   on_message({$A, <<Pid:?int32, Strings/binary>>}, State) ->
       case pgsql_wire:decode_strings(Strings) of
           [Channel, Payload] -> ok;
           [Channel]          -> Payload = <<>>
       end,
       %% TODO use it
  -    {notification, Channel, Pid, Payload},
  -    {infinity, State};
  -
  -on_message(_Msg, State) ->
  -    {infinity, State}.
  -
  +    notify_async(State, {notification, Channel, Pid, Payload}),
  +    {noreply, State}.
   
   hex(Bin) ->
       HChar = fun(N) when N < 10 -> $0 + N;
  
positive.code:     Pid ! Message,
      State#state{queue = Q2}.
  
  %% -- backend message handling --
  
  %% AuthenticationOk
  
negative.code:     {noreply, State2} = on_message(Other, State),
      {noreply, State2, Timeout}.
  
  %% NoticeResponse
  on_message({$N, Data}, State) ->
      notify_async(State, {notice, pgsql_wire:decode_error(Data)}),
      {noreply, State};
  
  %% ParameterStatus
  on_message({$S, Data}, State) ->
  