[Gluster-devel] context based defaults for volume options in glusterd

Pranith Kumar Karampuri pkarampu at redhat.com
Tue Sep 1 06:53:49 UTC 2015



On 09/01/2015 12:05 PM, Krishnan Parthasarathi wrote:
>>> Here are a few things that are not clear to me.
>>>
>>> 1) Does the context-based default value for an option comes into effect
>>> only when .value in vme table is NULL?
>> If there is context based default then the static default value should
>> be NULL is my feeling.
>>> 2) IIUC, the generated default value is applied to the volume files
>>> generated
>>> and persisted no place else. Is this correct?
>> Yes.
>>> 3) What happens if the context_based_default_get() is not available in all
>>> glusterds in the cluster? e.g, upgrade from 3.6 to 3.7.x (where this may
>>> land).
>>> Shouldn't this behaviour also be 'versioned' to prevent different volume
>>> files
>>> being served by different nodes of the cluster?
>> In the context_based_default_value_get() we can add the version checks
>> and generate it the way we want.
> Hmm. We have op-version for the options in vme table against which we ensure
> that all servers generate the same volume files. What versions would the
> context based default value generator functions use? I'd recommend documenting
> these details of the proposal and send a PR to gluster-specs repository.
> This needs to be reviewed carefully with all the details available in one place.
The version context based defaults will use is dependent on the version 
the change needs to go into. We will do one thing. We will add this 
proposal to the specs repo and as an example we will give the link to 
the patch for afr quorum which implements this proposal. It will be very 
similar to the current implementation Anuradha came up with absent 
storing on gluster-store from op-version Point of view.

Pranith


More information about the Gluster-devel mailing list