[infinispan-dev] Differences between default values in the XSD and the code...Part One
ttarrant at redhat.com
Tue Sep 16 06:11:50 EDT 2014
On 16/09/14 12:04, Alan Field wrote:
> I have been looking at the differences between default values in the XSD vs the default values in the configuration builders.  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.
> 2) Creating a test case that parses the XSD, creates a cache, and verifies the default values against the parsed values
Server has a subsystem writer which recreates the configuration from the
in-memory model, maybe it's worth adapting that.
More information about the infinispan-dev