Hi, when I was trying to figure out what is the L1 default configuration
The JDG default: DISABLED when there is no l1-lifespan attribute in the element <distributed-cache />, L1 is disabled. The Infinispan default: DISABLED when there is no <l1/> element under <clustering/> element, or the <l1/> element is empty, L1 is disabled. However the hardwired default in the code is different: https://github.com/infinispan/infinispan/blob/master/core/src/main/java/org/infinispan/configuration/cache/L1ConfigurationBuilder.java#L36 the enabled field is set to true. this also means that L1ConfigurationBuilder prints a debug message: " L1 is enabled and L1OnRehash was not defined, enabling it" even though L1 won't be enabled in the end. The L1 is disabled because of the "activated" attribute. All I need to change is one attribute of L1Configuration (even unrelated to enablement) to "activate" it and it becomes enabled. I don't know what is the purpose of the "activated" attribute, it seems to be there for LegacyConfigurationAdaptor's purposes. But when we get rid of it we might make L1 by default enabled (by mistake) What's the desired default ? IMO L1 should be disabled by default, because without proper eviction settings, user can't very much control what's in each node's memory. And in general the performance tests don't show it performs better. Shouldn't we sync these ? Either set enabled = false in L1ConfigurationBuilder or allow enablement by default. m. -- Michal Linhard Quality Assurance Engineer JBoss Datagrid Red Hat Czech s.r.o. Purkynova 99 612 45 Brno, Czech Republic phone: +420 532 294 320 ext. 62320 mobile: +420 728 626 363 _______________________________________________ infinispan-dev mailing list [email protected] https://lists.jboss.org/mailman/listinfo/infinispan-dev
