This is an automated email from the ASF dual-hosted git repository. jark pushed a commit to branch ci-add-column in repository https://gitbox.apache.org/repos/asf/fluss.git
commit 205b7261a7064542b56d7a09d9a7f43e225a007a Author: Jark Wu <[email protected]> AuthorDate: Mon Dec 1 20:50:03 2025 +0800 fix failed case --- .../java/org/apache/fluss/server/coordinator/MetadataManager.java | 4 ++-- .../src/main/java/org/apache/fluss/server/zk/ZooKeeperClient.java | 2 +- .../org/apache/fluss/server/log/DroppedTableRecoveryTest.java | 2 +- .../src/test/java/org/apache/fluss/server/log/LogManagerTest.java | 4 ++-- .../java/org/apache/fluss/server/replica/ReplicaManagerTest.java | 5 +++-- .../java/org/apache/fluss/server/replica/ReplicaTestBase.java | 8 ++++---- .../fluss/server/replica/fetcher/ReplicaFetcherThreadTest.java | 2 +- .../test/java/org/apache/fluss/server/zk/ZooKeeperClientTest.java | 4 ++-- 8 files changed, 16 insertions(+), 15 deletions(-) diff --git a/fluss-server/src/main/java/org/apache/fluss/server/coordinator/MetadataManager.java b/fluss-server/src/main/java/org/apache/fluss/server/coordinator/MetadataManager.java index 3d63c8ba1..a074827d8 100644 --- a/fluss-server/src/main/java/org/apache/fluss/server/coordinator/MetadataManager.java +++ b/fluss-server/src/main/java/org/apache/fluss/server/coordinator/MetadataManager.java @@ -297,7 +297,7 @@ public class MetadataManager { // first register a schema to the zk, if then register the table // to zk fails, there's no harm to register a new schema to zk again try { - zookeeperClient.registerSchema(tablePath, tableToCreate.getSchema()); + zookeeperClient.registerFirstSchema(tablePath, tableToCreate.getSchema()); } catch (Exception e) { throw new FlussRuntimeException( "Fail to register schema when creating table " + tablePath, e); @@ -332,7 +332,7 @@ public class MetadataManager { if (!schemaChanges.isEmpty()) { Schema newSchema = SchemaUpdate.applySchemaChanges(table, schemaChanges); // update the schema - zookeeperClient.registerSchema(tablePath, newSchema); + zookeeperClient.registerSchema(tablePath, newSchema, table.getSchemaId() + 1); } } catch (Exception e) { if (e instanceof TableNotExistException) { diff --git a/fluss-server/src/main/java/org/apache/fluss/server/zk/ZooKeeperClient.java b/fluss-server/src/main/java/org/apache/fluss/server/zk/ZooKeeperClient.java index e80006e60..75ca2b7b4 100644 --- a/fluss-server/src/main/java/org/apache/fluss/server/zk/ZooKeeperClient.java +++ b/fluss-server/src/main/java/org/apache/fluss/server/zk/ZooKeeperClient.java @@ -837,7 +837,7 @@ public class ZooKeeperClient implements AutoCloseable { // -------------------------------------------------------------------------------------------- /** Register schema to ZK metadata and return the schema id. */ - public int registerSchema(TablePath tablePath, Schema schema) throws Exception { + public int registerFirstSchema(TablePath tablePath, Schema schema) throws Exception { return registerSchema(tablePath, schema, DEFAULT_SCHEMA_ID); } diff --git a/fluss-server/src/test/java/org/apache/fluss/server/log/DroppedTableRecoveryTest.java b/fluss-server/src/test/java/org/apache/fluss/server/log/DroppedTableRecoveryTest.java index b217d8234..cea1513c5 100644 --- a/fluss-server/src/test/java/org/apache/fluss/server/log/DroppedTableRecoveryTest.java +++ b/fluss-server/src/test/java/org/apache/fluss/server/log/DroppedTableRecoveryTest.java @@ -109,7 +109,7 @@ final class DroppedTableRecoveryTest extends LogTestBase { ZOO_KEEPER_EXTENSION_WRAPPER.getCustomExtension().cleanupRoot(); zkClient.registerTable( tablePath, TableRegistration.newTable(DATA1_TABLE_ID, DATA1_TABLE_DESCRIPTOR)); - zkClient.registerSchema(tablePath, DATA1_SCHEMA); + zkClient.registerFirstSchema(tablePath, DATA1_SCHEMA); } @AfterEach diff --git a/fluss-server/src/test/java/org/apache/fluss/server/log/LogManagerTest.java b/fluss-server/src/test/java/org/apache/fluss/server/log/LogManagerTest.java index 2bbdd2a1c..80e99c2f5 100644 --- a/fluss-server/src/test/java/org/apache/fluss/server/log/LogManagerTest.java +++ b/fluss-server/src/test/java/org/apache/fluss/server/log/LogManagerTest.java @@ -114,10 +114,10 @@ final class LogManagerTest extends LogTestBase { ZOO_KEEPER_EXTENSION_WRAPPER.getCustomExtension().cleanupRoot(); zkClient.registerTable( tablePath1, TableRegistration.newTable(DATA1_TABLE_ID, DATA1_TABLE_DESCRIPTOR)); - zkClient.registerSchema(tablePath1, DATA1_SCHEMA); + zkClient.registerFirstSchema(tablePath1, DATA1_SCHEMA); zkClient.registerTable( tablePath2, TableRegistration.newTable(DATA2_TABLE_ID, DATA2_TABLE_DESCRIPTOR)); - zkClient.registerSchema(tablePath2, DATA2_SCHEMA); + zkClient.registerFirstSchema(tablePath2, DATA2_SCHEMA); } static List<String> partitionProvider() { diff --git a/fluss-server/src/test/java/org/apache/fluss/server/replica/ReplicaManagerTest.java b/fluss-server/src/test/java/org/apache/fluss/server/replica/ReplicaManagerTest.java index a669af2c1..6ec71bc79 100644 --- a/fluss-server/src/test/java/org/apache/fluss/server/replica/ReplicaManagerTest.java +++ b/fluss-server/src/test/java/org/apache/fluss/server/replica/ReplicaManagerTest.java @@ -1593,11 +1593,12 @@ class ReplicaManagerTest extends ReplicaTestBase { zkClient.registerTable( nonePartitionTablePath, TableRegistration.newTable(nonePartitionTableId, DATA1_TABLE_DESCRIPTOR)); - zkClient.registerSchema(nonePartitionTablePath, DATA1_TABLE_DESCRIPTOR.getSchema()); + zkClient.registerFirstSchema(nonePartitionTablePath, DATA1_TABLE_DESCRIPTOR.getSchema()); zkClient.registerTable( partitionTablePath, TableRegistration.newTable(partitionTableId, DATA1_PARTITIONED_TABLE_DESCRIPTOR)); - zkClient.registerSchema(partitionTablePath, DATA1_PARTITIONED_TABLE_DESCRIPTOR.getSchema()); + zkClient.registerFirstSchema( + partitionTablePath, DATA1_PARTITIONED_TABLE_DESCRIPTOR.getSchema()); expectedCoordinatorServer.put( "INTERNAL", new ServerNode(0, "localhost", 1235, ServerType.COORDINATOR)); diff --git a/fluss-server/src/test/java/org/apache/fluss/server/replica/ReplicaTestBase.java b/fluss-server/src/test/java/org/apache/fluss/server/replica/ReplicaTestBase.java index 80d998a4d..ae7e14a87 100644 --- a/fluss-server/src/test/java/org/apache/fluss/server/replica/ReplicaTestBase.java +++ b/fluss-server/src/test/java/org/apache/fluss/server/replica/ReplicaTestBase.java @@ -254,16 +254,16 @@ public class ReplicaTestBase { zkClient.registerTable( DATA1_TABLE_PATH, TableRegistration.newTable(DATA1_TABLE_ID, data1NonPkTableDescriptor)); - zkClient.registerSchema(DATA1_TABLE_PATH, DATA1_SCHEMA); + zkClient.registerFirstSchema(DATA1_TABLE_PATH, DATA1_SCHEMA); zkClient.registerTable( DATA1_TABLE_PATH_PK, TableRegistration.newTable(DATA1_TABLE_ID_PK, DATA1_TABLE_DESCRIPTOR_PK)); - zkClient.registerSchema(DATA1_TABLE_PATH_PK, DATA1_SCHEMA_PK); + zkClient.registerFirstSchema(DATA1_TABLE_PATH_PK, DATA1_SCHEMA_PK); zkClient.registerTable( DATA2_TABLE_PATH, TableRegistration.newTable(DATA2_TABLE_ID, DATA2_TABLE_DESCRIPTOR)); - zkClient.registerSchema(DATA2_TABLE_PATH, DATA2_SCHEMA); + zkClient.registerFirstSchema(DATA2_TABLE_PATH, DATA2_SCHEMA); } protected long registerTableInZkClient( @@ -282,7 +282,7 @@ public class ReplicaTestBase { zkClient.deleteTable(tablePath); } zkClient.registerTable(tablePath, TableRegistration.newTable(tableId, tableDescriptor)); - zkClient.registerSchema(tablePath, schema); + zkClient.registerFirstSchema(tablePath, schema); return tableId; } diff --git a/fluss-server/src/test/java/org/apache/fluss/server/replica/fetcher/ReplicaFetcherThreadTest.java b/fluss-server/src/test/java/org/apache/fluss/server/replica/fetcher/ReplicaFetcherThreadTest.java index ab8bde9df..b1fa9067e 100644 --- a/fluss-server/src/test/java/org/apache/fluss/server/replica/fetcher/ReplicaFetcherThreadTest.java +++ b/fluss-server/src/test/java/org/apache/fluss/server/replica/fetcher/ReplicaFetcherThreadTest.java @@ -356,7 +356,7 @@ public class ReplicaFetcherThreadTest { zkClient.registerTable( DATA1_TABLE_PATH, TableRegistration.newTable(DATA1_TABLE_ID, DATA1_TABLE_DESCRIPTOR)); - zkClient.registerSchema(DATA1_TABLE_PATH, DATA1_SCHEMA); + zkClient.registerFirstSchema(DATA1_TABLE_PATH, DATA1_SCHEMA); } private void makeLeaderAndFollower() { diff --git a/fluss-server/src/test/java/org/apache/fluss/server/zk/ZooKeeperClientTest.java b/fluss-server/src/test/java/org/apache/fluss/server/zk/ZooKeeperClientTest.java index b87ed418e..f42d381fa 100644 --- a/fluss-server/src/test/java/org/apache/fluss/server/zk/ZooKeeperClientTest.java +++ b/fluss-server/src/test/java/org/apache/fluss/server/zk/ZooKeeperClientTest.java @@ -387,7 +387,7 @@ class ZooKeeperClientTest { .withComment("c is third column") .primaryKey("a") .build(); - int registeredSchemaId = zookeeperClient.registerSchema(tablePath, schema); + int registeredSchemaId = zookeeperClient.registerFirstSchema(tablePath, schema); assertThat(registeredSchemaId).isEqualTo(schemaId); assertThat(zookeeperClient.getCurrentSchemaId(tablePath)).isEqualTo(schemaId); @@ -406,7 +406,7 @@ class ZooKeeperClientTest { .withComment("b is second column") .primaryKey("a") .build(); - registeredSchemaId = zookeeperClient.registerSchema(tablePath, schema2); + registeredSchemaId = zookeeperClient.registerSchema(tablePath, schema2, 2); assertThat(registeredSchemaId).isEqualTo(2); assertThat(zookeeperClient.getCurrentSchemaId(tablePath)).isEqualTo(2);
