doris-debug-materialized-view

A troubleshooting guide for Apache Doris materialized views, which are stored query results used to speed up later queries. It covers both synchronous rollups and asynchronous refreshable views.

In plain words
What is it for?
Checking materialized-view build and refresh state, examining query plans for rewrites, refreshing views, and diagnosing why Doris scans the base table instead.
Why use it?
It helps determine whether a view is still building, failed to refresh, contains stale data, or was simply not chosen by the query planner. These cases require different fixes.

Skill for Claude CodeCodex

Install

Getting it into your agent

One page per mod, every tool's command on it. A separate URL per tool would split the same page into five that compete with each other.

agentmods
npx agentmods add skills/apache/doris-skills/materialized-view
Any agent
npx skills add apache/doris-skills --skill materialized-view
Clone the repo
git clone --depth 1 https://github.com/apache/doris-skills

Made for: Claude Code, Codex.

Per session 48 Skills are progressive disclosure: only the name and description are preloaded; the body loads when the skill is used.
When invoked 728 The whole file, excluding the scripts and references it only reads on demand.
Security scan A 0 findings. Scan, not verified.
Origin original No closer match found in the catalogue.
Token cost

What it costs to keep this loaded

Counted locally with the o200k_base tokenizer, which is exact for GPT models; Claude uses its own tokenizer and its counts differ. Treat this as one consistent yardstick across the catalogue rather than a bill. Prices are per million input tokens.

ModelPer sessionOnce invoked
Fable 5 $0.00048 $0.00728
Opus 5 $0.00024 $0.00364
Sonnet 5 $0.00010 $0.00146
Haiku 4.5 $0.00005 $0.00073

Measured 2d ago against content hash 6a9033b26093, method: parsed. Prices are Anthropic first-party input rates as of 2026-08-30, from the pricing page.

Security

Grade A, and why

doris-debug-materialized-view scanned grade A with 0 findings against 26 rules in 11 categories — prompt injection, anti-refusal, data exfiltration, privilege escalation, supply chain, agent snooping, system-prompt leakage, SSRF and excessive agency — measured 2d ago.

A static scan of the body, not an audit. Every finding is printed with the line that produced it so you can judge whether it matters here. A mod is markdown that instructs an agent; that is exactly why what it instructs is worth reading.

Nothing flagged

None of the 26 patterns this scan looks for appear in this file: no shell pipes, no recursive deletes, no credential paths, no hidden text, no instruction-override or anti-refusal phrasing, no agent-config snooping. That is not a guarantee, it is the absence of the things that are checkable.

skills/doris-debug/materialized-view/SKILL.md · 79 lines

How it starts

The opening of the file, as written. The whole thing — 79 lines — stays where its author put it; the contents beside it link to each section on GitHub.

Materialized View

Kind comparison

Kind Code area Check Rewrite mechanism
Sync MaterializedViewHandler / rollup SHOW ALTER TABLE MATERIALIZED VIEW Transparent — planner auto-selects
Async MTMV fe/.../mtmv/ mv_infos() RefreshState CBO-based — EXPLAIN shows if matched

Causes

ID Cause Evidence Kind
A Sync MV build pending/stuck SHOW ALTER TABLE MATERIALIZED VIEW State≠FINISHED Sync
B MTMV refresh failed mv_infos() RefreshState=FAIL Async
C MTMV rewrite miss EXPLAIN shows no MATERIALIZED_REWRITE Async
D MTMV data stale mv_infos() LastRefreshTime old Async
E MV not selected by planner EXPLAIN shows TABLE SCAN not MATERIALIZED Either

10 min triage

-- Sync MV status
SHOW ALTER TABLE MATERIALIZED VIEW FROM db;

-- Async MTMV status
SELECT * FROM mv_infos('database'='db') WHERE Name='mv'\G

-- Check rewrite eligibility
EXPLAIN VERBOSE SELECT ...;

-- Force refresh
REFRESH MATERIALIZED VIEW mv;

-- Enable external MV rewrite (for catalog queries)
SET materialized_view_rewrite_enable_contain_external_table = true;

Cause C — MTMV rewrite miss

Common reasons (see fe/.../mtmv/MTMVService.java rewrite matcher):

  1. Partition misalignment: MV has partition_sync=false and query partition doesn't match → ALTER MATERIALIZED VIEW mv SET ("partition_sync" = "true")
  2. Aggregation granularity: MV groups by (a, b) but query groups by (a) only → MV is not a valid rewrite target
  3. Filter mismatch: MV WHERE clause doesn't cover query WHERE clause → check MV definition
  4. Session var off: SET enable_materialized_view_rewrite = true
-- Debug: force the optimizer to log MV matching
SET enable_materialized_view_rewrite_debug_log = true;
EXPLAIN VERBOSE SELECT ...;  -- check fe/log/fe.audit.log for MV match details

Cause A — Sync MV stuck

Read the full file on GitHub · 79 lines

Files

What ships with it

1 file beside SKILL.md in the same directory: the scripts, references and assets a skill reads on demand. Not counted in the per-session cost; read them before you install if any of them is executable.

Changes

What this file has done since we first saw it

Hashed on every crawl. A supply-chain change to an agent config is a question of when, not whether, so the history is kept rather than the latest state alone.

  1. 2d ago First seen · 79 lines · 48 tokens per session scan A 6a9033b26093

Subscribe to this mod's changes

doris-debug-materialized-view is a skill published in the GitHub repository apache/doris-skills (37 stars, last pushed 13d ago), licensed Apache-2.0. It adds 48 tokens to every session and 728 once invoked, about $0.0002 per session on Opus 5. A static security scan graded it A with 0 findings. No closer match exists in the catalogue, so it is treated as the original; first seen 2026-08-30.

Related

Other skills, from other repositories

terraform-skill

Use when working with Terraform or OpenTofu - creating modules, writing tests (native test framework, Terratest), setting up CI/CD pipelines, reviewing configurations, choosing between testing approaches, debugging state issues, implementing security scanning (trivy, checkov), or making infrastructure-as-code…

agentscope-ai/QwenPaw · 62 tokens

xlsx

当电子表格文件是主要输入或输出时使用此技能。这意味着用户想要:打开、读取、编辑或修复现有的 .xlsx、.xlsm、.csv 或 .tsv 文件(例如添加列、计算公式、格式化、制图、清理混乱数据);从头创建新的电子表格或从其他数据源创建;或在表格文件格式之间进行转换。当用户通过名称或路径引用电子表格文件时特别触发——即使是随意提及(如"我下载目录里的 xlsx")——并且想对其进行操作或从中生成内容。也适用于将混乱的表格数据文件(格式错误的行、错位的表头、垃圾数据)清理或重构为规范的电子表格。交付物必须是电子表格文件。当主要交付物是 Word 文档、HTML 报告、独立 Python 脚本、数据库管道或 Google Sheets…

agentscope-ai/QwenPaw · 232 tokens

terraform-cli-setup

Terraform CLI 安装与初始化技能。当用户本地未安装 Terraform 时自动完成安装,确保 terraform 命令可用并能执行 init/validate。不负责 Provider 凭证配置,凭证在实际使用时由 terraform-skill 引导。.

agentscope-ai/QwenPaw · 58 tokens

morph-ppt

Use this skill when the user wants a .pptx with smooth cross-slide animation — PowerPoint Morph transitions, Keynote-style continuous motion, shapes that grow / move / rotate as the slide advances. Trigger on: 'morph', 'morph transition', 'smooth transition', 'continuous animation across slides', 'Keynote-style…

iOfficeAI/OfficeCLI · 169 tokens

officecli-word-form

Use this skill to create fillable Word forms (.docx) with real Content Controls (SDT) + legacy FormField checkboxes + MERGEFIELD mail-merge placeholders + document protection. Trigger on: 'fillable form', 'form fields', 'content controls', 'SDT', 'word form', 'fill in', 'only editable fields', 'protect document'…

iOfficeAI/OfficeCLI · 224 tokens

oss-upload

Upload local files to Tencent COS (oss.1024code.com CDN) using coscli. Use when user wants to upload a file to CDN/OSS, or deploy static assets.

clacky-ai/openclacky · 40 tokens