Details
-
Improvement
-
Status: Resolved
-
Major
-
Resolution: Cannot Reproduce
-
1.5.0, 1.5.1, 1.6.0
-
None
-
None
-
None
Description
I noticed yesterday that SiteConfiguration#getProperties(Map, PropertyFilter) is invoked very frequently (at least 30 times a second on my single machine) to extract the Iterator configurations before a table scan happens. Printing a stack trace shows that this is the dominating caller of getProperties is IteratorUtil#parseIterConf().
What this translates to is repeatedly reading, filtering and adding the same elements to a map to satisfy the AccumuloConfiguration#getPropertiesWithPrefix from an immutable source (accumulo-site.xml). While this is probably not a huge time waste in terms of actual time spent, it's repeatedly happening and will slow things down (especially when the underlying Hadoop Configuration is creating a new HashMap with the contents of the accumulo-site.xml for every call).
Need to think about some options for making the "extract keys with this prefix" case faster from SiteConfiguration.
Attachments
Issue Links
- relates to
-
ACCUMULO-2838 Use resolved props in DefaultConfiguration.get()
- Resolved
-
ACCUMULO-4041 Java reflection eats too much CPU
- Resolved