[jira] [Updated] (ACCUMULO-4041) Java reflection eats too much CPU

2015-11-13 Thread Eric Newton (JIRA)

 [ 
https://issues.apache.org/jira/browse/ACCUMULO-4041?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
 ]

Eric Newton updated ACCUMULO-4041:
--
Fix Version/s: 1.6.5

> Java reflection eats too much CPU
> -
>
> Key: ACCUMULO-4041
> URL: https://issues.apache.org/jira/browse/ACCUMULO-4041
> Project: Accumulo
>  Issue Type: Bug
>  Components: tserver
>Affects Versions: 1.7.0
> Environment: Ubuntu 15.10, jdk1.8.0_60
>Reporter: Volth
>Assignee: Eric Newton
> Fix For: 1.6.5, 1.7.1, 1.8.0
>
> Attachments: ACCUMULO-4041-01.patch, ACCUMULO-4041-experiment.patch, 
> profiling.jpg
>
>  Time Spent: 50m
>  Remaining Estimate: 0h
>
> This is called so many times that it eats too much CPU, even more than the 
> snappy compressor: http://i.imgur.com/vqX4pFi.png
> Perhaps the annotation data should be copied into regular variables which can 
> be accessed without reflection.
> - org.apache.accumulo.core.client.impl.Tables.getZooCache()
>   - 
> org.apache.accumulo.server.client.HdfsZooInstance.getZooKeepersSessionTimeOut()
> - org.apache.accumulo.core.conf.AccumuloConfiguration.getTimeInMillis()
>   - org.apache.accumulo.core.conf.SiteConfiguration.get()
> - org.apache.accumulo.core.conf.Property.isSensitive()
>   - org.apache.accumulo.core.conf.Property.hasAnnotation()
> - java.lang.Class.getField()  



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


[jira] [Updated] (ACCUMULO-4041) Java reflection eats too much CPU

2015-11-05 Thread Eric Newton (JIRA)

 [ 
https://issues.apache.org/jira/browse/ACCUMULO-4041?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
 ]

Eric Newton updated ACCUMULO-4041:
--
Fix Version/s: 1.8.0
   1.7.1
   Status: Patch Available  (was: Open)

Proposed patch. Could also cache the lookup in SiteConfiguration, too. I hope I 
don't have to so this for all the different annotations.

Patch is against master, but I can back-port it and move it up.


> Java reflection eats too much CPU
> -
>
> Key: ACCUMULO-4041
> URL: https://issues.apache.org/jira/browse/ACCUMULO-4041
> Project: Accumulo
>  Issue Type: Bug
>  Components: tserver
>Affects Versions: 1.7.0
> Environment: Ubuntu 15.10, jdk1.8.0_60
>Reporter: Volth
>Assignee: Eric Newton
> Fix For: 1.7.1, 1.8.0
>
> Attachments: ACCUMULO-4041-01.patch, profiling.jpg
>
>
> This is called so many times that it eats too much CPU, even more than the 
> snappy compressor: http://i.imgur.com/vqX4pFi.png
> Perhaps the annotation data should be copied into regular variables which can 
> be accessed without reflection.
> - org.apache.accumulo.core.client.impl.Tables.getZooCache()
>   - 
> org.apache.accumulo.server.client.HdfsZooInstance.getZooKeepersSessionTimeOut()
> - org.apache.accumulo.core.conf.AccumuloConfiguration.getTimeInMillis()
>   - org.apache.accumulo.core.conf.SiteConfiguration.get()
> - org.apache.accumulo.core.conf.Property.isSensitive()
>   - org.apache.accumulo.core.conf.Property.hasAnnotation()
> - java.lang.Class.getField()  



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


[jira] [Updated] (ACCUMULO-4041) Java reflection eats too much CPU

2015-11-05 Thread Eric Newton (JIRA)

 [ 
https://issues.apache.org/jira/browse/ACCUMULO-4041?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
 ]

Eric Newton updated ACCUMULO-4041:
--
Attachment: ACCUMULO-4041-01.patch

Proposed fix.

> Java reflection eats too much CPU
> -
>
> Key: ACCUMULO-4041
> URL: https://issues.apache.org/jira/browse/ACCUMULO-4041
> Project: Accumulo
>  Issue Type: Bug
>  Components: tserver
>Affects Versions: 1.7.0
> Environment: Ubuntu 15.10, jdk1.8.0_60
>Reporter: Volth
> Attachments: ACCUMULO-4041-01.patch, profiling.jpg
>
>
> This is called so many times that it eats too much CPU, even more than the 
> snappy compressor: http://i.imgur.com/vqX4pFi.png
> Perhaps the annotation data should be copied into regular variables which can 
> be accessed without reflection.
> - org.apache.accumulo.core.client.impl.Tables.getZooCache()
>   - 
> org.apache.accumulo.server.client.HdfsZooInstance.getZooKeepersSessionTimeOut()
> - org.apache.accumulo.core.conf.AccumuloConfiguration.getTimeInMillis()
>   - org.apache.accumulo.core.conf.SiteConfiguration.get()
> - org.apache.accumulo.core.conf.Property.isSensitive()
>   - org.apache.accumulo.core.conf.Property.hasAnnotation()
> - java.lang.Class.getField()  



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


[jira] [Updated] (ACCUMULO-4041) Java reflection eats too much CPU

2015-11-05 Thread Keith Turner (JIRA)

 [ 
https://issues.apache.org/jira/browse/ACCUMULO-4041?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
 ]

Keith Turner updated ACCUMULO-4041:
---
Attachment: ACCUMULO-4041-experiment.patch

In the 01 patch I think the guava cache is per enum, not sure if this was the 
intent?

This got me thinking that we could have some per enum caching (not using guava 
cache).  i attached an incomplete patch with some experiments I did.

> Java reflection eats too much CPU
> -
>
> Key: ACCUMULO-4041
> URL: https://issues.apache.org/jira/browse/ACCUMULO-4041
> Project: Accumulo
>  Issue Type: Bug
>  Components: tserver
>Affects Versions: 1.7.0
> Environment: Ubuntu 15.10, jdk1.8.0_60
>Reporter: Volth
>Assignee: Eric Newton
> Fix For: 1.7.1, 1.8.0
>
> Attachments: ACCUMULO-4041-01.patch, ACCUMULO-4041-experiment.patch, 
> profiling.jpg
>
>
> This is called so many times that it eats too much CPU, even more than the 
> snappy compressor: http://i.imgur.com/vqX4pFi.png
> Perhaps the annotation data should be copied into regular variables which can 
> be accessed without reflection.
> - org.apache.accumulo.core.client.impl.Tables.getZooCache()
>   - 
> org.apache.accumulo.server.client.HdfsZooInstance.getZooKeepersSessionTimeOut()
> - org.apache.accumulo.core.conf.AccumuloConfiguration.getTimeInMillis()
>   - org.apache.accumulo.core.conf.SiteConfiguration.get()
> - org.apache.accumulo.core.conf.Property.isSensitive()
>   - org.apache.accumulo.core.conf.Property.hasAnnotation()
> - java.lang.Class.getField()  



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


[jira] [Updated] (ACCUMULO-4041) Java reflection eats too much CPU

2015-10-28 Thread Volth (JIRA)

 [ 
https://issues.apache.org/jira/browse/ACCUMULO-4041?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
 ]

Volth updated ACCUMULO-4041:

Description: 
This is called so many times that it eats too much CPU, even more than the 
snappy compressor: http://i.imgur.com/vqX4pFi.png
Perhaps the annotation data should be copied into regular variables which can 
be accessed without reflection.

- org.apache.accumulo.core.client.impl.Tables.getZooCache()
  - 
org.apache.accumulo.server.client.HdfsZooInstance.getZooKeepersSessionTimeOut()
- org.apache.accumulo.core.conf.AccumuloConfiguration.getTimeInMillis()
  - org.apache.accumulo.core.conf.SiteConfiguration.get()
- org.apache.accumulo.core.conf.Property.isSensitive()
  - org.apache.accumulo.core.conf.Property.hasAnnotation()
- java.lang.Class.getField()

  was:
This is called so many times that it eats too much CPU:
Perhaps the annotation data should be copied into regular variables which can 
be accessed without reflection.

- org.apache.accumulo.core.client.impl.Tables.getZooCache()
  - 
org.apache.accumulo.server.client.HdfsZooInstance.getZooKeepersSessionTimeOut()
- org.apache.accumulo.core.conf.AccumuloConfiguration.getTimeInMillis()
  - org.apache.accumulo.core.conf.SiteConfiguration.get()
- org.apache.accumulo.core.conf.Property.isSensitive()
  - org.apache.accumulo.core.conf.Property.hasAnnotation()
- java.lang.Class.getField()


> Java reflection eats too much CPU
> -
>
> Key: ACCUMULO-4041
> URL: https://issues.apache.org/jira/browse/ACCUMULO-4041
> Project: Accumulo
>  Issue Type: Bug
>  Components: tserver
>Affects Versions: 1.7.0
> Environment: Ubuntu 15.10, jdk1.8.0_60
>Reporter: Volth
>
> This is called so many times that it eats too much CPU, even more than the 
> snappy compressor: http://i.imgur.com/vqX4pFi.png
> Perhaps the annotation data should be copied into regular variables which can 
> be accessed without reflection.
> - org.apache.accumulo.core.client.impl.Tables.getZooCache()
>   - 
> org.apache.accumulo.server.client.HdfsZooInstance.getZooKeepersSessionTimeOut()
> - org.apache.accumulo.core.conf.AccumuloConfiguration.getTimeInMillis()
>   - org.apache.accumulo.core.conf.SiteConfiguration.get()
> - org.apache.accumulo.core.conf.Property.isSensitive()
>   - org.apache.accumulo.core.conf.Property.hasAnnotation()
> - java.lang.Class.getField()  



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


[jira] [Updated] (ACCUMULO-4041) Java reflection eats too much CPU

2015-10-28 Thread Josh Elser (JIRA)

 [ 
https://issues.apache.org/jira/browse/ACCUMULO-4041?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
 ]

Josh Elser updated ACCUMULO-4041:
-
Attachment: profiling.jpg

Copied over the photo from imgur for historical purposes.

> Java reflection eats too much CPU
> -
>
> Key: ACCUMULO-4041
> URL: https://issues.apache.org/jira/browse/ACCUMULO-4041
> Project: Accumulo
>  Issue Type: Bug
>  Components: tserver
>Affects Versions: 1.7.0
> Environment: Ubuntu 15.10, jdk1.8.0_60
>Reporter: Volth
> Attachments: profiling.jpg
>
>
> This is called so many times that it eats too much CPU, even more than the 
> snappy compressor: http://i.imgur.com/vqX4pFi.png
> Perhaps the annotation data should be copied into regular variables which can 
> be accessed without reflection.
> - org.apache.accumulo.core.client.impl.Tables.getZooCache()
>   - 
> org.apache.accumulo.server.client.HdfsZooInstance.getZooKeepersSessionTimeOut()
> - org.apache.accumulo.core.conf.AccumuloConfiguration.getTimeInMillis()
>   - org.apache.accumulo.core.conf.SiteConfiguration.get()
> - org.apache.accumulo.core.conf.Property.isSensitive()
>   - org.apache.accumulo.core.conf.Property.hasAnnotation()
> - java.lang.Class.getField()  



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