ignite-dev mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From Vasiliy Sisko <vsi...@gridgain.com>
Subject Pool size limits
Date Fri, 22 Jan 2016 03:09:08 GMT
Hello.

I found that IgniteConfiguration.utilityCachePoolSize and
IgniteConfiguration.marshCachePoolSize are limited by a constant
IgniteConfiguration.DFLT_SYSTEM_MAX_THREAD_CNT that is equals to
DFLT_PUBLIC_THREAD_CNT and does not used any more.

IgnitionEx:1661:
            utilityCacheExecSvc = new IgniteThreadPoolExecutor(
                "utility",
                cfg.getGridName(),
>>                myCfg.getUtilityCacheThreadPoolSize(),
>>                DFLT_SYSTEM_MAX_THREAD_CNT,
                myCfg.getUtilityCacheKeepAliveTime(),
                new
LinkedBlockingQueue<Runnable>(DFLT_SYSTEM_THREADPOOL_QUEUE_CAP));

            marshCacheExecSvc = new IgniteThreadPoolExecutor(
                "marshaller-cache",
                cfg.getGridName(),
>>                myCfg.getMarshallerCacheThreadPoolSize(),
>>                DFLT_SYSTEM_MAX_THREAD_CNT,
                myCfg.getMarshallerCacheKeepAliveTime(),
                new
LinkedBlockingQueue<Runnable>(DFLT_SYSTEM_THREADPOOL_QUEUE_CAP));

We can configure these properties more then default limit and catch runtime
exception.

DFLT_PUBLIC_THREAD_CNT configure default value of
IgniteConfiguration.pubPoolSize.

I think we should limit these pool sizes by value of
IgniteConfiguration.pubPoolSize, f.e.:

            utilityCacheExecSvc = new IgniteThreadPoolExecutor(
                "utility",
                cfg.getGridName(),
                myCfg.getUtilityCacheThreadPoolSize(),
>>                myCfg.getPublicThreadPoolSize(),
                myCfg.getUtilityCacheKeepAliveTime(),
                new
LinkedBlockingQueue<Runnable>(DFLT_SYSTEM_THREADPOOL_QUEUE_CAP));

            marshCacheExecSvc = new IgniteThreadPoolExecutor(
                "marshaller-cache",
                cfg.getGridName(),
                myCfg.getMarshallerCacheThreadPoolSize(),
>>                myCfg.getPublicThreadPoolSize(),
                myCfg.getMarshallerCacheKeepAliveTime(),
                new
LinkedBlockingQueue<Runnable>(DFLT_SYSTEM_THREADPOOL_QUEUE_CAP));

Thoughts?

-- 
Vasiliy Sisko
GridGain Systems
www.gridgain.com

Mime
  • Unnamed multipart/alternative (inline, None, 0 bytes)
View raw message