Skip to content

Commit 5d1fc42

Browse files
committed
fix review comment
1 parent 7c619ca commit 5d1fc42

File tree

4 files changed

+15
-39
lines changed

4 files changed

+15
-39
lines changed

fluss-server/src/main/java/org/apache/fluss/server/kv/autoinc/AutoIncProcessor.java

Lines changed: 1 addition & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -46,22 +46,17 @@ static AutoIncProcessor create(
4646
Schema schema,
4747
ZooKeeperClient zkClient) {
4848
int[] autoIncColumnIndexes = schema.getAutoIncColumnIndexes();
49-
if (autoIncColumnIndexes.length > 1) {
50-
throw new IllegalArgumentException(
51-
"Multiple auto increment columns are not supported yet.");
52-
}
5349
if (autoIncColumnIndexes.length > 0) {
5450
IncIDGenerator[] incIDGenerators = new IncIDGenerator[autoIncColumnIndexes.length];
5551
for (int i = 0; i < autoIncColumnIndexes.length; i++) {
5652
ZkSequenceIDCounter zkSequenceIDCounter =
5753
new ZkSequenceIDCounter(
5854
zkClient.getCuratorClient(),
5955
ZkData.AutoIncrementColumnZNode.path(
60-
tablePath, schemaId, autoIncColumnIndexes[i]));
56+
tablePath, autoIncColumnIndexes[i]));
6157
incIDGenerators[i] =
6258
new SegmentIncIDGenerator(
6359
tablePath,
64-
schemaId,
6560
autoIncColumnIndexes[i],
6661
schema.getColumnName(autoIncColumnIndexes[i]),
6762
zkSequenceIDCounter,

fluss-server/src/main/java/org/apache/fluss/server/kv/autoinc/SegmentIncIDGenerator.java

Lines changed: 3 additions & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -36,7 +36,6 @@ public class SegmentIncIDGenerator implements IncIDGenerator {
3636

3737
private final SequenceIDCounter sequenceIDCounter;
3838
private final TablePath tablePath;
39-
private final int schemaId;
4039
private final int columnIdx;
4140
private final String columnName;
4241

@@ -46,15 +45,13 @@ public class SegmentIncIDGenerator implements IncIDGenerator {
4645

4746
public SegmentIncIDGenerator(
4847
TablePath tablePath,
49-
int schemaId,
5048
int columnIdx,
5149
String columnName,
5250
SequenceIDCounter sequenceIDCounter,
5351
Configuration properties) {
5452
batchSize = properties.getLong(ConfigOptions.TABLE_AUTO_INC_BATCH_SIZE);
5553
this.columnName = columnName;
5654
this.tablePath = tablePath;
57-
this.schemaId = schemaId;
5855
this.columnIdx = columnIdx;
5956
this.sequenceIDCounter = sequenceIDCounter;
6057
}
@@ -63,19 +60,18 @@ private void fetchSegment() {
6360
try {
6461
long start = sequenceIDCounter.getAndAdd(batchSize);
6562
LOG.info(
66-
"Successfully fetch auto-increment values range [{}, {}), table_path={}, schema_id={}, column_idx={}, column_name={}.",
63+
"Successfully fetch auto-increment values range [{}, {}), table_path={}, column_idx={}, column_name={}.",
6764
start,
6865
start + batchSize,
6966
tablePath,
70-
schemaId,
7167
columnIdx,
7268
columnName);
7369
segment = new AutoIncIdSegment(start, batchSize);
7470
} catch (Exception e) {
7571
throw new FlussRuntimeException(
7672
String.format(
77-
"Failed to fetch auto-increment values, table_path=%s, schema_id=%d, column_idx=%d, column_name=%s.",
78-
tablePath, schemaId, columnIdx, columnName),
73+
"Failed to fetch auto-increment values, table_path=%s, column_idx=%d, column_name=%s.",
74+
tablePath, columnIdx, columnName),
7975
e);
8076
}
8177
}

fluss-server/src/main/java/org/apache/fluss/server/zk/data/ZkData.java

Lines changed: 9 additions & 20 deletions
Original file line numberDiff line numberDiff line change
@@ -253,37 +253,26 @@ public static String path() {
253253
}
254254

255255
/**
256-
* The znode for columns of a table. The znode path is:
256+
* The znode for auto increment columns of a table. The znode path is:
257257
*
258-
* <p>/metadata/databases/[databaseName]/tables/[tableName]/schemas/[schemaId]/columns
258+
* <p>/metadata/databases/[databaseName]/tables/[tableName]/auto_inc
259259
*/
260-
public static final class ColumnsZNode {
261-
public static String path(TablePath tablePath, int schemaId) {
262-
return SchemaZNode.path(tablePath, schemaId) + "/columns";
263-
}
264-
}
265-
266-
/**
267-
* The znode for schemas of a table. The znode path is:
268-
*
269-
* <p>/metadata/databases/[databaseName]/tables/[tableName]/schemas/[schemaId]/columns/[columnIdx]
270-
*/
271-
public static final class ColumnZNode {
272-
public static String path(TablePath tablePath, int schemaId, int columnIdx) {
273-
return ColumnsZNode.path(tablePath, schemaId) + "/" + columnIdx;
260+
public static final class AutoIncrementColumnsZNode {
261+
public static String path(TablePath tablePath) {
262+
return TableZNode.path(tablePath) + "/auto_inc";
274263
}
275264
}
276265

277266
/**
278267
* The znode for auto increment column. The znode path is:
279268
*
280-
* <p>/metadata/databases/[databaseName]/tables/[tableName]/schemas/[schemaId]/columns/[columnIdx]/auto_increment_counter
269+
* <p>/metadata/databases/[databaseName]/tables/[tableName]/auto_inc/col_[columnIdx]
281270
*/
282271
public static final class AutoIncrementColumnZNode {
283-
public static String path(TablePath tablePath, int schemaId, int columnIdx) {
284-
return ColumnZNode.path(tablePath, schemaId, columnIdx)
272+
public static String path(TablePath tablePath, int columnIdx) {
273+
return AutoIncrementColumnsZNode.path(tablePath)
285274
+ "/"
286-
+ "auto-increment-counter";
275+
+ String.format("col_%d", columnIdx);
287276
}
288277
}
289278

fluss-server/src/test/java/org/apache/fluss/server/kv/autoinc/SegmentIncIDGeneratorTest.java

Lines changed: 2 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -39,7 +39,6 @@
3939
class SegmentIncIDGeneratorTest {
4040

4141
private static final TablePath TABLE_PATH = new TablePath("test_db", "test_table");
42-
private static final int SCHEMA_ID = 1;
4342
private static final int COLUMN_IDX = 0;
4443
private static final String COLUMN_NAME = "id";
4544
private static final long BATCH_SIZE = 100;
@@ -60,7 +59,6 @@ void testNextValBasicContinuousId() {
6059
SegmentIncIDGenerator generator =
6160
new SegmentIncIDGenerator(
6261
TABLE_PATH,
63-
SCHEMA_ID,
6462
COLUMN_IDX,
6563
COLUMN_NAME,
6664
new TestingSnapshotIDCounter(snapshotIdGenerator),
@@ -84,7 +82,6 @@ void testMultiGenerator() {
8482
SegmentIncIDGenerator generator =
8583
new SegmentIncIDGenerator(
8684
new TablePath("test_db", "table1"),
87-
SCHEMA_ID,
8885
COLUMN_IDX,
8986
COLUMN_NAME + "_table1",
9087
new TestingSnapshotIDCounter(snapshotIdGenerator),
@@ -105,7 +102,6 @@ void testFetchFailed() {
105102
SegmentIncIDGenerator generator =
106103
new SegmentIncIDGenerator(
107104
new TablePath("test_db", "table1"),
108-
SCHEMA_ID,
109105
COLUMN_IDX,
110106
COLUMN_NAME + "_table1",
111107
new TestingSnapshotIDCounter(snapshotIdGenerator, 2),
@@ -117,8 +113,8 @@ void testFetchFailed() {
117113
.isInstanceOf(FlussRuntimeException.class)
118114
.hasMessage(
119115
String.format(
120-
"Failed to fetch auto-increment values, table_path=%s, schema_id=%d, column_idx=%d, column_name=%s.",
121-
"test_db.table1", SCHEMA_ID, COLUMN_IDX, COLUMN_NAME + "_table1"));
116+
"Failed to fetch auto-increment values, table_path=%s, column_idx=%d, column_name=%s.",
117+
"test_db.table1", COLUMN_IDX, COLUMN_NAME + "_table1"));
122118
}
123119

124120
private static class TestingSnapshotIDCounter implements SequenceIDCounter {

0 commit comments

Comments
 (0)