On Sep 16, 2014, at 13:11, Tristan Tarrant <ttarrant(a)redhat.com> wrote:
> Hey,
>
> I have been looking at the differences between default values in the XSD vs the
default values in the configuration builders. [1] I created a list of differences and
talked to Dan about his suggestion for the defaults. The numbers in parentheses are
Dan's suggestions, but he also asked me to post here to get a wider set of opinions on
these values. This list is based on the code used in infinispan-core, so I still need to
go through the server code to check the default values there.
>
> 1) For locking, the code has concurrency level set to 32, and the XSD has 1000 (32)
> 2) For eviction:
> a) the code has max entries set to -1, and the XSD has 10000 (-1)
> b) the code has interval set to 60000, and the XSD has 5000 (60000)
> 3) For async configuration:
> a) the code has queue size set to 1000, and the XSD has 0 (0)
> b) the code has queue flush interval set to 5000, and the XSD has 10 (10)
> c) the code has remote timeout set to 15000, and the XSD has 17500 (15000)
> 4) For hash, the code has number of segments set to 60, and the XSD has 80 (60)
> 5) For l1, the code has l1 cleanup interval set to 600000, and the XSD has 60000
(60000)
>
> Please let me know if you have any opinions on these default values, and also if you
have any ideas for avoiding these differences in the future. It seems like there are two
possibilities at this point:
>
> 1) Generating the XSD from the source code
Impractical without a ton of annotations, since the builder structure is
very different from the XSD structure.
In past, schema used to be generated from annotations on the configuration objects. I
don't know why we stopped doing that, though - Vladimir might comment more.
Cheers,
--
Mircea Markus
Infinispan lead (
www.infinispan.org)