Hello! Maybe Hibernate has its own cache (L1?) and it does not get evicted synchronously. Unfortunately since you're using an unreleased module you will have to debug it on your side, I guess. Maybe team up with module's author.
Regards, -- Ilya Kasnacheev пн, 27 мая 2019 г. в 16:16, Tomasz Prus <to.p...@gmail.com>: > We use Hibernate 5.3 i our application so I found on this forum, that I > can build Ignite from source (master). Lastly I tried also with version > 2.7.2 and Hibernate 4 but this wrong behavior still occurs. > Everything works fine for one node but when we add the same cache > configuration for second module in our application, new added objects are > missing in Hibernate L2 cache in one of two nodes but exists in another (it > happens randomly). It is interesting that if i run "evict" twice, > everything works good. Maybe Hibernate evict doesn't work as expected our > there is some fail between node-to-node communication? I don't think that > could be an error in our application because I tried today with Hazelcast > cache, and it worked. > > pon., 27 maj 2019 o 14:58 Ilya Kasnacheev <ilya.kasnach...@gmail.com> > napisał(a): > >> Hello! >> >> Don't see why it won't work for you from the first try. BTW, what's your >> version? I ask because hibernate_5.3 is unreleased. >> >> Regards, >> -- >> Ilya Kasnacheev >> >> >> пн, 27 мая 2019 г. в 10:30, Tomasz Prus <to.p...@gmail.com>: >> >>> Any ideas? >>> >>> czw., 23 maj 2019 o 15:22 Tomasz Prus <to.p...@gmail.com> napisał(a): >>> >>>> Interestingly, when i run evictCollectionData twice, it works. >>>> >>>> czw., 23 maj 2019 o 13:39 Tomasz Prus <to.p...@gmail.com> napisał(a): >>>> >>>>> Hello, >>>>> I have configured Ignite cache with Hibernate 2L cache for to >>>>> instances and almost everything works fine but when trying to evict >>>>> collection data after new entity creation, seems that eviction doesn't >>>>> work >>>>> because there is no new entity in that evicted collection. My configs: >>>>> >>>>> <bean id="transactional-cache" >>>>> class="org.apache.ignite.configuration.CacheConfiguration" >>>>> abstract="true"> >>>>> <property name="cacheMode" value="REPLICATED"/> >>>>> <property name="atomicityMode" value="TRANSACTIONAL"/> >>>>> <property name="writeSynchronizationMode" value="FULL_SYNC"/> >>>>> <property name="statisticsEnabled" value="true"/> >>>>> <property name="nearConfiguration"> >>>>> <bean >>>>> class="org.apache.ignite.configuration.NearCacheConfiguration"/> >>>>> </property> >>>>> </bean> >>>>> >>>>> <bean id="igniteInstance" >>>>> class="org.apache.ignite.configuration.IgniteConfiguration"> >>>>> <property name="peerClassLoadingEnabled" value="true"/> >>>>> <property name="igniteInstanceName" value="myGrid"/> >>>>> <property name="cacheConfiguration"><list> >>>>> <!-- >>>>> Configurations for entity caches. >>>>> --> >>>>> <bean parent="transactional-cache"> >>>>> <property name="name" >>>>> value="org.hibernate.cache.spi.UpdateTimestampsCache"/> >>>>> </bean> >>>>> >>>>> <bean parent="transactional-cache"> >>>>> <property name="name" >>>>> value="org.hibernate.cache.internal.StandardQueryCache"/> >>>>> </bean> >>>>> <bean parent="transactional-cache"> >>>>> <property name="name" >>>>> value="default-query-results-region"/> >>>>> </bean> >>>>> <bean parent="transactional-cache"> >>>>> <property name="name" >>>>> value="default-update-timestamps-region"/> >>>>> </bean> >>>>> >>>>> <bean parent="transactional-cache"> >>>>> <property name="name" value="lock-cache"/> >>>>> </bean> >>>>> <bean parent="transactional-cache"> >>>>> <property name="name" value="query.ProjectDAO"/> >>>>> </bean> >>>>> </list> >>>>> </property> >>>>> <property name="discoverySpi"> >>>>> <bean >>>>> class="org.apache.ignite.spi.discovery.tcp.TcpDiscoverySpi"> >>>>> <property name="ipFinder"> >>>>> <bean >>>>> class="org.apache.ignite.spi.discovery.tcp.ipfinder.multicast.TcpDiscoveryMulticastIpFinder"> >>>>> <property name="multicastGroup" >>>>> value="228.10.10.157"/> >>>>> </bean> >>>>> </property> >>>>> </bean> >>>>> </property> >>>>> </bean> >>>>> ... >>>>> <bean id="dataSource" class = >>>>> "com.mchange.v2.c3p0.ComboPooledDataSource" destroy-method="close"> >>>>> <property name="driverClass" >>>>> value="${hibernate.connection.driver_class}" /> >>>>> <property name="jdbcUrl" value="${hibernate_connection_url}" /> >>>>> <property name="user" value="${hibernate.connection.username}" >>>>> /> >>>>> <property name="password" >>>>> value="${hibernate.connection.password}" /> >>>>> >>>>> <!-- these are C3P0 properties --> >>>>> <property name="acquireIncrement" value="2" /> >>>>> <property name="initialPoolSize" value="30" /> >>>>> <property name="minPoolSize" value="30" /> >>>>> <property name="maxPoolSize" value="50" /> >>>>> <property name="maxIdleTime" value="60" /> >>>>> >>>>> <property name="acquireRetryAttempts" value="3" /> >>>>> <property name="acquireRetryDelay" value="3000" /> >>>>> >>>>> <property name="idleConnectionTestPeriod" value="3600" /> >>>>> <property name="preferredTestQuery" value="SELECT 1 " /> >>>>> >>>>> <property name="maxIdleTimeExcessConnections" value="3600" /> >>>>> <property name="maxConnectionAge" value="7200" /> >>>>> >>>>> <property name="checkoutTimeout" value="50000" /> >>>>> >>>>> </bean> >>>>> >>>>> <bean id="sessionFactory" >>>>> class="org.springframework.orm.hibernate5.LocalSessionFactoryBean" >>>>> depends-on="igniteInstance"> >>>>> >>>>> <property name="dataSource"> >>>>> <ref bean="dataSource"/> >>>>> </property> >>>>> >>>>> <property name="hibernateProperties"> >>>>> <props> >>>>> <!--<prop key="hibernate.show_sql">true</prop>--> >>>>> <prop >>>>> key="hibernate.session_factory_name">our-session-factory</prop> >>>>> <prop >>>>> key="hibernate.session_factory_name_is_jndi">false</prop> >>>>> <prop >>>>> key="hibernate.dialect">${hibernate.dialect}</prop> >>>>> <prop key="hibernate.generate_statistics">false</prop> >>>>> <prop key="hibernate.connection.useUnicode">true</prop> >>>>> <prop >>>>> key="hibernate.connection.characterEncoding">UTF-8</prop> >>>>> <prop key="hibernate.cache.use_query_cache">true</prop> >>>>> <prop >>>>> key="hibernate.cache.use_second_level_cache">true</prop> >>>>> <prop >>>>> key="hibernate.cache.region.factory_class">org.apache.ignite.cache.hibernate.HibernateRegionFactory</prop> >>>>> <prop >>>>> key="org.apache.ignite.hibernate.default_access_type">READ_WRITE</prop> >>>>> <prop >>>>> key="org.apache.ignite.hibernate.ignite_instance_name">myGrid</prop> >>>>> </props> >>>>> </property> >>>>> >>>>> If i use only one instance (one application), eviction works fine. Can >>>>> You help me? >>>>> >>>>