diff --git a/plugin/trino-bigquery/src/main/java/io/trino/plugin/bigquery/BigQueryMetadata.java b/plugin/trino-bigquery/src/main/java/io/trino/plugin/bigquery/BigQueryMetadata.java index 29b46ee5ed21..6b0e7de7f433 100644 --- a/plugin/trino-bigquery/src/main/java/io/trino/plugin/bigquery/BigQueryMetadata.java +++ b/plugin/trino-bigquery/src/main/java/io/trino/plugin/bigquery/BigQueryMetadata.java @@ -418,6 +418,9 @@ public void createTable(ConnectorSession session, ConnectorTableMetadata tableMe @Override public ConnectorOutputTableHandle beginCreateTable(ConnectorSession session, ConnectorTableMetadata tableMetadata, Optional layout, RetryMode retryMode) { + if (retryMode != RetryMode.NO_RETRIES) { + throw new TrinoException(NOT_SUPPORTED, "This connector does not support query retries"); + } return createTable(session, tableMetadata); } diff --git a/plugin/trino-bigquery/src/test/java/io/trino/plugin/bigquery/TestBigQueryCaseInsensitiveMapping.java b/plugin/trino-bigquery/src/test/java/io/trino/plugin/bigquery/TestBigQueryCaseInsensitiveMapping.java index afab98d915c4..03b833f78125 100644 --- a/plugin/trino-bigquery/src/test/java/io/trino/plugin/bigquery/TestBigQueryCaseInsensitiveMapping.java +++ b/plugin/trino-bigquery/src/test/java/io/trino/plugin/bigquery/TestBigQueryCaseInsensitiveMapping.java @@ -226,6 +226,25 @@ public void testTableNameClash() } } + @Test + public void testCreateSchema() + { + String schemaName = "Test_Create_Case_Sensitive_" + randomTableSuffix(); + assertUpdate("CREATE SCHEMA " + schemaName.toLowerCase(ENGLISH)); + assertQuery(format("SELECT schema_name FROM information_schema.schemata WHERE schema_name = '%s'", schemaName.toLowerCase(ENGLISH)), format("VALUES '%s'", schemaName.toLowerCase(ENGLISH))); + assertUpdate("DROP SCHEMA " + schemaName.toLowerCase(ENGLISH)); + } + + @Test + public void testCreateSchemaNameClash() + throws Exception + { + String schemaName = "Test_Create_Case_Sensitive_Clash_" + randomTableSuffix(); + try (AutoCloseable schema = withSchema(schemaName)) { + assertQueryFails("CREATE SCHEMA " + schemaName.toLowerCase(ENGLISH), ".*Schema 'bigquery\\.\\Q" + schemaName.toLowerCase(ENGLISH) + "\\E' already exists"); + } + } + @Test public void testDropSchema() throws Exception