Uploaded image for project: 'Apache Drill'
  1. Apache Drill
  2. DRILL-6954

Move commons libs used in UDFs module to the dependency management

    XMLWordPrintableJSON

Details

    Description

      USE CASE

      The networking function ADDRESS_COUNT doesn't work anymore in DRILL 1.15.0

      In 1.14.0 it's OK :

      SELECT address_count('192.168.100.1/24');
      +---------+
      | EXPR$0  |
      +---------+
      | 254     |
      +---------+

      But in 1.15.0 it's NOK

      SELECT address_count('192.168.100.1/24');
      Exception in thread "drill-executor-1" java.lang.NoSuchMethodError: org.apache.commons.net.util.SubnetUtils$SubnetInfo.getAddressCountLong()J
          at org.apache.drill.exec.udfs.NetworkFunctions$AddressCountFunction.eval(NetworkFunctions.java:87)
          at org.apache.drill.exec.expr.fn.interpreter.InterpreterEvaluator.evaluateFunction(InterpreterEvaluator.java:129)
          at org.apache.drill.exec.expr.fn.interpreter.InterpreterEvaluator$EvalVisitor.visitFunctionHolderExpression(InterpreterEvaluator.java:334)
          at org.apache.drill.exec.expr.fn.interpreter.InterpreterEvaluator$EvalVisitor.visitFunctionHolderExpression(InterpreterEvaluator.java:194)
          at org.apache.drill.common.expression.FunctionHolderExpression.accept(FunctionHolderExpression.java:53)
          at org.apache.drill.exec.expr.fn.interpreter.InterpreterEvaluator.evaluateConstantExpr(InterpreterEvaluator.java:69)
          at org.apache.drill.exec.planner.logical.DrillConstExecutor.reduce(DrillConstExecutor.java:151)
          at org.apache.calcite.rel.rules.ReduceExpressionsRule.reduceExpressionsInternal(ReduceExpressionsRule.java:620)
          at org.apache.calcite.rel.rules.ReduceExpressionsRule.reduceExpressions(ReduceExpressionsRule.java:540)
          at org.apache.calcite.rel.rules.ReduceExpressionsRule$ProjectReduceExpressionsRule.onMatch(ReduceExpressionsRule.java:288)
          at org.apache.calcite.plan.volcano.VolcanoRuleCall.onMatch(VolcanoRuleCall.java:212)
          at org.apache.calcite.plan.volcano.VolcanoPlanner.findBestExp(VolcanoPlanner.java:648)
          at org.apache.calcite.tools.Programs$RuleSetProgram.run(Programs.java:339)
      ...
      

       

      Note that other Networking function seems to work well.

       

      Attachments

        Issue Links

          Activity

            People

              arina Arina Ielchiieva
              benj641 benj
              Vova Vysotskyi Vova Vysotskyi
              Votes:
              0 Vote for this issue
              Watchers:
              1 Start watching this issue

              Dates

                Created:
                Updated:
                Resolved: