[
https://issues.apache.org/jira/browse/DRILL-3742?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=14952507#comment-14952507
]
ASF GitHub Bot commented on DRILL-3742:
---------------------------------------
Github user jacques-n commented on a diff in the pull request:
https://github.com/apache/drill/pull/148#discussion_r41718161
--- Diff:
common/src/main/java/org/apache/drill/common/logical/data/LogicalOperatorBase.java
---
@@ -86,15 +84,9 @@ public void setMemo(String memo) {
this.memo = memo;
}
- public synchronized static Class<?>[] getSubTypes(final DrillConfig
config) {
- final List<String> packages =
-
config.getStringList(CommonConstants.LOGICAL_OPERATOR_SCAN_PACKAGES);
- final Class<?>[] ops =
- PathScanner.scanForImplementationsArr(LogicalOperator.class,
packages);
- final String lineBrokenList =
- ops.length == 0 ? "" : "\n\t- " + Joiner.on("\n\t- ").join(ops);
- logger.debug("Found {} logical operator classes: {}.", ops.length,
- lineBrokenList);
+ public synchronized static Set<Class<? extends LogicalOperator>>
getSubTypes(final ScanResult classpathScan) {
--- End diff --
Does this still need synchronized?
> Improve classpath scanning to reduce the time it takes
> ------------------------------------------------------
>
> Key: DRILL-3742
> URL: https://issues.apache.org/jira/browse/DRILL-3742
> Project: Apache Drill
> Issue Type: Improvement
> Reporter: Julien Le Dem
> Fix For: Future
>
>
> classpath scanning and function registry take a long time (seconds every
> time).
> We'd want to avoid loading the classes (use bytecode inspection instead) and
> have a build time cache to avoid doing the scanning at startup.
--
This message was sent by Atlassian JIRA
(v6.3.4#6332)