Mnesia table events

Dan Gudmundsson dgud@REDACTED
Fri Aug 16 08:04:11 CEST 2002


You only get events on the node where you called the subscribe command:

Node A                                                 Node B (A1)
							 
(a@REDACTED)1> mnesia:start().                               (a1@REDACTED)1>  mnesia:start().
ok                                                    ok
(a@REDACTED)2> mnesia:change_config(extra_db_nodes, [a1@REDACTED]).    
{ok,[a1@REDACTED]}                                               
(a@REDACTED)3> mnesia:create_table(a,[{ram_copies,[a@REDACTED,a1@REDACTED]}]).
{atomic,ok}                                                  
(a@REDACTED)4>                                               (a1@REDACTED)3>  mnesia:subscribe({table, a}).
(a@REDACTED)4>                                               {ok,a1@REDACTED}
(a@REDACTED)4> mnesia:dirty_write({a,1,1}).                      
ok							 
(a@REDACTED)5> 					      (a1@REDACTED)4> flush().
						      Shell got {mnesia_table_event,
                                                       {write,{a,1,1},{dirty,<127.32.0>}}}

/Dan




Sivakumar Krishnasamy writes:
 > Hi all,
 >     I have created a table, which is replicated in 2 nodes ..say Node A and Node B. If I insert a value in Node A, then it's is replicated in Node B.
 >     Is it possible to subscribe for capturing table events in Node B, to capture table events When I perform table operations like write/delete in Node A for the replicated table. 
 >     When I tried the above scenario, I am getting events only in Node A, and node B doesn't seems to generate any table events, when its replicated table is accessed in Node A.
 >  
 > Regards,
 > Sivakumar Krishnasamy.
 >    
 >     



More information about the erlang-questions mailing list