Browse Source

mnesia 2i and is_seq fix

Maxim Sokhatsky 12 years ago
parent
commit
9101cea944
3 changed files with 21 additions and 24 deletions
  1. 14 19
      src/kvs.erl
  2. 6 4
      src/store_mnesia.erl
  3. 1 1
      src/store_riak.erl

+ 14 - 19
src/kvs.erl

@@ -37,7 +37,7 @@ traversal(RecordType, PrevPos, Next, Count)->
     end.
 
 init_db() ->
-    case kvs:get(user,"alice") of
+    case kvs:get(user,"joe") of
         {error,_} ->
             add_seq_ids(),
             kvs_account:create_account(system),
@@ -97,24 +97,19 @@ add_sample_users() ->
                #group{username="Erlang"} ],
 
     UserList = [
-                     #user{username = "maxim", password="kaka15ra",
-                           name = "Maxim", surname = "Sokhatsky", feed = kvs_feed:create(),
-                           type = admin, direct = kvs_feed:create(),
-                           sex=m,
-                           status=ok,
-                           team = kvs_meeting:create_team("tours"),
-                           email="maxim.sokhatsky@gmail.com"},
-                     #user{username = "doxtop", password="password",
-                           feed = kvs_feed:create(),
-                           name = "Andrii Zadorozhnii",
-                           email="doxtop@synrc.com",
-                           type=admin,
-                           team = kvs_meeting:create_team("tours"), direct = kvs_feed:create(),
-                           status=ok,
-                           age={1981,9,29},
-                           register_date={1345,14071,852889}
-                     } 
-         ],
+        #user{username = "maxim", password="pass", name = "Maxim", surname = "Sokhatsky",
+            feed = kvs_feed:create(), type = admin, direct = kvs_feed:create(),
+            sex=m, status=ok, team = kvs_meeting:create_team("tours"),  email="maxim@synrc.com"},
+        #user{username = "doxtop", password="pass", name = "Andrii", surname = "Zadorozhnii",
+            feed = kvs_feed:create(), type = admin, direct = kvs_feed:create(),
+            sex=m, status=ok, team = kvs_meeting:create_team("tours"),  email="doxtop@synrc.com"},
+        #user{username = "alice", password="pass", name = "Alice", surname = "Imagionary",
+            feed = kvs_feed:create(), type = admin, direct = kvs_feed:create(),
+            sex=f, status=ok, team = kvs_meeting:create_team("tours"),  email="alice@synrc.com"},
+        #user{username = "akalenuk", password="pass", name = "Alexander", surname = "Kalenuk",
+            feed = kvs_feed:create(), type = admin, direct = kvs_feed:create(),
+            sex=m, status=ok, team = kvs_meeting:create_team("tours"),  email="akalenuk@gmail.com"}
+    ],
 
     kvs:put(Groups),
 

+ 6 - 4
src/store_mnesia.erl

@@ -21,7 +21,7 @@
 start() -> mnesia:change_table_copy_type(schema, node(), disc_copies).
 stop() -> mnesia:stop().
 delete() -> mnesia:delete_schema([node()]).
-version() -> {version,"MNESIA Embedded"}.
+version() -> {version,"KVS MNESIA Embedded"}.
 initialize() ->
     mnesia:create_schema([node()]),
     ?CREATE_TAB(payment),
@@ -44,6 +44,8 @@ initialize() ->
     ?CREATE_TAB(transaction),
     ?CREATE_TAB(translation),
     ok = add_table_index(comment, entry_id),
+    ok = add_table_index(subscription, who),
+    ok = add_table_index(subscription, whom),
     ok = add_table_index(entry, feed_id),
     ok = add_table_index(entry, entry_id),
     ok = add_table_index(entry, from),
@@ -90,12 +92,12 @@ select(From, [{where, Fn}, {order, {Idx, Order}}, {limit, {Offset, Length}}]) ->
 select(RecordName, Key) -> many(fun() -> mnesia:read({RecordName, Key}) end).
 count(RecordName) -> mnesia:table_info(RecordName, size).
 all(RecordName) -> flatten(fun() -> Lists = mnesia:all_keys(RecordName), [ mnesia:read({RecordName, G}) || G <- Lists ] end).
-all_by_index(RecordName,Key,Value) -> flatten(fun() -> Lists = mnesia:all_keys(RecordName), [ mnesia:read({RecordName, G}) || G <- Lists ] end).
+all_by_index(RecordName,Key,Value) -> flatten(fun() -> mnesia:index_read(RecordName,Value,Key) end).
 
 next_id(RecordName) -> next_id(RecordName, 1).
 next_id(RecordName, Incr) ->
-    [RecordStr] = io_lib:format("~p",[RecordName]),
-    mnesia:dirty_update_counter({id_seq, RecordStr}, Incr).
+%    [RecordStr] = io_lib:format("~p",[RecordName]),
+    mnesia:dirty_update_counter({id_seq, RecordName}, Incr).
 
 just_one(Fun) ->
     case mnesia:transaction(Fun) of

+ 1 - 1
src/store_riak.erl

@@ -18,7 +18,7 @@
 
 start() -> ok.
 stop() -> ok.
-version() -> {version,"RIAK 1.3.2"}.
+version() -> {version,"KVS RIAK 1.3.2-voxoz"}.
 
 initialize() ->
     C = riak:client_connect(node()),