From acdb7ab4bb9b94be74f8a55c5e3649714c2c1736 Mon Sep 17 00:00:00 2001 From: Eishun Kondoh Date: Wed, 2 May 2018 23:00:05 +0900 Subject: [PATCH] tres/switch_registry: Fix to add handler for switch pid is not exist --- bin/enum_gen | Bin 1423622 -> 1423641 bytes lib/tres/switch_registry.ex | 24 +++++++++++++++++------- 2 files changed, 17 insertions(+), 7 deletions(-) diff --git a/bin/enum_gen b/bin/enum_gen index b847b37feaa61c0a8d4c37a3f90d772e2969a13c..cc53b5706b9f9bcd59d23f2274be9838f13c6d8d 100755 GIT binary patch delta 16542 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 Sx3zZql^vowZ044r5pDold933A delta 16478 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 - {:error, :timeout} + __MODULE__ + |> Registry.lookup(datapath_id) + |> call({:send_message, message}, 5_000) end def blocking_send_message(message, dpid) when is_binary(dpid) do @@ -46,8 +44,9 @@ defmodule Tres.SwitchRegistry do end def get_current_xid({_dpid, _aux_id} = datapath_id) do - [{pid, _} | _] = Registry.lookup(__MODULE__, datapath_id) - :gen_statem.call(pid, :get_xid, 1000) + __MODULE__ + |> Registry.lookup(datapath_id) + |> call(:get_xid, 1_000) end def get_current_xid(datapath_id) do @@ -62,6 +61,17 @@ defmodule Tres.SwitchRegistry do # private function + defp call([{pid, _}|_], msg, timeout) do + :gen_statem.call(pid, msg, timeout) + catch + :exit, {:timeout, _} -> + {:error, :timeout} + end + + defp call(_, _, _) do + {:error, :not_found} + end + defp do_send_message(entries, message) do for {pid, _} <- entries, do: :gen_statem.cast(pid, {:send_message, message}) end