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

   ## 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}`
 (apache/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 apache/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.
   


-- 
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