diff --git a/aws/src/integration/java/org/apache/iceberg/aws/dynamodb/DynamoDbCatalogTest.java b/aws/src/integration/java/org/apache/iceberg/aws/dynamodb/DynamoDbCatalogTest.java index 8d4273c1625f..9074d289b4c7 100644 --- a/aws/src/integration/java/org/apache/iceberg/aws/dynamodb/DynamoDbCatalogTest.java +++ b/aws/src/integration/java/org/apache/iceberg/aws/dynamodb/DynamoDbCatalogTest.java @@ -283,6 +283,18 @@ public void testConcurrentCommits() throws Exception { Assert.assertEquals(2, table.schema().columns().size()); } + @Test + public void testDropNamespace() { + Namespace namespace = Namespace.of(genRandomName()); + catalog.createNamespace(namespace); + catalog.dropNamespace(namespace); + GetItemResponse response = dynamo.getItem(GetItemRequest.builder() + .tableName(catalogTableName) + .key(DynamoDbCatalog.namespacePrimaryKey(namespace)) + .build()); + Assert.assertFalse("namespace must not exist", response.hasItem()); + } + private static String genRandomName() { return UUID.randomUUID().toString().replace("-", ""); } diff --git a/aws/src/main/java/org/apache/iceberg/aws/dynamodb/DynamoDbCatalog.java b/aws/src/main/java/org/apache/iceberg/aws/dynamodb/DynamoDbCatalog.java index f9bef1514604..ebf4964aea85 100644 --- a/aws/src/main/java/org/apache/iceberg/aws/dynamodb/DynamoDbCatalog.java +++ b/aws/src/main/java/org/apache/iceberg/aws/dynamodb/DynamoDbCatalog.java @@ -248,7 +248,7 @@ public boolean dropNamespace(Namespace namespace) throws NamespaceNotEmptyExcept dynamo.deleteItem(DeleteItemRequest.builder() .tableName(awsProperties.dynamoDbTableName()) .key(namespacePrimaryKey(namespace)) - .conditionExpression("attribute_exists(" + namespace + ")") + .conditionExpression("attribute_exists(" + COL_NAMESPACE + ")") .build()); return true; } catch (ConditionalCheckFailedException e) {