From 7252007e0c10225cc7b3c25f1ed51d08163e36c5 Mon Sep 17 00:00:00 2001 From: Kodai Doki <52027276+KodaiD@users.noreply.github.com> Date: Fri, 25 Jul 2025 09:44:50 +0000 Subject: [PATCH 1/2] Empty commit [skip ci] From a99744a11ac91e9190f31b879698f236e3bd05a9 Mon Sep 17 00:00:00 2001 From: Kodai Doki <52027276+KodaiD@users.noreply.github.com> Date: Fri, 25 Jul 2025 18:44:31 +0900 Subject: [PATCH 2/2] Resolve conflicts --- .../db/storage/cassandra/CassandraAdmin.java | 18 +++++++++++++++--- 1 file changed, 15 insertions(+), 3 deletions(-) diff --git a/core/src/main/java/com/scalar/db/storage/cassandra/CassandraAdmin.java b/core/src/main/java/com/scalar/db/storage/cassandra/CassandraAdmin.java index 3b85d11152..f229edb487 100644 --- a/core/src/main/java/com/scalar/db/storage/cassandra/CassandraAdmin.java +++ b/core/src/main/java/com/scalar/db/storage/cassandra/CassandraAdmin.java @@ -218,7 +218,9 @@ private TableMetadata createTableMetadata(com.datastax.driver.core.TableMetadata ClusteringOrder clusteringOrder = metadata.getClusteringOrder().get(i); builder.addClusteringKey(clusteringColumnName, convertOrder(clusteringOrder)); } - metadata.getIndexes().forEach(i -> builder.addSecondaryIndex(i.getTarget())); + metadata + .getIndexes() + .forEach(i -> builder.addSecondaryIndex(unquoteIfNecessary(i.getTarget()))); return builder.build(); } @@ -318,8 +320,8 @@ public void addNewColumnToTable( } try { String alterTableQuery = - SchemaBuilder.alterTable(namespace, table) - .addColumn(columnName) + SchemaBuilder.alterTable(quoteIfNecessary(namespace), quoteIfNecessary(table)) + .addColumn(quoteIfNecessary(columnName)) .type(toCassandraDataType(columnType)) .getQueryString(); @@ -524,4 +526,14 @@ public String toString() { return strategyName; } } + + private String unquoteIfNecessary(String identifier) { + if (identifier == null) { + return null; + } + if (identifier.length() >= 2 && identifier.startsWith("\"") && identifier.endsWith("\"")) { + return identifier.substring(1, identifier.length() - 1).replace("\"\"", "\""); + } + return identifier; + } }