Namdak Tonpa 5 years ago
parent
commit
bdb95bbdf5
2 changed files with 3 additions and 2 deletions
  1. 2 1
      src/kvs.erl
  2. 1 1
      src/stores/kvs_mnesia.erl

+ 2 - 1
src/kvs.erl

@@ -9,7 +9,7 @@
 -include("cursors.hrl").
 -include("kvs.hrl").
 -include("backend.hrl").
--export([dump/0,check/0,metainfo/0,ensure/1,seq_gen/0,fold/6,fold/7]).
+-export([dump/0,check/0,metainfo/0,ensure/1,seq_gen/0,fold/6,fold/7,head/1]).
 -export(?API).
 -export(?STREAM).
 -export([init/1, start/2, stop/1]).
@@ -119,6 +119,7 @@ index(Tab, Key, Value,#kvs{mod=DBA}) -> DBA:index(Tab, Key, Value).
 seq(Tab, Incr,#kvs{mod=DBA}) -> DBA:seq(Tab, Incr).
 dump(#kvs{mod=Mod}) -> Mod:dump().
 feed(Key,#kvs{st=Mod}) -> Mod:feed(Key).
+head(Key) -> case (kvs:take((kvs:reader(Key))#reader{args=1}))#reader.args of [X] -> X; [] -> [] end.
 
 % tests
 

+ 1 - 1
src/stores/kvs_mnesia.erl

@@ -41,7 +41,7 @@ delete(Tab, Key) ->
         _ -> ok end.
 count(RecordName) -> mnesia:table_info(RecordName, size).
 all(R) -> lists:flatten(many(fun() -> L= mnesia:all_keys(R), [ mnesia:read({R, G}) || G <- L ] end)).
-seq([],[]) -> os:system_time();
+seq([],[]) -> integer_to_list(os:system_time());
 seq(RecordName, Incr) -> mnesia:dirty_update_counter({id_seq, RecordName}, Incr).
 many(Fun) -> case mnesia:activity(context(),Fun) of {atomic, [R]} -> R; {aborted, Error} -> {error, Error}; X -> X end.
 void(Fun) -> case mnesia:activity(context(),Fun) of {atomic, ok} -> ok; {aborted, Error} -> {error, Error}; X -> X end.