ViewVC Help
View File | Revision Log | Show Annotations | Download File
/cvs/AnyEvent-MP/MP/Kernel.pm
(Generate patch)

Comparing AnyEvent-MP/MP/Kernel.pm (file contents):
Revision 1.109 by root, Sat Mar 24 13:05:40 2012 UTC vs.
Revision 1.110 by root, Sat Mar 24 16:50:15 2012 UTC

622############################################################################# 622#############################################################################
623# talk with/to global nodes 623# talk with/to global nodes
624 624
625# protocol messages: 625# protocol messages:
626# 626#
627# sent by all slave nodes (slave to master) 627# sent by global nodes
628# g_slave database - make other global node master of the sender 628# g_global - node became global, similar to global=1 greeting
629# 629#
630# sent by any node to global nodes 630# database protocol
631# g_set database - set whole database 631# g_slave database - make other global node master of the sender
632# g_set database - global node's database to other global nodes
632# g_upd family set del - update single family 633# g_upd family set del - update single family (all to global)
633# g_del family key - delete key from database
634# g_get family key reply... - send reply with data
635# 634#
636# send by global nodes 635# slave <-> global protocol
637# g_global - node became global, similar to global=1 greeting 636# g_find node - query addresses for node (slave to global)
637# g_found node binds - node addresses (global to slave)
638# g_db_family family id - send g_reply with data (global to slave)
639# g_db_keys family id - send g_reply with data (global to slave)
640# g_db_values family id - send g_reply with data (global to slave)
641# g_reply id result - result of any query (global to slave)
642# g_mon1 family - start to monitor family, replies with g_chg1
643# g_mon0 family - stop monitoring family
644# g_chg1 family hash - initial value of family when starting to monitor
645# g_chg2 family set del - like g_upd, but for monitoring only
638# 646#
639# database families 647# internal database families
640# "'l" -> node -> listeners 648# "'l" -> node -> listeners
641# "'g" -> node -> undef 649# "'g" -> node -> undef
642# ... 650# ...
643# 651#
644 652
744 } 752 }
745 }; 753 };
746 }; 754 };
747} 755}
748 756
749# other node wants to make us the master 757# other node wants to make us the master, so start the global service
750$NODE_REQ{g_slave} = sub { 758$NODE_REQ{g_slave} = sub {
751 my ($db) = @_; 759 my ($db) = @_;
752 760
753 # load global module and redo the request 761 # load global module and redo the request
754 require AnyEvent::MP::Global; 762 require AnyEvent::MP::Global;

Diff Legend

Removed lines
+ Added lines
< Changed lines
> Changed lines