Uploaded image for project: 'Flink'
  1. Flink
  2. FLINK-24862

The user-defined hive udaf/udtf cannot be used normally in hive dialect

    XMLWordPrintableJSON

Details

    Description

      When hive udaf/udtf is used, a validate exception is thrown ,i added a unit test in HiveDialectITCase to reproduce this question:

      @Test
      public void testTemporaryFunctionUDAF() throws Exception {
          // create temp function
          tableEnv.executeSql(
                  String.format(
                          "create temporary function temp_count as '%s'",
                          GenericUDAFCount.class.getName()));
          String[] functions = tableEnv.listUserDefinedFunctions();
          assertArrayEquals(new String[] {"temp_count"}, functions);
          // call the function
          tableEnv.executeSql("create table src(x int)");
          tableEnv.executeSql("insert into src values (1),(-1)").await();
          assertEquals(
                  "[+I[2]]",
                  queryResult(tableEnv.sqlQuery("select temp_count(x) from src")).toString());
          // switch DB and the temp function can still be used
          tableEnv.executeSql("create database db1");
          tableEnv.useDatabase("db1");
          assertEquals(
                  "[+I[2]]",
                  queryResult(tableEnv.sqlQuery("select temp_count(x) from `default`.src"))
                          .toString());
          // drop the function
          tableEnv.executeSql("drop temporary function temp_count");
          functions = tableEnv.listUserDefinedFunctions();
          assertEquals(0, functions.length);
          tableEnv.executeSql("drop temporary function if exists foo");
      } 

      Attachments

        1. image-2021-11-10-21-04-32-660.png
          251 kB
          xiangqiao
        2. image-2021-11-10-20-55-11-988.png
          168 kB
          xiangqiao

        Issue Links

          Activity

            People

              xiangqiao xiangqiao
              xiangqiao xiangqiao
              Votes:
              0 Vote for this issue
              Watchers:
              7 Start watching this issue

              Dates

                Created:
                Updated:
                Resolved: