You are viewing a plain text version of this content. The canonical link for it is here.
Posted to issues@drill.apache.org by "Bohdan Kazydub (Jira)" <ji...@apache.org> on 2020/02/03 14:41:00 UTC

[jira] [Created] (DRILL-7565) ANALYZE TABLE ... REFRESH METADATA does not work for empty Parquet files

Bohdan Kazydub created DRILL-7565:
-------------------------------------

             Summary: ANALYZE TABLE ... REFRESH METADATA does not work for empty Parquet files
                 Key: DRILL-7565
                 URL: https://issues.apache.org/jira/browse/DRILL-7565
             Project: Apache Drill
          Issue Type: Bug
    Affects Versions: 1.17.0
            Reporter: Bohdan Kazydub
            Assignee: Vova Vysotskyi


The following query does not create metadata for empty Parquet table: 
{code}
@Test
  public void testAnalyzeEmptyParquetTable() throws Exception {

    String tableName = "parquet/empty/simple/empty_simple.parquet";

    try {
      client.alterSession(ExecConstants.METASTORE_ENABLED, true);
      testBuilder()
          .sqlQuery("ANALYZE TABLE dfs.`%s` REFRESH METADATA", tableName)
          .unOrdered()
          .baselineColumns("ok", "summary")
          .baselineValues(true, String.format("Collected / refreshed metadata for table [dfs.default.%s]", tableName))
          .go();
    } finally {
      run("analyze table dfs.`%s` drop metadata if exists", tableName);
      client.resetSession(ExecConstants.METASTORE_ENABLED);
    }
  }
{code}
but yields
{code}
java.lang.AssertionError: Different number of records returned 
Expected :1
Actual   :0
<Click to see difference>


	at org.apache.drill.test.DrillTestWrapper.compareResults(DrillTestWrapper.java:862)
	at org.apache.drill.test.DrillTestWrapper.compareUnorderedResults(DrillTestWrapper.java:567)
	at org.apache.drill.test.DrillTestWrapper.run(DrillTestWrapper.java:171)
	at org.apache.drill.test.TestBuilder.go(TestBuilder.java:145)
	at org.apache.drill.exec.store.parquet.TestEmptyParquet.testSelectWithDisabledMetastore(TestEmptyParquet.java:430)
	at java.lang.Thread.run(Thread.java:748)
{code}


When changing expected result set to empty ({{TestBuilder#expectsEmptyResultSet()}}), {{SHOW TABLES}} command after {{ANALYZE TABLE ...}} does not show any table.



--
This message was sent by Atlassian Jira
(v8.3.4#803005)