Skip to content

[server] Integrate remote directory selector into table/partition creation#2769

Open
LiebingYu wants to merge 1 commit intoapache:mainfrom
LiebingYu:3-cs-multi-remote
Open

[server] Integrate remote directory selector into table/partition creation#2769
LiebingYu wants to merge 1 commit intoapache:mainfrom
LiebingYu:3-cs-multi-remote

Conversation

@LiebingYu
Copy link
Contributor

Purpose

Linked issue: close #2755

Brief change log

Tests

API and Format

Documentation

@LiebingYu LiebingYu force-pushed the 3-cs-multi-remote branch 4 times, most recently from a510c15 to c911eb4 Compare March 3, 2026 01:51
public void createPartition(
TablePath tablePath,
long tableId,
String remoteDataDir,
Copy link
Contributor

@gyang94 gyang94 Mar 8, 2026

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

I am thinking about possible improvements here:
1.
Will it be better to put the remote dir selection logic inside into the MetadataManager.createPartition() and MetadataManager.createTable().

I notice that now there exist some code pattern that (a). select a remoteDataDir value. (b) pass the value into createTable/createPartition functions, when we need to createTable/partition otherwhere.
Put the step(a) inside those functions will make the code more focused and void adding a remoteDataDir parameter in these functions.

Or
2.
Is is good to add the 'remoteDataDir' field into the TablePath class? Make the TablePath object carrys the remote dir info, and pass it through to everywhere. Then we don't need to care about adding an independent remoteDataDir parameter in functions which already has the TablePath parameter.

The implementation now is good to work. Just put my thoughts here. What do you think?

Copy link
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

  1. Put the selection into MetadataManager also need to change a lot. By comparison, I think the current approach would actually introduce smaller changes.

  2. TablePath represents the logical path of a Fluss table, while remoteDataDir is the physical storage path in the implementation. I don’t think it’s appropriate to put remoteDataDir into TablePath.

@LiebingYu LiebingYu force-pushed the 3-cs-multi-remote branch 3 times, most recently from b77b6bc to 0818c44 Compare March 25, 2026 06:17
@LiebingYu LiebingYu requested a review from wuchong March 25, 2026 08:12
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

[server] Integrate remote directory selector into table/partition creation

2 participants