From 7d52280c2e3fcc9e1b89435c98ef96d4758aed7a Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Lo=C3=AFc=20Hoguin?= Date: Wed, 25 Jul 2012 11:40:30 +0200 Subject: Make acceptors query the protocol opts on startup This way, if a crash happens in one of them after a protocol options upgrade has occured, the restarted acceptor will get the upgraded options as expected, and not the initial ones. --- src/ranch_server.erl | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) (limited to 'src/ranch_server.erl') diff --git a/src/ranch_server.erl b/src/ranch_server.erl index 7ded858..16e892d 100644 --- a/src/ranch_server.erl +++ b/src/ranch_server.erl @@ -117,8 +117,9 @@ code_change(_OldVsn, State, _Extra) -> -spec remove_process(key(), reference(), pid(), Monitors) -> Monitors when Monitors::monitors() . -remove_process(Key = {listener, _}, MonitorRef, Pid, Monitors) -> +remove_process(Key = {listener, Ref}, MonitorRef, Pid, Monitors) -> true = ets:delete(?TAB, Key), + true = ets:delete(?TAB, {acceptors, Ref}), lists:keydelete({MonitorRef, Pid}, 1, Monitors); remove_process(Key = {acceptors, _}, MonitorRef, Pid, Monitors) -> Acceptors = ets:lookup_element(?TAB, Key, 2), -- cgit v1.2.3