[Gluster-devel] How to use notify functionality?

Krishnan Parthasarathi kparthas at redhat.com
Thu Jun 28 08:57:49 UTC 2012


>glusterd_brick_op_build_payload function is responsible for setting
>brick_req->op to GLUSTERD_BRICK_XLATOR_OP. But I could not follow the
>code flow from there. How does notify() in afr xlator invoked? Who
>decides that only notify function in afr xlator needs to be invoked
>instead of other xlators notify function?

>I looked for notify related documentation, but did not get anything
>related to that.
Mechanisms such as the above you mention, for IPC have not been documented. 

glusterd3_1_brick_op is the function that performs an RPC to the glusterfsd (brick proceses).
The RPC program (part of the brick processes) has the xlator graph in memory and as part of the 
brick op it has the name of the translator(s) in question whose notify that
needs to be called. The code which does all the above is present in glusterfsd/src/glusterfsd-mgmt.c.
Look for glusterfs_handle_rpc_msg for rest of the code flow.

Hope that helps,

Gluster-devel mailing list
Gluster-devel at nongnu.org

More information about the Gluster-devel mailing list