-
Notifications
You must be signed in to change notification settings - Fork 2.2k
[Refactor] Transform Table/Db/Partition related simple edit logs to WAL format #67245
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
base: main
Are you sure you want to change the base?
[Refactor] Transform Table/Db/Partition related simple edit logs to WAL format #67245
Conversation
|
@cursor review |
fe/fe-core/src/main/java/com/starrocks/transaction/TransactionIdGenerator.java
Outdated
Show resolved
Hide resolved
fe/fe-core/src/main/java/com/starrocks/server/LocalMetastore.java
Outdated
Show resolved
Hide resolved
|
@mergify rebase |
Signed-off-by: gengjun-git <[email protected]>
Signed-off-by: gengjun-git <[email protected]>
Signed-off-by: gengjun-git <[email protected]>
Signed-off-by: gengjun-git <[email protected]>
Signed-off-by: gengjun-git <[email protected]>
Signed-off-by: gengjun-git <[email protected]>
✅ Branch has been successfully rebased |
57b789a to
341e388
Compare
|
[Java-Extensions Incremental Coverage Report]✅ pass : 0 / 0 (0%) |
[FE Incremental Coverage Report]❌ fail : 137 / 222 (61.71%) file detail
|
[BE Incremental Coverage Report]✅ pass : 0 / 0 (0%) |
|
@cursor review |
|
|
||
| GlobalStateMgr.getCurrentState().getEditLog() | ||
| .logRecoverPartitionVersion(new PartitionVersionRecoveryInfo(partitionsToRecover, System.currentTimeMillis())); | ||
| .logRecoverPartitionVersion(recoveryInfo, wal -> recoverPartitionVersion(recoveryInfo)); |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Partition version recovery executed twice in MetaRecoveryDaemon
The recoverPartitionVersion(recoveryInfo) method is called twice during WAL refactoring: once directly at line 181, and again in the WAL callback at line 184. This appears to be an incomplete refactoring where the direct call at line 181 was not removed when the WAL callback pattern was introduced. The correct WAL pattern requires removing the direct call and only executing the operation within the callback. This causes partition versions to be recovered twice, which could lead to redundant operations and potentially unexpected behavior.



Why I'm doing:
What I'm doing:
Refer #63357
What type of PR is this:
Does this PR entail a change in behavior?
If yes, please specify the type of change:
Checklist:
Bugfix cherry-pick branch check:
Note
Modernizes metadata persistence across FE by shifting many edit-log writes to WAL with in-log appliers and adding replay handlers to ensure atomic, ordered state changes.
WALApplierand updatesEditLogwith applier-based variants (e.g.,logModifyViewDef,logTableRename,logErasePartition,logDeleteReplica,logBackendTabletsInfo, etc.), removing legacy counterpartsAlterJobExecutor/Mgr,AlterMVJobExecutor,SchemaChangeHandler,BackupHandler/RepositoryMgr,CatalogRecycleBin,HiveTable,OlapTablename checks,ReportHandler,TabletScheduler,DeleteJob,LocalMetastore,MaterializedViewMgr,TransactionIdGeneratorcheckNameConflictvscheckAndSetName, alter-view now validates viacheckInlineViewDef, drop-partitions consolidated to batch WAL, range-partition recover split intocheckRecoverableandrecover, and tests updated accordinglyWritten by Cursor Bugbot for commit 341e388. This will update automatically on new commits. Configure here.