Search in sources :

Example 61 with QueryCacheConfig

use of com.hazelcast.config.QueryCacheConfig in project hazelcast by hazelcast.

the class QueryCacheBasicTest method setup.

// setup a map with 2 query caches, same predicate, one includes values, the other excludes values
@Before
public void setup() {
    Config config = new Config();
    config.getMapConfig(TEST_MAP_NAME).addQueryCacheConfig(new QueryCacheConfig(QUERY_CACHE_NAME).setPredicateConfig(new PredicateConfig(predicate)).setIncludeValue(includeValues));
    if (useNearCache) {
        config.getMapConfig(TEST_MAP_NAME).setNearCacheConfig(new NearCacheConfig().setCacheLocalEntries(true));
    }
    config.setProperty(MapEventPublisherImpl.LISTENER_WITH_PREDICATE_PRODUCES_NATURAL_EVENT_TYPES.getName(), Boolean.toString(useQueryCacheNaturalFilteringStrategy));
    instance = createHazelcastInstance(config);
    map = getMap(instance, "EntryListenerEventTypesTestMap");
    queryCache = map.getQueryCache(QUERY_CACHE_NAME);
}
Also used : QueryCacheConfig(com.hazelcast.config.QueryCacheConfig) PredicateConfig(com.hazelcast.config.PredicateConfig) QueryCacheConfig(com.hazelcast.config.QueryCacheConfig) Config(com.hazelcast.config.Config) NearCacheConfig(com.hazelcast.config.NearCacheConfig) PredicateConfig(com.hazelcast.config.PredicateConfig) NearCacheConfig(com.hazelcast.config.NearCacheConfig) Before(org.junit.Before)

Example 62 with QueryCacheConfig

use of com.hazelcast.config.QueryCacheConfig in project hazelcast by hazelcast.

the class QueryCacheCoalescingTest method getConfig.

private Config getConfig(String mapName, String cacheName) {
    QueryCacheConfig cacheConfig = new QueryCacheConfig(cacheName).setCoalesce(true).setBatchSize(64).setBufferSize(64).setDelaySeconds(3);
    Config config = new Config().setProperty(PARTITION_COUNT.getName(), "1");
    config.getMapConfig(mapName).addQueryCacheConfig(cacheConfig);
    return config;
}
Also used : QueryCacheConfig(com.hazelcast.config.QueryCacheConfig) Config(com.hazelcast.config.Config) QueryCacheConfig(com.hazelcast.config.QueryCacheConfig)

Example 63 with QueryCacheConfig

use of com.hazelcast.config.QueryCacheConfig in project hazelcast by hazelcast.

the class QueryCacheConfigTest method testQueryCacheNameConfiguredWithWildCard.

@Test
public void testQueryCacheNameConfiguredWithWildCard() {
    QueryCacheConfig cacheConfig = new QueryCacheConfig();
    String mapNamePrefix = "MyMap";
    String mapNameNameWithWildcard = mapNamePrefix + "*";
    cacheConfig.setName("myCache");
    cacheConfig.getPredicateConfig().setSql("__key > 10");
    HazelcastInstance hazelcastInstance = createInstanceWithQueryCacheConfig(mapNameNameWithWildcard, cacheConfig);
    IMap<Integer, Integer> map1 = getMap(hazelcastInstance, mapNamePrefix + "_1");
    QueryCache<Integer, Integer> queryCache1 = map1.getQueryCache("myCache");
    assertNotNull(queryCache1);
}
Also used : HazelcastInstance(com.hazelcast.core.HazelcastInstance) QueryCacheConfig(com.hazelcast.config.QueryCacheConfig) ParallelJVMTest(com.hazelcast.test.annotation.ParallelJVMTest) QuickTest(com.hazelcast.test.annotation.QuickTest) Test(org.junit.Test)

Example 64 with QueryCacheConfig

use of com.hazelcast.config.QueryCacheConfig in project hazelcast by hazelcast.

the class QueryCacheInMemoryFormatTest method testInMemoryFormat.

private void testInMemoryFormat(InMemoryFormat inMemoryFormat, int expectedDeserializationCount) {
    SerializableObject.deserializationCount.set(0);
    String mapName = randomString();
    String cacheName = randomString();
    Config config = new Config();
    MapConfig mapConfig = config.getMapConfig(mapName);
    QueryCacheConfig cacheConfig = new QueryCacheConfig(cacheName);
    cacheConfig.setInMemoryFormat(inMemoryFormat);
    PredicateConfig predicateConfig = cacheConfig.getPredicateConfig();
    predicateConfig.setSql("__key > -1");
    mapConfig.addQueryCacheConfig(cacheConfig);
    HazelcastInstance node = createHazelcastInstance(config);
    IMap<Integer, SerializableObject> map = getMap(node, mapName);
    map.put(1, new SerializableObject());
    assertEquals(0, SerializableObject.deserializationCount.get());
    QueryCache<Integer, SerializableObject> cache = map.getQueryCache(cacheName);
    for (int i = 0; i < 10; i++) {
        cache.get(1);
        int expectedInitialCountInLoop = inMemoryFormat == BINARY ? i + 1 : 1;
        assertEquals("Error on iteration " + i, expectedInitialCountInLoop, SerializableObject.deserializationCount.get());
    }
    assertEquals(expectedDeserializationCount, SerializableObject.deserializationCount.get());
}
Also used : AtomicInteger(java.util.concurrent.atomic.AtomicInteger) HazelcastInstance(com.hazelcast.core.HazelcastInstance) QueryCacheConfig(com.hazelcast.config.QueryCacheConfig) Config(com.hazelcast.config.Config) MapConfig(com.hazelcast.config.MapConfig) PredicateConfig(com.hazelcast.config.PredicateConfig) QueryCacheConfig(com.hazelcast.config.QueryCacheConfig) PredicateConfig(com.hazelcast.config.PredicateConfig) MapConfig(com.hazelcast.config.MapConfig)

Example 65 with QueryCacheConfig

use of com.hazelcast.config.QueryCacheConfig in project hazelcast by hazelcast.

the class QueryCacheListenerTest method listenerShouldBeRegistered_whenConfiguredProgrammatically.

@Test
public void listenerShouldBeRegistered_whenConfiguredProgrammatically() {
    MapConfig mapConfig = new MapConfig(mapName);
    final QueryCacheAdditionListener listener = new QueryCacheAdditionListener();
    QueryCacheConfig queryCacheConfig = new QueryCacheConfig(cacheName).setPredicateConfig(new PredicateConfig(TRUE_PREDICATE)).addEntryListenerConfig(new EntryListenerConfig(listener, true, true));
    mapConfig.addQueryCacheConfig(queryCacheConfig);
    Config config = new Config();
    config.addMapConfig(mapConfig);
    IMap<Integer, Employee> map = getIMap(config);
    // trigger creation of the query cache
    map.getQueryCache(cacheName);
    populateMap(map, 100);
    assertTrueEventually(() -> assertEquals(100, listener.getAddedEventCount()));
    assertTrueAllTheTime(() -> assertEquals(100, listener.getAddedEventCount()), 5);
}
Also used : AtomicInteger(java.util.concurrent.atomic.AtomicInteger) Employee(com.hazelcast.map.impl.querycache.utils.Employee) QueryCacheConfig(com.hazelcast.config.QueryCacheConfig) PredicateConfig(com.hazelcast.config.PredicateConfig) MapConfig(com.hazelcast.config.MapConfig) PredicateConfig(com.hazelcast.config.PredicateConfig) EntryListenerConfig(com.hazelcast.config.EntryListenerConfig) QueryCacheConfig(com.hazelcast.config.QueryCacheConfig) Config(com.hazelcast.config.Config) MapConfig(com.hazelcast.config.MapConfig) EntryListenerConfig(com.hazelcast.config.EntryListenerConfig) ParallelJVMTest(com.hazelcast.test.annotation.ParallelJVMTest) QuickTest(com.hazelcast.test.annotation.QuickTest) Test(org.junit.Test)

Aggregations

QueryCacheConfig (com.hazelcast.config.QueryCacheConfig)80 Config (com.hazelcast.config.Config)29 Test (org.junit.Test)29 QuickTest (com.hazelcast.test.annotation.QuickTest)28 MapConfig (com.hazelcast.config.MapConfig)27 HazelcastInstance (com.hazelcast.core.HazelcastInstance)21 ParallelJVMTest (com.hazelcast.test.annotation.ParallelJVMTest)20 PredicateConfig (com.hazelcast.config.PredicateConfig)17 ClientConfig (com.hazelcast.client.config.ClientConfig)15 EntryListenerConfig (com.hazelcast.config.EntryListenerConfig)14 AttributeConfig (com.hazelcast.config.AttributeConfig)8 Employee (com.hazelcast.map.impl.querycache.utils.Employee)8 Before (org.junit.Before)8 IndexConfig (com.hazelcast.config.IndexConfig)7 AssertTask (com.hazelcast.test.AssertTask)7 Map (java.util.Map)7 AtomicInteger (java.util.concurrent.atomic.AtomicInteger)7 EvictionConfig (com.hazelcast.config.EvictionConfig)6 NearCacheConfig (com.hazelcast.config.NearCacheConfig)5 EventLostEvent (com.hazelcast.map.EventLostEvent)5