On 12 Aug 2014, at 22:41, Dan Berindei <dan.berin...@gmail.com> wrote:

> 
> 
> 
> On Tue, Aug 5, 2014 at 11:27 AM, Galder Zamarreño <gal...@redhat.com> wrote:
> Can’t comment on the document, so here are my thoughts:
> 
> Re: “Get rid of lazy cache starting...all the caches run on all nodes...it 
> should still be possible to start a cache at runtime, but it will be run on 
> all nodes as well”
> 
> ^ Though I like the idea, it might change a crucial aspect of how default 
> cache configuration works (if we leave the concept of default cache at all). 
> Say you start a cache named “a” for which there’s no config. Up until now 
> we’d use the default cache configuration and create a cache “a” with that 
> config. However, if caches are started cluster wide now, before you can do 
> that, you’d have to check that there’s no cache “a” configuration anywhere in 
> the cluster. If there is, I guess the configuration would be shipped to the 
> node that starts the cache (if it does not have it) and create the cache with 
> it? Or are you assuming all nodes in the cluster must have all configurations 
> defined?
> 
> +1 to remove the default cache as a default configuration.
> 
> I like the idea of shipping the cache configuration to all the nodes. We will 
> have to require any user-provided objects in the configuration to be 
> serializable/externalizable, but I don't see a big problem with that.
> 
> In fact, it would also allow us to send the entire configuration to the 
> coordinator on join, so we could verify that the configuration on all nodes 
> is compatible (not exactly the same, since things like capacityFactor can be 
> different). And it would remove the need for the CacheJoinInfo class...
> 
> A more limited alternative, not requiring config serialization, would be to 
> disallow getCache(name) when a configuration doesn't exist but add a method 
> createCache(name, configurationName) that only requires configurationName to 
> be defined everywhere.
> 
> 
> Re: “Revisiting Configuration elements…"
> 
> If we’re going to do another round of updates in this area, I think we should 
> consider what to do with unconfigured values. Back in the 4.x days, the JAXB 
> XML parsing allowed us to know which configuration elements the user had not 
> configured, which helped us tweak configuration and do validation more 
> easily. Now, when we look at a Configuration builder object, we see default 
> values but we do not that a value is the one it is because the user has 
> specifically defined it, or because it’s unconfigured. One way to do so is by 
> separating the default values, say to an XML file which is reference (I think 
> WF does something along these lines) and leave the builder object with all 
> null values. This would make it easy to figure out which elements have been 
> touched and for that those that have not, use default values. This has popped 
> up in the forums before but can’t find a link right now...
> 
> I was also thinking of doing something like that, but instead of having a 
> separate XML with the defaults I was going to propose creating a layer of 
> indirection: every configuration value would be a ConfigurationProperty<T>, 
> with a default value, an override value, and an actual value. We already do 
> something similar for e.g. StateTransferConfiguration.awaitInitialTransfer 
> and originalAwaitInitialTransfer). 

^ What’s the problem with a separate XML file?

I really like the idea of externalizing default values from a documentation 
perspective and ease of change down the line, both for us and for users. 

On top of that, it could be validated and be presented as a reference XML file, 
getting rid of the sample XML file that we currently have which is half done 
and no one really updates it.

> 
> I haven't seen the forum post, but I think that would allow us more properly 
> validate conflicting configuration values. E.g. the checks in 
> Configurations.isVersioningEnabled() could be moved to 
> ConfigurationBuilder.validate()/create().

Totally, validation right now it’s quite tricky due to the lack of separation.

Cheers,

>  
> 
> Cheers,
> 
> On 28 Jul 2014, at 17:04, Mircea Markus <mmar...@redhat.com> wrote:
> 
> > Hi,
> >
> > Tristan, Sanne, Gustavo and I meetlast week to discuss a) Infinispan 
> > usability and b) monitoring and management. Minutes attached.
> >
> > https://docs.google.com/document/d/1dIxH0xTiYBHH6_nkqybc13_zzW9gMIcaF_GX5Y7_PPQ/edit?usp=sharing
> >
> > Cheers,
> > --
> > Mircea Markus
> > Infinispan lead (www.infinispan.org)
> >
> >
> >
> >
> >
> > _______________________________________________
> > infinispan-dev mailing list
> > infinispan-dev@lists.jboss.org
> > https://lists.jboss.org/mailman/listinfo/infinispan-dev
> 
> 
> --
> Galder Zamarreño
> gal...@redhat.com
> twitter.com/galderz
> 
> 
> _______________________________________________
> infinispan-dev mailing list
> infinispan-dev@lists.jboss.org
> https://lists.jboss.org/mailman/listinfo/infinispan-dev
> 
> _______________________________________________
> infinispan-dev mailing list
> infinispan-dev@lists.jboss.org
> https://lists.jboss.org/mailman/listinfo/infinispan-dev


--
Galder Zamarreño
gal...@redhat.com
twitter.com/galderz


_______________________________________________
infinispan-dev mailing list
infinispan-dev@lists.jboss.org
https://lists.jboss.org/mailman/listinfo/infinispan-dev

Reply via email to