@Test public void generatesWithEvictionMaxMemory() { evictionAction = EvictionAction.LOCAL_DESTROY.toString(); evictionMaxMemory = 100; generate(); RegionAttributesType.EvictionAttributes evictionAttributes = config.getRegionAttributes().getEvictionAttributes(); assertThat(evictionAttributes).isNotNull(); assertThat(evictionAttributes.getLruMemorySize().getAction()) .isSameAs(EnumActionDestroyOverflow.LOCAL_DESTROY); assertThat(evictionAttributes.getLruMemorySize().getMaximum()).isEqualTo("100"); }
@Test public void generatesWithEvictionMaxEntry() { evictionAction = EvictionAction.OVERFLOW_TO_DISK.toString(); evictionEntryCount = 1; generate(); RegionAttributesType.EvictionAttributes evictionAttributes = config.getRegionAttributes().getEvictionAttributes(); assertThat(evictionAttributes).isNotNull(); assertThat(evictionAttributes.getLruEntryCount().getAction()) .isSameAs(EnumActionDestroyOverflow.OVERFLOW_TO_DISK); assertThat(evictionAttributes.getLruEntryCount().getMaximum()).isEqualTo("1"); }
@Test public void generatesWithEvictionHeapPercentageFlags() { evictionAction = EvictionAction.LOCAL_DESTROY.toString(); evictionObjectSizer = "java.lang.String"; generate(); RegionAttributesType.EvictionAttributes evictionAttributes = config.getRegionAttributes().getEvictionAttributes(); assertThat(evictionAttributes).isNotNull(); assertThat(evictionAttributes.getLruHeapPercentage().getAction()) .isSameAs(EnumActionDestroyOverflow.LOCAL_DESTROY); assertThat(evictionAttributes.getLruHeapPercentage().getClassName()) .isEqualTo("java.lang.String"); }
if (regionAttributes.getEvictionAttributes() != null) { mutator.getEvictionAttributesMutator().setMaximum(Integer .parseInt(regionAttributes.getEvictionAttributes().getLruEntryCount().getMaximum())); if (logger.isDebugEnabled()) { logger.debug("Region successfully altered - eviction attributes max");
@Test public void alterWithCloningEnabled() { RegionAttributesType regionAttributes = getDeltaRegionConfig("alter region --name=regionA --enable-cloning=false") .getRegionAttributes(); assertThat(regionAttributes.isCloningEnabled()).isFalse(); assertThat(regionAttributes.getAsyncEventQueueIds()).isNull(); assertThat(regionAttributes.getDataPolicy()).isNull(); assertThat(regionAttributes.getGatewaySenderIds()).isNull(); assertThat(regionAttributes.getCacheLoader()).isNull(); assertThat(regionAttributes.getCacheWriter()).isNull(); assertThat(regionAttributes.getCacheListeners()).isNotNull().isEmpty(); assertThat(regionAttributes.getEvictionAttributes()).isNull(); assertThat(regionAttributes.getEntryIdleTime()).isNull(); assertThat(regionAttributes.getEntryTimeToLive()).isNull(); assertThat(regionAttributes.getRegionIdleTime()).isNull(); assertThat(regionAttributes.getRegionTimeToLive()).isNull(); }
@Test public void alterWithEvictionMaxWithExistingLruHeapPercentage() { RegionConfig deltaConfig = getDeltaRegionConfig("alter region --name=regionA --eviction-max=20"); // we are saving the eviction-max as a lruEntryCount's maximum value RegionAttributesType.EvictionAttributes.LruEntryCount lruEntryCount = deltaConfig.getRegionAttributes().getEvictionAttributes().getLruEntryCount(); assertThat(lruEntryCount.getMaximum()).isEqualTo("20"); // when there is no eviction attributes at all RegionAttributesType existingAttributes = new RegionAttributesType(); existingRegionConfig.setRegionAttributes(existingAttributes); command.updateConfigForGroup("cluster", cacheConfig, deltaConfig); assertThat(existingAttributes.getEvictionAttributes()).isNull(); // when there is lruHeapPercentage eviction RegionAttributesType.EvictionAttributes evictionAttributes = new RegionAttributesType.EvictionAttributes(); evictionAttributes .setLruHeapPercentage(new RegionAttributesType.EvictionAttributes.LruHeapPercentage()); command.updateConfigForGroup("cluster", cacheConfig, deltaConfig); assertThat(evictionAttributes.getLruEntryCount()).isNull(); assertThat(evictionAttributes.getLruMemorySize()).isNull(); }
@Test public void alterWithEvictionMaxWithExistingLruEntryCount() { RegionConfig deltaConfig = getDeltaRegionConfig("alter region --name=regionA --eviction-max=20"); // we are saving the eviction-max as a lruEntryCount's maximum value RegionAttributesType.EvictionAttributes.LruEntryCount lruEntryCount = deltaConfig.getRegionAttributes().getEvictionAttributes().getLruEntryCount(); assertThat(lruEntryCount.getMaximum()).isEqualTo("20"); // when there is no eviction attributes at all RegionAttributesType existingAttributes = new RegionAttributesType(); existingRegionConfig.setRegionAttributes(existingAttributes); command.updateConfigForGroup("cluster", cacheConfig, deltaConfig); assertThat(existingAttributes.getEvictionAttributes()).isNull(); // when there is lruHeapPercentage eviction RegionAttributesType.EvictionAttributes evictionAttributes = new RegionAttributesType.EvictionAttributes(); existingAttributes.setEvictionAttributes(evictionAttributes); RegionAttributesType.EvictionAttributes.LruEntryCount existingEntryCount = new RegionAttributesType.EvictionAttributes.LruEntryCount(); existingEntryCount.setMaximum("100"); existingEntryCount.setAction(EnumActionDestroyOverflow.LOCAL_DESTROY); evictionAttributes.setLruEntryCount(existingEntryCount); command.updateConfigForGroup("cluster", cacheConfig, deltaConfig); assertThat(evictionAttributes.getLruEntryCount().getMaximum()).isEqualTo("20"); assertThat(evictionAttributes.getLruEntryCount().getAction()) .isEqualTo(EnumActionDestroyOverflow.LOCAL_DESTROY); }
@Test public void alterWithEvictionMaxWithExistingLruMemory() { RegionConfig deltaConfig = getDeltaRegionConfig("alter region --name=regionA --eviction-max=20"); // we are saving the eviction-max as a lruEntryCount's maximum value RegionAttributesType.EvictionAttributes.LruEntryCount lruEntryCount = deltaConfig.getRegionAttributes().getEvictionAttributes().getLruEntryCount(); assertThat(lruEntryCount.getMaximum()).isEqualTo("20"); // when there is no eviction attributes at all RegionAttributesType existingAttributes = new RegionAttributesType(); existingRegionConfig.setRegionAttributes(existingAttributes); command.updateConfigForGroup("cluster", cacheConfig, deltaConfig); assertThat(existingAttributes.getEvictionAttributes()).isNull(); // when there is lruHeapPercentage eviction RegionAttributesType.EvictionAttributes evictionAttributes = new RegionAttributesType.EvictionAttributes(); existingAttributes.setEvictionAttributes(evictionAttributes); RegionAttributesType.EvictionAttributes.LruMemorySize existingMemorySize = new RegionAttributesType.EvictionAttributes.LruMemorySize(); existingMemorySize.setMaximum("100"); existingMemorySize.setAction(EnumActionDestroyOverflow.LOCAL_DESTROY); evictionAttributes.setLruMemorySize(existingMemorySize); command.updateConfigForGroup("cluster", cacheConfig, deltaConfig); assertThat(evictionAttributes.getLruMemorySize().getMaximum()).isEqualTo("20"); assertThat(evictionAttributes.getLruMemorySize().getAction()) .isEqualTo(EnumActionDestroyOverflow.LOCAL_DESTROY); }
if (regionAttributes.getEvictionAttributes() != null) { try { factory.setEvictionAttributes( EvictionAttributesImpl.fromConfig(regionAttributes.getEvictionAttributes())); } catch (Exception e) { throw new IllegalArgumentException(
EvictionAttributes evictionAttributes = deltaAttributes.getEvictionAttributes(); if (evictionAttributes != null) { EvictionAttributes existingEviction = existingAttributes.getEvictionAttributes();