You are viewing a plain text version of this content. The canonical link for it is here.
Posted to issues@ignite.apache.org by "Vladimir Ozerov (JIRA)" <ji...@apache.org> on 2016/04/28 09:47:13 UTC
[jira] [Updated] (IGNITE-2417) peerClassLoading causes high memory
usage on simple cache operations
[ https://issues.apache.org/jira/browse/IGNITE-2417?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]
Vladimir Ozerov updated IGNITE-2417:
------------------------------------
Fix Version/s: (was: 1.6)
1.7
> peerClassLoading causes high memory usage on simple cache operations
> --------------------------------------------------------------------
>
> Key: IGNITE-2417
> URL: https://issues.apache.org/jira/browse/IGNITE-2417
> Project: Ignite
> Issue Type: Bug
> Components: cache
> Affects Versions: 1.1.4
> Reporter: Pavel Tupitsyn
> Priority: Blocker
> Labels: performance
> Fix For: 1.7
>
>
> Issue surfaced in .NET, but this code can be easily ported to Java. Only one node is started.
> Without peerClassLoading, Java heap usage is aroung 2GB with this code. With peerClassLoading, heap goes to the max and then there is OutOfMemoryException.
> {code}
> var cfg = new GridConfiguration
> {
> SpringConfigUrl = @"example-cache.xml",
> JvmOptions = new List<string> { "-Xms1024m", "-Xmx8192m" },
> };
> using (var grid = GridFactory.Start(cfg))
> {
> var cache = grid.GetOrCreateCache<object, object>("cache_put_get");
> cache.Clear();
> var obj = string.Join("", Enumerable.Range(0, 5 * 1024));
> const int iterations = 100 * 1000;
> for (var i = 0; i < iterations; i++)
> cache.Put(i.ToString(), obj);
> }
> {code}
> Config file:
> {code}
> <beans xmlns="http://www.springframework.org/schema/beans"
> xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
> xmlns:util="http://www.springframework.org/schema/util"
> xsi:schemaLocation="
> http://www.springframework.org/schema/beans
> http://www.springframework.org/schema/beans/spring-beans.xsd
> http://www.springframework.org/schema/util
> http://www.springframework.org/schema/util/spring-util.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.multicast.TcpDiscoveryMulticastIpFinder">
> <property name="addresses">
> <list>
> <!-- In distributed environment, replace with actual host IP address. -->
> <value>127.0.0.1:47500..47501</value>
> </list>
> </property>
> </bean>
> </property>
> </bean>
> </property>
> </bean>
> </beans>
> {code}
--
This message was sent by Atlassian JIRA
(v6.3.4#6332)