From 514fea339b79c8c7ef99882abc734553060b531b Mon Sep 17 00:00:00 2001 From: SURYA SUMANTH N Date: Thu, 24 Jun 2021 17:00:00 +0530 Subject: [PATCH] Fix Adding Cluster Name for Refresh Meta Cache --- .../plugin/hive/TestHiveIntegrationSmokeTest.java | 7 +++++++ .../src/main/antlr4/io/prestosql/sql/parser/SqlBase.g4 | 2 +- .../src/main/java/io/prestosql/sql/parser/AstBuilder.java | 2 +- 3 files changed, 9 insertions(+), 2 deletions(-) diff --git a/presto-hive/src/test/java/io/prestosql/plugin/hive/TestHiveIntegrationSmokeTest.java b/presto-hive/src/test/java/io/prestosql/plugin/hive/TestHiveIntegrationSmokeTest.java index c28fbc4df..2b4cbe58b 100644 --- a/presto-hive/src/test/java/io/prestosql/plugin/hive/TestHiveIntegrationSmokeTest.java +++ b/presto-hive/src/test/java/io/prestosql/plugin/hive/TestHiveIntegrationSmokeTest.java @@ -6532,4 +6532,11 @@ public class TestHiveIntegrationSmokeTest assertEquals(sortResult.getMaterializedRows(), hashResult.getMaterializedRows()); assertUpdate("DROP TABLE lineitem_orderkey_partkey_Distinct"); } + + @Test + public void testFailRefreshMetaCache() + { + assertQueryFails("REFRESH META CACHE FOR abc", "Catalog does not exist:abc"); + assertQueryFails("REFRESH META CACHE FOR abc.def", "Catalog does not exist:abc.def"); + } } diff --git a/presto-parser/src/main/antlr4/io/prestosql/sql/parser/SqlBase.g4 b/presto-parser/src/main/antlr4/io/prestosql/sql/parser/SqlBase.g4 index 6620c8f9f..5b5edb9d6 100644 --- a/presto-parser/src/main/antlr4/io/prestosql/sql/parser/SqlBase.g4 +++ b/presto-parser/src/main/antlr4/io/prestosql/sql/parser/SqlBase.g4 @@ -150,7 +150,7 @@ statement | SET PATH pathSpecification #setPath | VACUUM TABLE qualifiedName (FULL (UNIFY)?)? (PARTITION partition=string)? (AND_WAIT)? #vacuumTable - | REFRESH META CACHE (FOR (catalog=identifier))? #refreshMetadataCache + | REFRESH META CACHE (FOR (cluster=identifier '.')? catalog=identifier)? #refreshMetadataCache ; assignmentList diff --git a/presto-parser/src/main/java/io/prestosql/sql/parser/AstBuilder.java b/presto-parser/src/main/java/io/prestosql/sql/parser/AstBuilder.java index 8fc4e673f..f18684d15 100644 --- a/presto-parser/src/main/java/io/prestosql/sql/parser/AstBuilder.java +++ b/presto-parser/src/main/java/io/prestosql/sql/parser/AstBuilder.java @@ -488,7 +488,7 @@ class AstBuilder @Override public Node visitRefreshMetadataCache(SqlBaseParser.RefreshMetadataCacheContext context) { - Optional identifier = createIdentifier(null, context.catalog); + Optional identifier = createIdentifier(context.cluster, context.catalog); return new RefreshMetadataCache(getLocation(context), identifier); }