Module bulkowner

Bulk owner operations (for now only broadcasting).

Copyright © 2007-2012 Zuse Institute Berlin

Version: $Id$

Authors: Thorsten Schuett (schuett@zib.de).

References

Description

Bulk owner operations (for now only broadcasting).

Data Types

bulkowner_msg()

bulkowner_msg() = bulkowner_req() | bulkowner_send_error()

bulkowner_req()

bulkowner_req() = {bulkowner,
                   start,
                   Id :: uid:global_uid(),
                   I :: intervals:interval(),
                   Msg :: comm:message()}
                | {bulkowner,
                   Id :: uid:global_uid(),
                   I :: intervals:interval(),
                   Msg :: comm:message(),
                   Parents :: [comm:mypid(), ...]}
                | {bulkowner,
                   deliver,
                   Id :: uid:global_uid(),
                   Range :: intervals:interval(),
                   Msg :: comm:message(),
                   Parents :: [comm:mypid(), ...]}
                | {bulkowner,
                   reply,
                   Id :: uid:global_uid(),
                   Target :: comm:mypid(),
                   Msg :: comm:message(),
                   Parents :: [comm:mypid()]}
                | {bulkowner, reply_process_all}
                | {bulkowner,
                   gather,
                   Id :: uid:global_uid(),
                   Target :: comm:mypid(),
                   [comm:message()],
                   Parents :: [comm:mypid()]}

bulkowner_send_error()

bulkowner_send_error() = 
    {send_error, comm:mypid(), bulkowner_req(), atom()}

Function Index

issue_bulk_distribute/5
issue_bulk_distribute/6
issue_bulk_owner/3Start a bulk owner operation to send the message to all nodes in the given interval.
issue_send_reply/4
on/2
send_reply/5
send_reply_failed/6

Function Details

issue_bulk_owner/3

issue_bulk_owner(Id :: uid:global_uid(),
                 I :: intervals:interval(),
                 Msg :: comm:message()) ->
                    ok

Start a bulk owner operation to send the message to all nodes in the given interval.

issue_send_reply/4

issue_send_reply(Id :: uid:global_uid(),
                 Target :: comm:mypid(),
                 Msg :: comm:message(),
                 Parents :: [comm:mypid()]) ->
                    ok

issue_bulk_distribute/5

issue_bulk_distribute(ID :: uid:global_uid(),
                      Proc :: atom(),
                      Pos :: pos_integer(),
                      Msg :: comm:message(),
                      Data :: [{rt_chord:key(), string(), term()}]
                            | {ets, ets:tab()}) ->
                         ok

issue_bulk_distribute/6

issue_bulk_distribute(ID :: uid:global_uid(),
                      Proc :: atom(),
                      Pos :: pos_integer(),
                      Msg :: comm:message(),
                      Data :: [{rt_chord:key(), string(), term()}]
                            | {ets, ets:tab()},
                      Interval :: intervals:interval()) ->
                         ok

send_reply/5

send_reply(Id :: uid:global_uid(),
           Target :: comm:mypid(),
           Msg :: comm:message() | comm:group_message(),
           Parents :: [comm:mypid()],
           Shepherd :: comm:erl_local_pid()) ->
              ok

send_reply_failed/6

send_reply_failed(Id :: uid:global_uid(),
                  Target :: comm:mypid(),
                  Msg :: comm:message(),
                  Parents :: [comm:mypid()],
                  Shepherd :: comm:erl_local_pid(),
                  FailedPid :: comm:mypid()) ->
                     ok

on/2

on(X1 :: bulkowner_msg(), State :: dht_node_state:state()) ->
      dht_node_state:state()


Generated by EDoc, Feb 29 2016, 16:12:20.