Skip to content

[Refactor] Remove IVM FULL refresh mode#72288

Merged
HangyuanLiu merged 1 commit into
StarRocks:mainfrom
Youngwb:imv-v1/remove-full-refresh-mode
Apr 29, 2026
Merged

[Refactor] Remove IVM FULL refresh mode#72288
HangyuanLiu merged 1 commit into
StarRocks:mainfrom
Youngwb:imv-v1/remove-full-refresh-mode

Conversation

@Youngwb

@Youngwb Youngwb commented Apr 28, 2026

Copy link
Copy Markdown
Contributor

Why I'm doing:

What I'm doing:

user-visible refresh modes are limited to INCREMENTAL and PCT; FULL is removed. FULL has not been released, so no compatibility shim is needed.

  • Drop FULL from MaterializedView.RefreshMode enum and isFull() helper
  • Drop the FULL branch from MVRefreshProcessorFactory.newProcessor
  • Reword the IVM schema-change error to "drop and re-create the MV" since the legacy "trigger a full refresh" path no longer exists
  • Update affected unit tests and remove the iceberg_full SQL test
  • Drop the FULL bullet from CREATE MATERIALIZED VIEW docs (en/zh/ja)

Fixes #issue

What type of PR is this:

  • BugFix
  • Feature
  • Enhancement
  • Refactor
  • UT
  • Doc
  • Tool

Does this PR entail a change in behavior?

  • Yes, this PR will result in a change in behavior.
  • No, this PR will not result in a change in behavior.

If yes, please specify the type of change:

  • Interface/UI changes: syntax, type conversion, expression evaluation, display information
  • Parameter changes: default values, similar parameters but with different default values
  • Policy changes: use new policy to replace old one, functionality automatically enabled
  • Feature removed
  • Miscellaneous: upgrade & downgrade compatibility, etc.

Checklist:

  • I have added test cases for my bug fix or my new feature
  • This pr needs user documentation (for new or modified features or behaviors)
    • I have added documentation for my new feature or new function
    • This pr needs auto generate documentation
  • This is a backport pr

Bugfix cherry-pick branch check:

  • I have checked the version labels which the pr will be auto-backported to the target branch
    • 4.1
    • 4.0
    • 3.5
    • 3.4

Per the IMV V1 PRD, user-visible refresh modes are limited to
INCREMENTAL and PCT; FULL is removed. FULL has not been released,
so no compatibility shim is needed.

- Drop FULL from MaterializedView.RefreshMode enum and isFull() helper
- Drop the FULL branch from MVRefreshProcessorFactory.newProcessor
- Reword the IVM schema-change error to "drop and re-create the MV"
  since the legacy "trigger a full refresh" path no longer exists
- Update affected unit tests and remove the iceberg_full SQL test
- Drop the FULL bullet from CREATE MATERIALIZED VIEW docs (en/zh/ja)

Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
Signed-off-by: Youngwb <yangwenbo_mailbox@163.com>
@Youngwb Youngwb requested a review from a team as a code owner April 28, 2026 11:32
@github-actions github-actions Bot added the documentation Documentation changes label Apr 28, 2026
@CelerData-Reviewer

Copy link
Copy Markdown

@codex review

@github-actions github-actions Bot requested a review from stephen-shelby April 28, 2026 11:34

@chatgpt-codex-connector chatgpt-codex-connector Bot left a comment

Copy link
Copy Markdown

Choose a reason for hiding this comment

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

💡 Codex Review

Here are some automated review suggestions for this pull request.

Reviewed commit: d8ed138988

ℹ️ About Codex in GitHub

Your team has set up Codex to review pull requests in this repo. Reviews are triggered when you

  • Open a pull request for review
  • Mark a draft as ready
  • Comment "@codex review".

If Codex has suggestions, it will comment; otherwise it will react with 👍.

Codex can also answer questions or update the PR. Try commenting "@codex address that feedback".

@github-actions

Copy link
Copy Markdown
Contributor

🌎 Translation Required?

All translation files are up to date.
Great job! No translation actions are required for this PR.

🕒 Last updated: Tue, 28 Apr 2026 11:39:01 GMT

@github-actions

Copy link
Copy Markdown
Contributor

[Java-Extensions Incremental Coverage Report]

pass : 0 / 0 (0%)

@github-actions

Copy link
Copy Markdown
Contributor

[FE Incremental Coverage Report]

pass : 0 / 0 (0%)

@github-actions

Copy link
Copy Markdown
Contributor

[BE Incremental Coverage Report]

pass : 0 / 0 (0%)

@HangyuanLiu HangyuanLiu merged commit 0056da9 into StarRocks:main Apr 29, 2026
82 of 83 checks passed
@Youngwb Youngwb deleted the imv-v1/remove-full-refresh-mode branch April 29, 2026 05:54
@Youngwb

Youngwb commented Apr 29, 2026

Copy link
Copy Markdown
Contributor Author

@mergify backport branch-4.1

@mergify

mergify Bot commented Apr 29, 2026

Copy link
Copy Markdown
Contributor

backport branch-4.1

✅ Backports have been created

Details

Cherry-pick of 0056da9 has failed:

On branch mergify/bp/branch-4.1/pr-72288
Your branch is up to date with 'origin/branch-4.1'.

You are currently cherry-picking commit 0056da9f39.
  (fix conflicts and run "git cherry-pick --continue")
  (use "git cherry-pick --skip" to skip this patch)
  (use "git cherry-pick --abort" to cancel the cherry-pick operation)

Changes to be committed:
	modified:   docs/en/sql-reference/sql-statements/materialized_view/CREATE_MATERIALIZED_VIEW.md
	modified:   docs/ja/sql-reference/sql-statements/materialized_view/CREATE_MATERIALIZED_VIEW.md
	modified:   docs/zh/sql-reference/sql-statements/materialized_view/CREATE_MATERIALIZED_VIEW.md
	modified:   fe/fe-core/src/main/java/com/starrocks/catalog/MaterializedView.java
	modified:   fe/fe-core/src/main/java/com/starrocks/scheduler/mv/BaseMVRefreshProcessor.java
	modified:   fe/fe-core/src/test/java/com/starrocks/alter/AlterMVJobExecutorEditLogTest.java
	modified:   fe/fe-core/src/test/java/com/starrocks/alter/AlterMaterializedViewTest.java
	modified:   fe/fe-core/src/test/java/com/starrocks/scheduler/mv/ivm/IVMBasedMvRefreshProcessorIcebergTest.java
	deleted:    test/sql/test_materialized_view_ivm/R/test_ivm_with_iceberg_full
	deleted:    test/sql/test_materialized_view_ivm/T/test_ivm_with_iceberg_full

Unmerged paths:
  (use "git add <file>..." to mark resolution)
	both modified:   fe/fe-core/src/main/java/com/starrocks/scheduler/mv/MVRefreshProcessorFactory.java

To fix up this pull request, you can check it out locally. See documentation: https://docs.github.com/en/pull-requests/collaborating-with-pull-requests/reviewing-changes-in-pull-requests/checking-out-pull-requests-locally

@Youngwb

Youngwb commented Apr 29, 2026

Copy link
Copy Markdown
Contributor Author

@mergify backport branch-4.1

@mergify

mergify Bot commented Apr 29, 2026

Copy link
Copy Markdown
Contributor

backport branch-4.1

✅ Backports have been created

Details

Cherry-pick of 0056da9 has failed:

On branch mergify/bp/branch-4.1/pr-72288
Your branch is up to date with 'origin/branch-4.1'.

You are currently cherry-picking commit 0056da9f39.
  (fix conflicts and run "git cherry-pick --continue")
  (use "git cherry-pick --skip" to skip this patch)
  (use "git cherry-pick --abort" to cancel the cherry-pick operation)

Changes to be committed:
	modified:   docs/en/sql-reference/sql-statements/materialized_view/CREATE_MATERIALIZED_VIEW.md
	modified:   docs/ja/sql-reference/sql-statements/materialized_view/CREATE_MATERIALIZED_VIEW.md
	modified:   docs/zh/sql-reference/sql-statements/materialized_view/CREATE_MATERIALIZED_VIEW.md
	modified:   fe/fe-core/src/main/java/com/starrocks/catalog/MaterializedView.java
	modified:   fe/fe-core/src/main/java/com/starrocks/scheduler/mv/BaseMVRefreshProcessor.java
	modified:   fe/fe-core/src/test/java/com/starrocks/alter/AlterMVJobExecutorEditLogTest.java
	modified:   fe/fe-core/src/test/java/com/starrocks/alter/AlterMaterializedViewTest.java
	modified:   fe/fe-core/src/test/java/com/starrocks/scheduler/mv/ivm/IVMBasedMvRefreshProcessorIcebergTest.java
	deleted:    test/sql/test_materialized_view_ivm/R/test_ivm_with_iceberg_full
	deleted:    test/sql/test_materialized_view_ivm/T/test_ivm_with_iceberg_full

Unmerged paths:
  (use "git add <file>..." to mark resolution)
	both modified:   fe/fe-core/src/main/java/com/starrocks/scheduler/mv/MVRefreshProcessorFactory.java

To fix up this pull request, you can check it out locally. See documentation: https://docs.github.com/en/pull-requests/collaborating-with-pull-requests/reviewing-changes-in-pull-requests/checking-out-pull-requests-locally

Youngwb added a commit that referenced this pull request Apr 29, 2026
Signed-off-by: Youngwb <yangwenbo_mailbox@163.com>
Co-authored-by: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
(cherry picked from commit 0056da9)
wanpengfei-git pushed a commit that referenced this pull request Apr 29, 2026
Signed-off-by: Youngwb <yangwenbo_mailbox@163.com>
Co-authored-by: Youngwb <yangwenbo_mailbox@163.com>
Co-authored-by: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
Hyper-FF pushed a commit to Hyper-FF/starrocks that referenced this pull request Apr 30, 2026
Signed-off-by: Youngwb <yangwenbo_mailbox@163.com>
Co-authored-by: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
robd003 pushed a commit to robd003/starrocks that referenced this pull request May 6, 2026
Signed-off-by: Youngwb <yangwenbo_mailbox@163.com>
Co-authored-by: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

4.1-merged documentation Documentation changes

Projects

None yet

Development

Successfully merging this pull request may close these issues.

4 participants