morningman opened a new pull request, #4145:
URL: https://github.com/apache/doris-website/pull/4145

   ## What
   
   The IVM page 
(`query-acceleration/materialized-view/async-materialized-view/incremental-materialized-view`,
 added in #4141) did not explain how to set up automatic refresh for an 
incremental materialized view, nor what the minimum refresh interval is. This 
PR adds a **Setting the automatic refresh interval / 设置自动刷新间隔** subsection to 
both the EN and zh-CN pages, plus matching FAQ rows, a best-practice item and 
cross-links.
   
   ## Content (verified against the FE implementation on 
`branch-incremental-computation`)
   
   - IVM reuses the common MV triggers: `ON MANUAL` (default), `ON SCHEDULE 
EVERY <n> <unit> [STARTS '<time>']`, `ON COMMIT` (`DorisParser.g4` 
`refreshTrigger`).
   - **Minimum scheduled interval is `EVERY 1 MINUTE`**: units are 
`MINUTE/HOUR/DAY/WEEK`; `SECOND` fails with `interval time unit can not be 
second` unless the test-only FE option `enable_job_schedule_second_for_test` is 
set (`LogicalPlanBuilder.visitMvRefreshUnit`, `MTMVRefreshSchedule.validate`).
   - `STARTS` must be later than now; without it the first run is one interval 
after creation and later runs are aligned to fixed multiples of the interval 
(`TimerDefinition.initParams`, `JobExecutionConfiguration`).
   - Scheduled / on-commit tasks run the MV's persisted policy (`INCREMENTAL`, 
`INCREMENTAL FALLBACK`, `AUTO`) (`MTMVTaskContext.forMvDefault`, 
`MTMVTask.resolveRefreshRequest`).
   - The first automatic refresh builds the `COMPLETE` baseline by itself 
(`MTMVTask.shouldUseCompleteForInitialIvmRefresh`).
   - Tasks of one MV run serially; at most one running + one waiting automatic 
task, surplus triggers are skipped and counted in 
`async_materialized_view_task_skip_num` (`MTMVJob.isReadyForScheduling`).
   - `ON COMMIT` is not triggered by tables in `excluded_trigger_tables`.
   - The trigger can be changed with `ALTER MATERIALIZED VIEW ... REFRESH ON 
...`; repeating `INCREMENTAL` in `ALTER` is rejected 
(`AlterMTMVRefreshInfo.validateRefreshMethodCompat`).
   
   ## Versions
   
   - [x] dev
   - [ ] 4.x
   - [ ] 3.x
   - [ ] 2.1
   
   ## Languages
   
   - [x] Chinese
   - [x] English
   
   🤖 Generated with [Claude Code](https://claude.com/claude-code)
   


-- 
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.

To unsubscribe, e-mail: [email protected]

For queries about this service, please contact Infrastructure at:
[email protected]


---------------------------------------------------------------------
To unsubscribe, e-mail: [email protected]
For additional commands, e-mail: [email protected]

Reply via email to