[ 
https://issues.apache.org/jira/browse/PHOENIX-2570?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=15086036#comment-15086036
 ] 

Samarth Jain commented on PHOENIX-2570:
---------------------------------------

- Transaction manager is now started only for tests that need transactions 
enabled. The transaction tests already set QueryServices.TRANSACTIONS_ENABLED 
to true in their @BeforeClass methods. I made the change to use that variable 
to conditionally start the txManager.
- Decrease the count for index and metadata RPC handlers. We were using the 
default of 30 for both. I noticed in the jstacks that we had almost all 120 
threads sitting idle per JVM. By reducing the handlers to 5, with 5 forked 
JVMs, this change brought down the thread count by 500.
- Reduce the size of thread pool that is created on establishing an 
HConnection. By default, we were creating a thread pool of size 256 on 
establishing every HConnection. By using the value of 10, reduced the thread 
count by ~240. 

I like the idea of making the changes in QueryServicesTestImpl. We would need 
to add corresponding setter methods in QueryServicesOptions.

Will make the change to use the DEFAULT_TRANSACTIONS_ENABLED flag instead.

+1 on making the default to 7. Alternatively, we can leave the default as it is 
and override the value for our jenkins builds.

> Start transaction manager only when needed and reduce number of threads 
> spawned for tests
> -----------------------------------------------------------------------------------------
>
>                 Key: PHOENIX-2570
>                 URL: https://issues.apache.org/jira/browse/PHOENIX-2570
>             Project: Phoenix
>          Issue Type: Bug
>            Reporter: Samarth Jain
>            Assignee: Samarth Jain
>         Attachments: PHOENIX-2570_4.x-HBase-0.98.patch
>
>




--
This message was sent by Atlassian JIRA
(v6.3.4#6332)

Reply via email to