Re: GF_FOP_IPC changes

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 





On 06/29/2015 08:18 PM, Niels de Vos wrote:
On Wed, Jun 24, 2015 at 07:44:13PM +0530, Soumya Koduri wrote:


On 06/24/2015 10:14 AM, Krishnan Parthasarathi wrote:


----- Original Message -----
I've been looking at the recent patches to redirect GF_FOP_IPC to an active
subvolume instead of always to the first.  Specifically, these:

    http://review.gluster.org/11346 for DHT
    http://review.gluster.org/11347 for EC
    http://review.gluster.org/11348 for AFR

I can't help but wonder if there's a simpler and more generic way to do this,
instead of having to do this in a translator-specific way each time - then
again for NSR, or for a separate tiering translator, and so on.  For example
what if each translator had a first_active_child callback?

    xlator_t * (*first_active_child) (xlator_t *parent);

Then default_ipc could invoke this, if it exists, where it currently invokes
FIRST_CHILD.  Each translator could implement a bare minimum to select a
child, then "step out of the way" for a fop it really wasn't all that
interested in to begin with.  Any thoughts?

We should do this right away. This change doesn't affect external interfaces.
we should be bold and implement the first solution. Over time we could improve
on this.

+1. It would definitely ease the implementation of many such fops which have
to default to first active child. We need not keep track of all the fops
which may get affected with new clustering xlators being added.

I think it is a great improvement and makes the code much easier to
understand. Do we have a volunteer that wants to have a go at
implementing this?

I volunteer. Pranith already seem to have some thoughts on it. I shall check with him and update the initial findings.

Thanks,
Soumya

Thanks,
Niels

_______________________________________________
Gluster-devel mailing list
Gluster-devel@xxxxxxxxxxx
http://www.gluster.org/mailman/listinfo/gluster-devel



[Index of Archives]     [Gluster Users]     [Ceph Users]     [Linux ARM Kernel]     [Linux ARM]     [Linux Omap]     [Fedora ARM]     [IETF Annouce]     [Security]     [Bugtraq]     [Linux]     [Linux OMAP]     [Linux MIPS]     [eCos]     [Asterisk Internet PBX]     [Linux API]

  Powered by Linux