[Kai-commits] SF.net SVN: kai:[51] branches/shino_vector_clocks
Kai is a distributed key-value datastore
Status: Beta
Brought to you by:
takemaru
From: <tak...@us...> - 2008-07-27 12:10:30
|
Revision: 51 http://kai.svn.sourceforge.net/kai/?rev=51&view=rev Author: takemaru Date: 2008-07-27 12:10:38 +0000 (Sun, 27 Jul 2008) Log Message: ----------- Modified Paths: -------------- branches/shino_vector_clocks/Makefile branches/shino_vector_clocks/src/Makefile branches/shino_vector_clocks/src/kai_api.erl branches/shino_vector_clocks/src/kai_memcache.erl branches/shino_vector_clocks/src/kai_tcp_server.erl branches/shino_vector_clocks/test/kai_api_SUITE.erl branches/shino_vector_clocks/test/kai_coordinator_SUITE.erl branches/shino_vector_clocks/test/kai_memcache_SUITE.erl branches/shino_vector_clocks/test/kai_tcp_server_SUITE.erl Property Changed: ---------------- / Property changes on: ___________________________________________________________________ Modified: svk:merge - 17e3f849-2ff4-4c9e-b5f3-5a330bd5af6a:/kai:403 + 17e3f849-2ff4-4c9e-b5f3-5a330bd5af6a:/kai:415 Modified: branches/shino_vector_clocks/Makefile =================================================================== --- branches/shino_vector_clocks/Makefile 2008-07-26 04:51:51 UTC (rev 50) +++ branches/shino_vector_clocks/Makefile 2008-07-27 12:10:38 UTC (rev 51) @@ -9,7 +9,6 @@ ## WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the ## License for the specific language governing permissions and limitations ## under the License. -KAI_VSN=0.1.0 ifndef ROOT ROOT=$(shell pwd) @@ -22,7 +21,7 @@ all: subdirs subdirs: - cd src; KAI_VSN=$(KAI_VSN) ROOT=$(ROOT) make + cd src; ROOT=$(ROOT) make test: test_do @@ -36,23 +35,8 @@ -logdir test/log -cover test/kai.coverspec \ -I$(ROOT)/include -pa $(ROOT)/ebin -test_single: test_compile - mkdir -p test/log - ${RUN_TEST_CMD} -suite $(SUITE) \ - -logdir test/log -cover test/kai.coverspec \ - -I$(ROOT)/include -pa $(ROOT)/ebin - -docs: - erl -noshell -run edoc_run application "'kai'" \ - '"."' '[{def,{vsn, "$(KAI_VSN)"}}]' - -dialyze: - cd src; make dialyze - clean: rm -rf *.beam erl_crash.dump *~ rm -rf test/log - rm -rf doc cd src; ROOT=$(ROOT) make clean cd test; ROOT=$(ROOT) make clean - Modified: branches/shino_vector_clocks/src/Makefile =================================================================== --- branches/shino_vector_clocks/src/Makefile 2008-07-26 04:51:51 UTC (rev 50) +++ branches/shino_vector_clocks/src/Makefile 2008-07-27 12:10:38 UTC (rev 51) @@ -9,6 +9,8 @@ ## WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the ## License for the specific language governing permissions and limitations ## under the License. +KAI_VSN=0.1.0 + EMULATOR=beam EBIN = $(ROOT)/ebin INCLUDE = $(ROOT)/include @@ -22,7 +24,7 @@ SOURCES = \ kai_config kai_log kai_hash kai_store kai_version \ kai_coordinator kai_sync kai_membership kai_sup kai \ - kai_tcp_server kai_api kai_memcache vclock + kai_tcp_server kai_api kai_memcache MODS = ${SOURCES:%=$(EBIN)/%.$(EMULATOR)} $(APP_TARGET) @@ -33,9 +35,6 @@ $(MODS): $(INCLUDE)/kai.hrl -dialyze: - dialyzer --succ_typings -c ${SOURCES:%=%.erl} - clean: rm -rf $(EBIN)/*.$(EMULATOR) $(APP_TARGET) $(EBIN)/erl_crash.dump *~ Modified: branches/shino_vector_clocks/src/kai_api.erl =================================================================== --- branches/shino_vector_clocks/src/kai_api.erl 2008-07-26 04:51:51 UTC (rev 50) +++ branches/shino_vector_clocks/src/kai_api.erl 2008-07-27 12:10:38 UTC (rev 51) @@ -13,7 +13,7 @@ -module(kai_api). -behaviour(kai_tcp_server). --export([start_link/0, stop/0]). +-export([start_link/0]). -export([init/1, handle_call/3]). -export([ node_info/1, node_list/1, @@ -37,8 +37,6 @@ } ). -stop() -> kai_tcp_server:stop(?MODULE). - init(_Args) -> {ok, {}}. handle_call(Socket, Data, State) -> Modified: branches/shino_vector_clocks/src/kai_memcache.erl =================================================================== --- branches/shino_vector_clocks/src/kai_memcache.erl 2008-07-26 04:51:51 UTC (rev 50) +++ branches/shino_vector_clocks/src/kai_memcache.erl 2008-07-27 12:10:38 UTC (rev 51) @@ -13,7 +13,7 @@ -module(kai_memcache). -behaviour(kai_tcp_server). --export([start_link/0, stop/0]). +-export([start_link/0]). -export([init/1, handle_call/3]). -include("kai.hrl"). @@ -31,8 +31,6 @@ } ). -stop() -> kai_tcp_server:stop(?MODULE). - init(_Args) -> {ok, {}}. handle_call(Socket, Data, State) -> Modified: branches/shino_vector_clocks/src/kai_tcp_server.erl =================================================================== --- branches/shino_vector_clocks/src/kai_tcp_server.erl 2008-07-26 04:51:51 UTC (rev 50) +++ branches/shino_vector_clocks/src/kai_tcp_server.erl 2008-07-27 12:10:38 UTC (rev 51) @@ -14,10 +14,9 @@ -behaviour(supervisor). -export([behaviour_info/1]). --export([start_link/1, start_link/2, start_link/3, start_link/4]). --export([stop/0, stop/1]). +-export([start_link/1, start_link/2, start_link/3, start_link/4, stop/0]). -export([init/1, acceptor_init/5]). --export([acceptor_start_link/5]). +-export([acceptor_start_link/4]). -include("kai.hrl"). @@ -27,16 +26,15 @@ % Supervisor - tcp_server %% External APIs -start_link(Mod) -> start_link(Mod, []). -start_link(Mod, Args) -> start_link(Mod, Args, #tcp_server_option{}). +start_link(Mod) -> start_link(Mod, [], {}). +start_link(Mod, Args) -> start_link(Mod, Args, {}). start_link(Mod, Args, Option) -> - start_link({local, ?MODULE}, Mod, Args, Option). -start_link(Name, Mod, Args, Option) -> - supervisor:start_link(Name, ?MODULE, [Name, Mod, Args, Option]). + supervisor:start_link(?MODULE, [?MODULE, Mod, Args, Option]). +start_link({_Destination, Name} = SupName, Mod, Args, Option) -> + supervisor:start_link(SupName, ?MODULE, [Name, Mod, Args, Option]). -stop() -> stop(?MODULE). -stop(Name) -> - case whereis(Name) of +stop() -> + case whereis(?MODULE) of Pid when is_pid(Pid) -> exit(Pid, normal), ok; @@ -63,7 +61,7 @@ {stop, Reason} end. -init_acceptors(ListenSocket, State, {Dest, Name}, Mod, Option) -> +init_acceptors(ListenSocket, State, Name, Mod, Option) -> #tcp_server_option{ max_connections = MaxConn, max_restarts = MaxRestarts, @@ -71,37 +69,31 @@ shutdown = Shutdown } = Option, {ok, {{one_for_one, MaxRestarts, Time}, lists:map( - fun (N) -> - AcceptorName = list_to_atom( - atom_to_list(Name) ++ "_acceptor_" ++ integer_to_list(N) + fun (N) -> { + list_to_atom( + atom_to_list(Name) + ++ "_acceptor_" + ++ integer_to_list(N) ), { - AcceptorName, - { - ?MODULE, - acceptor_start_link, - [{Dest, AcceptorName}, ListenSocket, State, Mod, Option] - }, - permanent, - Shutdown, - worker, - [] - } - end, + ?MODULE, + acceptor_start_link, + [ListenSocket, State, Mod, Option] + }, + permanent, + Shutdown, + worker, + [] + } end, lists:seq(1, MaxConn) )}}. % ProcLib - tcp_acceptor_N %% External APIs -acceptor_start_link({Dest, Name}, ListenSocket, State, Mod, Option) -> - {ok, Pid} = proc_lib:start_link( +acceptor_start_link(ListenSocket, State, Mod, Option) -> + proc_lib:start_link( ?MODULE, acceptor_init, [self(), ListenSocket, State, Mod, Option] - ), - case Dest of - local -> register(Name, Pid); - _Global -> global:register_name(Name, Pid) - end, - {ok, Pid}. + ). %% Callbacks acceptor_init(Parent, ListenSocket, State, Mod, Option) -> @@ -151,8 +143,6 @@ acceptor_loop(Active, Socket, State, Mod, Option); {noreply, State} -> acceptor_loop(Active, Socket, State, Mod, Option); - {close, State} -> - gen_tcp:close(Socket); {close, DataToSend, State} -> gen_tcp:send(Socket, DataToSend), gen_tcp:close(Socket); Modified: branches/shino_vector_clocks/test/kai_api_SUITE.erl =================================================================== --- branches/shino_vector_clocks/test/kai_api_SUITE.erl 2008-07-26 04:51:51 UTC (rev 50) +++ branches/shino_vector_clocks/test/kai_api_SUITE.erl 2008-07-27 12:10:38 UTC (rev 51) @@ -62,7 +62,6 @@ undefined = kai_api:get(?NODE1, "item-1"), - kai_api:stop(), kai_store:stop(), kai_hash:stop(), kai_config:stop(). Modified: branches/shino_vector_clocks/test/kai_coordinator_SUITE.erl =================================================================== --- branches/shino_vector_clocks/test/kai_coordinator_SUITE.erl 2008-07-26 04:51:51 UTC (rev 50) +++ branches/shino_vector_clocks/test/kai_coordinator_SUITE.erl 2008-07-27 12:10:38 UTC (rev 51) @@ -70,7 +70,6 @@ kai_coordinator:route({delete, #data{key="item-1"}}) ), - kai_api:stop(), kai_coordinator:stop(), kai_version:stop(), kai_store:stop(), Modified: branches/shino_vector_clocks/test/kai_memcache_SUITE.erl =================================================================== --- branches/shino_vector_clocks/test/kai_memcache_SUITE.erl 2008-07-26 04:51:51 UTC (rev 50) +++ branches/shino_vector_clocks/test/kai_memcache_SUITE.erl 2008-07-27 12:10:38 UTC (rev 51) @@ -91,8 +91,6 @@ gen_tcp:close(MemcacheSocket), - kai_memcache:stop(), - kai_api:stop(), kai_coordinator:stop(), kai_version:stop(), kai_store:stop(), Modified: branches/shino_vector_clocks/test/kai_tcp_server_SUITE.erl =================================================================== --- branches/shino_vector_clocks/test/kai_tcp_server_SUITE.erl 2008-07-26 04:51:51 UTC (rev 50) +++ branches/shino_vector_clocks/test/kai_tcp_server_SUITE.erl 2008-07-27 12:10:38 UTC (rev 51) @@ -11,6 +11,7 @@ % the License. -module(kai_tcp_server_SUITE). +-behaviour(kai_tcp_server). -compile(export_all). -export([init/1, handle_call/3]). % for echo server This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. |