1 -module(etorrent_mnesia_init
).
3 -include_lib("stdlib/include/qlc.hrl").
4 -include("etorrent_mnesia_table.hrl").
6 -export([init
/0, wait
/0]).
9 mnesia:create_table(tracking_map
,
10 [{attributes
, record_info(fields
, tracking_map
)}]),
12 mnesia:create_table(path_map
,
13 [{attributes
, record_info(fields
, path_map
)},
16 mnesia:create_table(torrent
,
17 [{attributes
, record_info(fields
, torrent
)}]),
18 mnesia:create_table(torrent_c_pieces
,
19 [{attributes
, record_info(fields
, torrent_c_pieces
)}]),
21 mnesia:create_table(peer
,
22 [{attributes
, record_info(fields
, peer
)},
23 {index
, [torrent_id
]}]),
25 mnesia:create_table(piece_diskstate
,
26 [{attributes
, record_info(fields
, piece_diskstate
)},
27 {disc_copies
, [node()]}]),
31 BaseTables
= [tracking_map
, path_map
, torrent
,
32 torrent_c_pieces
, peer
, piece_diskstate
],
33 mnesia:wait_for_tables(BaseTables
, 5000).