Skip to content

[doc](changelog) Rename row binlog to changelog - #4426

Merged
morningman merged 2 commits into
apache:masterfrom
morningman:changelog-rename-docs
Oct 21, 2026
Merged

morningman merged 2 commits into
apache:masterfrom
morningman:changelog-rename-docs

Conversation

@morningman

Copy link
Copy Markdown
Contributor

Summary

Rename the experimental row binlog to changelog in the English and Chinese docs, following apache/doris#69311. Three pages move to new URLs (old URLs redirect in every locale), every page that mentions the feature uses the new property names, table function, hidden columns, error messages and switch, and the changelog page now describes the behavior #69311 introduced.

Why

apache/doris#69311 renamed row binlog ("binlog.enable" = "true" + "binlog.format" = "ROW", the change stream that Table Stream and incremental materialized views read) to changelog and split it from CCR binlog. It is a hard cut on an unreleased feature, so the docs on master describe names that no longer exist:

Before After
"binlog.enable" = "true" + "binlog.format" = "ROW" "changelog.enable" = "true"
binlog.ttl_seconds (ROW tables), binlog.need_historical_value changelog.ttl_seconds, changelog.need_historical_value
binlog(...) table function changelog(...)
__DORIS_BINLOG_{TSO,LSN,OP}__, __BEFORE__<col>__ __DORIS_CHANGELOG_{TSO,LSN,OP}__, __DORIS_CHANGELOG_BEFORE_<col>__
enable_feature_binlog (FE, BE) for row binlog and TSO enable_feature_changelog; enable_feature_binlog is CCR only

CCR binlog, SHOW PROC '/binlog', MySQL binlog CDC, Canal binlog load and Paimon $binlog do not change.

Renamed pages and redirects

Old URL New URL
/docs/dev/data-operate/incremental/row-binlog /docs/dev/data-operate/incremental/changelog
/docs/dev/sql-manual/sql-functions/table-valued-functions/binlog /docs/dev/sql-manual/sql-functions/table-valued-functions/changelog
/docs/dev/key-features/binlog-table-stream /docs/dev/key-features/changelog-table-stream
/docs/4.x/key-features/binlog-table-stream /docs/4.x/key-features/changelog-table-stream

The same four mappings apply under /zh-CN, /ja, /ko and /ru. The redirects are one loop over ENABLED_LOCALES in buildRedirectIndex() (docusaurus.config.js), next to the DOG Stack block and in the style of the hackathon redirects, so each optional locale gets them as soon as it is enabled. They are not in config/redirects-dev.json, which lists en and zh-CN paths only, nor in config/redirects-4.x.json, which scripts/migrate-4.x/build-redirects.py generates. Evaluating createRedirects from the site config gives 20 old paths with DORIS_ENABLE_LOCALES=ja,ko,ru and 8 with the default locales.

The PR has two commits so the moves stay reviewable: the first only moves the six files (en / zh-CN, dev / 4.x), and the second rewrites them. The rewritten pages keep 36–41% of their text, so the combined diff shows them as delete + add; look at the second commit to see what changed in them.

The key-features slug is now /key-features/changelog-table-stream. The card image keeps its name (binlog-table-stream.jpg): pages reference it by path, nothing pairs it with the page by file name. sidebars.ts points to the new doc ids; the table function moves to its alphabetical place.

Other changes

  • The changelog page documents the new behavior: changelog.enable and changelog.need_historical_value can only be set by CREATE TABLE, changelog.ttl_seconds can be altered, binlog.format and binlog.need_historical_value are rejected, CCR binlog and changelog are mutually exclusive (table, database, RECOVER TABLE), temporary tables never have changelog, a database can make changelog the default and SHOW CREATE TABLE then prints "changelog.enable" = "false" for tables without it, views / CTAS / MTMV over changelog() must list and alias the __DORIS_ columns, and enable_feature_changelog is needed in fe.conf (and be.conf for cleanup). A short note says the feature was called row binlog in earlier development builds and that tables created that way must be recreated.
  • Every quoted error message matches the FE on Doris master, for example Changelog offset has expired according to changelog.ttl_seconds, INCR query requires changelog enabled on base table., Base Olap table ... need to enable changelog for table stream, Not allowed to perform current operation on Table With changelog.
  • Stale content fixed:
    • binlog.format case sensitivity (the property no longer exists);
    • the key-features pages enabled ROW with ALTER TABLE ... SET ("binlog.format" = "ROW"); changelog can only be enabled by CREATE TABLE;
    • the OP hidden column is BIGINT, not TINYINT;
    • the changelog page said backup / restore work as usual; the FE rejects backup and restore of tables with changelog;
    • the key-features pages described CCR binlog and ROW as two formats of one binlog; changelog is a separate, per-table change stream that cannot be combined with CCR binlog. The same pages also used CREATE STREAM ... ON <table> and "type" = "default" (now ON TABLE and min_delta), listed a default consume type (now detail / append_only / min_delta), and said retention waits for streams and is reported in STALE_REASON (it does neither).
  • Table Stream, incremental query, IVM, CREATE TABLE / CREATE STREAM / DROP STREAM, CREATE ASYNC MATERIALIZED VIEW, MV FAQ, TSO and FE configuration pages use the new names. CREATE TABLE lists changelog.ttl_seconds.
  • Flink Doris Connector incremental reading uses the Doris-side names and the connector's renamed options source.changelog.{increment-type,poll-interval,visible-wait-timeout,offset-table,consumer-id} ([Improve](source) Follow the Doris rename of row binlog to changelog doris-flink-connector#710); it says "Doris changelog" where Flink changelog records are also discussed. The required connector version is now 26.4.0, the release expected to carry [Improve](source) Follow the Doris rename of row binlog to changelog doris-flink-connector#710: 26.3.0 and earlier read the hidden columns under their old names, so they only work with Doris development builds from before the rename.
  • The Data Warehousing use-case page links to the new key-features URL, and the query cache decision-flow SVG says "changelog scan".

Not changed on purpose

  • Japanese, Korean and Russian docs and translations/: the translation pipeline re-translates the edited pages and handles the moved ones. Until then their old translated files are orphaned and the moved pages show English. The ja / ko labels for marketing.warehouse.075 still read "Binlog / Table Stream".
  • src/pages/community-report/ (historical weekly reports), scripts/last-update/, scripts/migrate-4.x/.
  • CCR docs, SHOW PROC '/binlog', MySQL binlog, Canal and Paimon content.
  • Raster images that still show the old name: static/images/next/data-operate/incremental/two-layers.png and static/images/next/query-acceleration/ivm-workflow.jpg ("Row Binlog"), and the key-features card static/images/next/key-features/binlog-table-stream.jpg (binlog.format = ROW, and a CCR consumer arrow). Alt texts are updated; the pictures need to be redrawn.

Validation

  • Static checks on every changed doc: front matter, relative links, MDX tags, no CJK in English trees, table column counts: pass.
  • scripts/check_md_links_single.py --no-external on all added / modified en, zh-CN and 4.x docs: pass. Anchors in the touched files were checked separately; the only unresolved ones are five pre-existing anchors in zh-CN CREATE-TABLE.md and the MV FAQ, on lines this PR does not change.
  • No en / zh-CN doc, sidebar, component or config links to the old paths; the remaining mentions of the old names are the rename note, the rejected-property error messages, CCR / MySQL binlog, the redirect sources and the card image path.
  • node scripts/check_move.js HEAD, python3 check_move.py HEAD and python3 check_move.py <merge-base>: pass.
  • node scripts/i18n/check-configuration.cjs --all: pass.
  • I18N_LOCALE=<ja|ko|ru> node scripts/i18n/pr-preflight.cjs --base <merge-base> for each of the three locales: pass, 0 errors (source freshness for these locales is reported, not blocking).
  • node --test for the i18n marketing-pages, doc-navigation, configuration, t04, inventory, planner, multi-locale, locale-registry and heading-ids tests: pass.
  • scripts/key-features/generate.js produces the card with href /docs/dev/key-features/changelog-table-stream.
  • The edited SVG parses and renders with the new text inside its boxes.
  • No site build was run.

morningman and others added 2 commits October 21, 2026 08:15
Only git mv, so that git tracks the moves; the next commit rewrites the pages and adds the redirects.

Co-Authored-By: Claude Opus 5.5 (1M context) <noreply@anthropic.com>
apache/doris#69311 renamed the experimental row binlog ("binlog.format" =
"ROW") to changelog and split it from CCR binlog. Update the English and
Chinese docs to the new names and behavior.

- Rename the pages: data-operate/incremental/row-binlog -> changelog,
  table-valued-functions/binlog -> changelog, and the dev and 4.x
  key-features/binlog-table-stream -> changelog-table-stream (slug
  /key-features/changelog-table-stream). The old URLs redirect to the new
  ones in every enabled locale (docusaurus.config.js).
- Use the new names everywhere: "changelog.enable" = "true",
  changelog.ttl_seconds, changelog.need_historical_value, the changelog()
  table function, the __DORIS_CHANGELOG_{TSO,LSN,OP}__ hidden columns,
  __DORIS_CHANGELOG_BEFORE_<col>__ before-image columns, and the
  enable_feature_changelog switch on FE and BE. Quoted error messages
  follow the new FE messages.
- Describe the new behavior on the changelog page: CREATE-only properties,
  alterable TTL, rejected binlog.format / binlog.need_historical_value,
  mutual exclusion with CCR binlog, temporary tables, the database default
  and the "changelog.enable" = "false" it adds to SHOW CREATE TABLE, and
  listing columns for views over changelog(). Add a short note on the
  former name.
- Fix stale content: binlog.format case sensitivity, enabling ROW with
  ALTER TABLE on the key-features pages, the OP column type (BIGINT, not
  TINYINT), backup / restore of tables with changelog, and the key-features
  description of CCR binlog and ROW as two formats of one binlog.
- Flink connector incremental reading: Doris-side names and the
  connector's source.changelog.* options.
- Sidebar entries, the Data Warehousing use-case link, and the query cache
  decision-flow SVG text.

Japanese, Korean and Russian docs are left to the translation pipeline.

Co-Authored-By: Claude Opus 5.5 (1M context) <noreply@anthropic.com>
@morningman
morningman merged commit 67589e0 into apache:master Oct 21, 2026
5 checks passed
@morningman
morningman deleted the changelog-rename-docs branch October 22, 2026 10:15
morningman added a commit that referenced this pull request Oct 23, 2026
## Summary

The Russian planner keeps reopening four deletion tasks from its fixed
T03 inventory after the Binlog-to-Changelog renames in #4426. Record the
reviewed deletions so subsequent plans stop requesting cleanup that is
already complete.

The ledger binds each task to its original ID, source path and source
hash, with a timestamp, explicit machine-review identity and evidence
from #4426/#4431. At Apache master
`a0312e41f13f47ff7da7855759d0d6f7ed3b5fc1`, all four replacement Russian
documents are current, obsolete sources/targets/state records are
absent, affected inbound links and sidebars are clean, and the actual
Docusaurus `createRedirects` callback maps all four old Russian URLs to
their replacements. The remaining references to the old image filename
point to an existing retained asset.

## Validation

- Existing planner tests: 19 passed, including reviewed-deletion
suppression and evidence validation.
- Configuration checks pass for all three managed locales; the four
ledger records pass `validateResolved`.
- Native audit and planner comparison: deletion tasks drop from 4 to 0.
Coverage and all six unrelated source-update tasks remain unchanged:
required/current/pending = 3354/3348/6; no sidebar gaps or planner
exceptions.
- Shared Russian PR preflight and `git diff --check` pass. No document
bodies or page-state records change, so preflight checks zero changed
documents.
- All four Russian redirect mappings verified through the loaded
Docusaurus configuration. No website build or public deployment was
performed locally; CI selects Russian 4.x.

The six remaining Russian 4.x tasks come from the later source changes
in #4441: four new distance-function documents and updates to Lance
Catalog and hybrid search. This ledger change preserves those tasks and
does not claim complete current coverage.

## Self-review

| Checkpoint | Conclusion |
| --- | --- |
| Goal | Four completed historical cleanup tasks disappear from planning
while new source work remains visible. |
| Scope and clarity | One locale-specific ledger file; original
inventory and translation identities are preserved. |
| Information architecture | Current docs, active versions, community
pages and other locales retain their existing content and navigation. |
| Paths, links and redirects | No paths or anchors change here; all four
existing replacement routes, cleanup and redirects were checked. |
| Frontend and build conventions | No frontend, style, theme, workflow
or build changes. Responsive/theme behavior is unaffected. |
| Verification | Native audit/planner comparison, existing planner
tests, configuration/schema validation, actual redirect callback and
shared admission checks cover the metadata change. CI/public deployment
results are not asserted. |
| Other correctness, accessibility, SEO and maintenance | No additional
issue found in this change. Ledger evidence and machine identity remain
explicit; six new source-update tasks are reported separately. |

## Versions

- [x] dev
- [x] 4.x
- [ ] 3.x
- [ ] 2.1 or older (not covered by version/language sync gate)

## Languages

- [ ] Chinese
- [ ] English
- [x] Russian translation-state ledger

## Docs Checklist

- [x] Checked by AI
- [ ] Test Cases Built (metadata-only change; existing tests and native
checks run, no new tests or website build)
- [x] Updated required version and language counterparts, or explained
why not
- [x] If only one language changed, confirmed whether source/translation
counterparts need sync

The ledger belongs only to Russian. The existing English/Chinese
sources, Russian replacement documents and shared redirects are already
merged and need no counterpart edits for this bookkeeping change.

Co-authored-by: morningman <moringman@apache.org>

This branch was previously deployed

1 inactive deployment
Production — f2f2af38 Deployed Oct 21, 2026 by morningman via Build Check #8912
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant