anchor.diff:      sqerl_client:start_link(?MODULE, Config).
   
   -spec exec_prepared_select(atom(), [], state()) -> {{ok, [[tuple()]]} | {error, any()}, state()}.
  -exec_prepared_select(Name, Args, #state{cn=Cn, statements=Statements}=State) ->
  +exec_prepared_select(Name, Args, #state{cn=Cn, statements=Statements, ctrans=CTrans}=State) ->
       {Columns, Stmt} = dict:fetch(Name, Statements),
       ok = pgsql:bind(Cn, Stmt, Args),
       %% Note: we might get partial results here for big selects!
  
positive.code:     {db, Db} = lists:keyfind(db, 1, Config),
      {prepared_statement_source, PreparedStatementFile} = lists:keyfind(prepared_statement_source, 1, Config),
      Opts = [{database, Db}, {port, Port}],
      case pgsql:connect(Host, User, Pass, Opts) of
          {error, timeout} ->
              {stop, timeout};
  
negative.code:          exec_prepared_select/3]).
  
  -record(state, {cn,
                  statements = dict:new() :: dict(),
                  ctrans :: dict() | undefined }).
  
  -type connection() :: pid().
  -type state() :: any().
  