[
https://issues.apache.org/jira/browse/IGNITE-6866?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=16448320#comment-16448320
]
Dmitriy Pavlov commented on IGNITE-6866:
----------------------------------------
Where can I find PR to review?
> Allocate offheap on client
> --------------------------
>
> Key: IGNITE-6866
> URL: https://issues.apache.org/jira/browse/IGNITE-6866
> Project: Ignite
> Issue Type: Bug
> Components: general
> Affects Versions: 2.1
> Reporter: Alexander Belyak
> Assignee: Alexander Belyak
> Priority: Major
>
> Often client use the same config file as a server and ignite start offheap
> memory for client too... but never use it. How it happens:
> 1) Default memory configuration for server is creating in
> IgnitionEx.initializeConfiguration() method:
> if (!myCfg.isClientMode() && myCfg.getMemoryConfiguration() == null)
> so if ignite configuration already contains memoryConfiguration - it stay
> there
> 2) In IgniteCacheDatabaseSharedManager.anActivate method do nothing only:
> if (cctx.kernalContext().clientNode() &&
> cctx.kernalContext().config().getMemoryConfiguration() == null)
> return;
> So if ignite configuration contains memory configuration - it will be
> allocated. Why its not good:
> 1) Memory allocation spend virtual memory (OS didn't really allocate memory
> before first access to it) and if overcommit_memory strategy is set to
> OVERCOMMIT_NEVER - it can block start client node (maybe first or second one)
> in same host (see: /proc/sys/vm/overcommit_memory and
> /proc/sys/vm/overcommit_ratio)
> 2) In IgniteKernal.checkPhysicalRam() we use maxSize of offheap memory and
> log warning about memory overusage
> Good news only one - often in memory configuration really big only maxSize,
> but initialSize is just about 256Mb so each client really allocate not so
> many RAM.
--
This message was sent by Atlassian JIRA
(v7.6.3#76005)