     args = [sid, {:short, 0}, {:long, 1}, "*:-1", true, false]
     req = Protocol.encode_op(:record_load, args)
 
-    s = update_in(s.queue, &:queue.in(:fetch_schema, &1))
+    s = enqueue(s, :fetch_schema)
 
     :gen_tcp.send(s.socket, req)
     {:noreply, s}

  def handle_call({:operation, op_name, args}, from, %{session_id: sid} = s) do
    req = Protocol.encode_op(op_name, [sid|args])

    s = update_in(s.queue, &:queue.in({from, op_name}, &1))

    :gen_tcp.send(s.socket, req)
    {:noreply, s}


    %{global_properties: global_properties}
  end

  defp enqueue(s, what) do
    update_in s.queue, &:queue.in(what, &1)
  end
end
