Hello! Unfortunately it's hard to say without looking at complete logs from your nodes. There's too many questions and not enough clues.
Regards, -- Ilya Kasnacheev пт, 6 дек. 2019 г. в 03:56, Steven.Gerdes <steven.ger...@shareworks.com>: > The production instance has issues with ignite heaping out, the solution we > attempted to implement was to set the default data region to have swap > enabled and also set a eviction policy on the server with a maxMemorySize > such that it was much less then the Xmx jvm memory size. > > Testing locally with a dev version of our server (weblogic acting as ignite > with client mode enabled) and the docker instance of ignite 2.7.6 it > appears > as though using this configuration does not solve ignites instability > issues. > > Many different configurations were attempted (for the full config see > bottom > of post). The desired configuration would be one which the client has no > cache and the server does all the caching. That was done with attempting > the > below on the server: > > <property name="onheapCacheEnabled" value="true"/> > > <property name="evictionPolicyFactory"> > > <bean > class="org.apache.ignite.cache.eviction.lru.LruEvictionPolicyFactory"> > <property name="maxMemorySize" value="#{50L * 1024 * 1024}"/> > > <property name="maxSize" value="1000000000"/> > </bean> > </property> > > With the above server configuration 3 attempts were made to the client > configuration: > > 1. Mirrored configuration on the client > 2. Similar configuration with maxSize set to 0 (an attempt at ensuring the > client didn't try to cache) > 3. enabling IGNITE_SKIP_CONFIGURATION_CONSISTENCY_CHECK and not having any > eviction policy for the client > > All three of these configurations resulted in the client weblogic to > disconnect from the cluster and finally to die (while attempting to > reconnect to ignite) > > Error from client before death: > | Servlet failed with an Exception > | java.lang.IllegalStateException: Grid is in invalid state to perform > this operation. It either not started yet or has already being or have > stopped [igniteInstanceName=null, state=STOPPING] > | at > > org.apache.ignite.internal.GridKernalGatewayImpl.illegalState(GridKernalGatewayImpl.java:201) > | at > > org.apache.ignite.internal.GridKernalGatewayImpl.readLock(GridKernalGatewayImpl.java:95) > | at > org.apache.ignite.internal.IgniteKernal.guard(IgniteKernal.java:3886) > | at > > org.apache.ignite.internal.IgniteKernal.transactions(IgniteKernal.java:2862) > | at > > org.apache.ignite.cache.websession.CustomWebSessionFilter.init(CustomWebSessionFilter.java:273) > | Truncated. see log file for complete stacktrace > > Error in ignitevisorcmd.sh: > SEVERE: Blocked system-critical thread has been detected. This can lead to > cluster-wide undefined behaviour [threadName=tcp-disco-msg-worker, > blockedFor=17s] > Dec 06, 2019 12:17:27 AM java.util.logging.LogManager$RootLogger log > SEVERE: Critical system error detected. Will be handled accordingly to > configured handler [hnd=StopNodeFailureHandler > [super=AbstractFailureHandler > [ignoredFailureTypes=[SYSTEM_WORKER_BLOCKED, SEGMENTATION]]], > failureCtx=FailureContext [type=SYSTEM_WORKER_BLOCKED, err=class > o.a.i.IgniteException: GridWorker [name=tcp-disco-msg-worker, > igniteInstanceName=null, finished=false, heartbeatTs=1575591430824]]] > class org.apache.ignite.IgniteException: GridWorker > [name=tcp-disco-msg-worker, igniteInstanceName=null, finished=false, > heartbeatTs=1575591430824] > at > > org.apache.ignite.internal.IgnitionEx$IgniteNamedInstance$2.apply(IgnitionEx.java:1831) > at > > org.apache.ignite.internal.IgnitionEx$IgniteNamedInstance$2.apply(IgnitionEx.java:1826) > at > > org.apache.ignite.internal.worker.WorkersRegistry.onIdle(WorkersRegistry.java:233) > at > > org.apache.ignite.internal.util.worker.GridWorker.onIdle(GridWorker.java:297) > at > > org.apache.ignite.internal.processors.timeout.GridTimeoutProcessor$TimeoutWorker.body(GridTimeoutProcessor.java:221) > at > org.apache.ignite.internal.util.worker.GridWorker.run(GridWorker.java:120) > at java.lang.Thread.run(Thread.java:748) > > Sometimes in testing it was possible for the client to successfully > reconnect. But I could not see why it was inconsistent with this behavior. > > A separate test was conducted in which there was no eviction policy or > on-heap enabled on either the client or server. This seems to be more > stable. > > Is there something incorrect with the configuration? Is there something > missing that would allow us to use on-heap memory without it causing issue > with our client? > > > > > Apendix: > > Client Configuration: > <?xml version="1.0" encoding="UTF-8"?> > > <beans xmlns="http://www.springframework.org/schema/beans" > xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation=" > http://www.springframework.org/schema/beans > http://www.springframework.org/schema/beans/spring-beans.xsd"> > <bean id="grid.cfg" > class="org.apache.ignite.configuration.IgniteConfiguration"> > <property name="clientMode" value="true"/> > <property name="peerClassLoadingEnabled" value="true"/> > <property name="discoverySpi"> > <bean class="org.apache.ignite.spi.discovery.tcp.TcpDiscoverySpi"> > <property name="forceServerMode" value="true"/> > <property name="ipFinder"> > <bean > > class="org.apache.ignite.spi.discovery.tcp.ipfinder.vm.TcpDiscoveryVmIpFinder"> > <property name="addresses"> > <list> > <value>127.0.0.1:47500..47509</value> > </list> > </property> > </bean> > </property> > </bean> > </property> > <property name="cacheConfiguration"> > <list> > <bean class="org.apache.ignite.configuration.CacheConfiguration"> > <property name="name" value="WebCache"/> > <property name="cacheMode" value="REPLICATED"/> > </bean> > </list> > </property> > <property name="failureHandler"> > <bean class="org.apache.ignite.failure.StopNodeFailureHandler"> > <property name="ignoredFailureTypes"> > <list> > <value>SYSTEM_WORKER_BLOCKED</value> > <value>SEGMENTATION</value> > </list> > </property> > </bean> > </property> > <property name="lifecycleBeans"> > <list> > <bean class="com.company.common.ignite.CustomIgniteLifecycleBean"/> > </list> > </property> > </bean> > </beans> > > > Server Configuration (used with docker image apache-ignite 2.7.6): > <?xml version="1.0" encoding="UTF-8"?> > > <beans xmlns="http://www.springframework.org/schema/beans" > xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" > xsi:schemaLocation=" http://www.springframework.org/schema/beans > http://www.springframework.org/schema/beans/spring-beans.xsd"> > <bean id="grid.cfg" > class="org.apache.ignite.configuration.IgniteConfiguration"> > <property name="peerClassLoadingEnabled" value="true"/> > <property name="discoverySpi"> > <bean class="org.apache.ignite.spi.discovery.tcp.TcpDiscoverySpi"> > <property name="ipFinder"> > <bean > > class="org.apache.ignite.spi.discovery.tcp.ipfinder.vm.TcpDiscoveryVmIpFinder"> > <property name="addresses"> > <list> > <value>127.0.0.1:47500..47509</value> > </list> > </property> > </bean> > </property> > </bean> > </property> > <property name="dataStorageConfiguration"> > <bean > class="org.apache.ignite.configuration.DataStorageConfiguration"> > <property name="defaultDataRegionConfiguration"> > <bean > class="org.apache.ignite.configuration.DataRegionConfiguration"> > <property name="initialSize" value="#{10L * 1024 * 1024}"/> > <property name="maxSize" value="#{20L * 1024 * 1024 * 1024}"/> > <property name="swapPath" value="/opt/ignite/"/> > </bean> > </property> > </bean> > </property> > <property name="cacheConfiguration"> > <list> > <bean class="org.apache.ignite.configuration.CacheConfiguration"> > <property name="name" value="WebCache"/> > <property name="cacheMode" value="REPLICATED"/> > </bean> > </list> > </property> > <property name="failureHandler"> > <bean class="org.apache.ignite.failure.StopNodeFailureHandler"> > <property name="ignoredFailureTypes"> > <list> > <value>SYSTEM_WORKER_BLOCKED</value> > <value>SEGMENTATION</value> > </list> > </property> > </bean> > </property> > </bean> > </beans> > > > > > -- > Sent from: http://apache-ignite-users.70518.x6.nabble.com/ >