维护事件
在分布式部署中,Metasrv 会记录 GC 和 Remote WAL 裁剪事件。
GC 事件
带有非 NULL gc_report 的记录显示一个 Region 的 GC 结果:
SELECT timestamp, procedure_id, procedure_state,
region_id, table_id, region_number,
json_to_string(gc_report) AS gc_report
FROM greptime_private.events
WHERE type = 'batch_gc'
AND gc_report IS NOT NULL
AND timestamp >= now() - INTERVAL '1' hour
ORDER BY timestamp DESC
LIMIT 3;
deleted_files 列出已删除的 SST/Parquet 文件 ID;deleted_indexes 列出已删除索引文件的 ID 及其 index_version;need_retry 为 true 时,该 Region 需要在下一轮 GC 中重试。
例如:
{
"deleted_files": ["580653aa-252b-415b-aaf9-ce65e9d78249"],
"deleted_indexes": [
{"file_id":"580653aa-252b-415b-aaf9-ce65e9d78249","index_version":0}
],
"need_retry": false
}
定时 GC 不记录 Submitted 行;手动执行时,Submitted 行记录配置。没有 Region 需要清理或重试时,不会记录 Done 行。报告行的 payload 为 JSON null。
Remote WAL 裁剪
SELECT timestamp, type, topic_name, prunable_entry_id, latest_offset,
procedure_state,
json_get_string(procedure_trigger, 'type') AS trigger_type,
json_to_string(payload) AS payload
FROM greptime_private.events
WHERE type = 'wal_prune'
AND timestamp >= now() - INTERVAL '1' hour
ORDER BY timestamp DESC
LIMIT 3;