[fix](sql-functions) provide setup data for examples querying an undefined table (#3872) Several SQL-function reference pages contain examples of the form `SELECT ... FROM <table>` together with an expected result table, but the page never defines `<table>`. As written these examples cannot be run or reproduced — a reader who copies them gets `Table [...] does not exist`. This PR adds the missing `CREATE TABLE` + `INSERT` for each such table, carried in a standard HTML comment (`<!-- setup-sql ... -->`) placed just before the first example that uses the table. Because it is an HTML comment, **the rendered page is unchanged** and **no documented expected output is modified** — the comment only records the data the examples already assume, making each example self-contained and reproducible. The table contents were reverse-derived from the output already printed on each page (e.g. `get_format_test` from its `SELECT *`, `test_maketime` from its shown `hour`/`minute`/`sec` columns) and verified end-to-end on a live cluster of the matching release for every doc tree. ### Pages and version coverage | Function | Table | dev (`current`) | `version-4.x` | `version-3.x` | `version-2.1` | | --- | --- | :-: | :-: | :-: | :-: | | `GET_FORMAT` | `get_format_test` | ✅ | ✅ | — (page absent) | — (page absent) | | `MAKETIME` | `test_maketime` | ✅ | ✅ | — (page absent) | — (page absent) | | `CONVERT_TO` | `class_test` | ✅ | ✅ | ✅ | ✅ | | `IPV4_NUM_TO_STRING` | `ipv4_bi` | ✅ | ✅ | ✅ | ✅ | | `IPV4_STRING_TO_NUM_OR_NULL` | `ipv4_str` | ✅ | ✅ | ✅ | ✅ | Each ✅ is updated in EN + ZH. Verification clusters: dev/current + version-4.x on a 4.1.1 build and a master daily build; version-3.x on a 3.1.4 cluster; version-2.1 on a 2.1.11 cluster. On every tree the affected examples failed with "table does not exist" before the change and pass (output matches the doc cell-for-cell) after it. No `ja-source` changes. 🤖 Generated with [Claude Code](https://claude.com/claude-code) --------- Co-authored-by: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
Source code for doris.apache.org, built with Docusaurus 3.
Use local_dev.sh to run the site locally. It handles dependency installation, version filtering, and memory settings automatically.
# Start English dev server (default: only 'current' version, 2 GB memory) ./local_dev.sh # Start Chinese dev server ./local_dev.sh start-zh # Start on a custom port ./local_dev.sh start --port 8080 # Build a specific doc version ./local_dev.sh start --versions "4.x" # Build English docs (production build) ./local_dev.sh build # Build all locales (en + zh-CN) ./local_dev.sh build-all # Clean build artifacts and caches ./local_dev.sh clean
Run ./local_dev.sh help for all available commands and options.
export NODE_OPTIONS=--max-old-space-size=8192 yarn install yarn docusaurus build --locale en --locale zh-CN
The output is generated in the build/ directory.
. ├── docs/ # Current (dev) version docs (English) ├── versioned_docs/ │ ├── version-4.x/ # 4.x version docs (English) │ ├── version-3.x/ # 3.x version docs (English) │ └── version-2.1/ # 2.1 version docs (English) ├── i18n/zh-CN/ │ └── docusaurus-plugin-content-docs/ │ ├── current/ # Current (dev) version docs (Chinese) │ ├── version-4.x/ # 4.x version docs (Chinese) │ ├── version-3.x/ # 3.x version docs (Chinese) │ └── version-2.1/ # 2.1 version docs (Chinese) ├── blog/ # Blog posts ├── community/ # Community docs ├── src/ # React components and pages ├── static/ # Static assets (images, JS, CSS) ├── sidebars.ts # Sidebar for current (dev) docs ├── versioned_sidebars/ # Sidebar files per version │ ├── version-4.x-sidebars.json │ ├── version-3.x-sidebars.json │ └── version-2.1-sidebars.json ├── sidebarsCommunity.json # Sidebar for community docs ├── versions.json # Active doc versions ├── docusaurus.config.js # Docusaurus configuration └── local_dev.sh # Local development helper script
For general contribution guidelines, see:
When modifying docs, you typically need to update both the English and Chinese versions in the corresponding directories:
| Version | English | Chinese | Sidebar |
|---|---|---|---|
| Current (dev) | docs/ | i18n/zh-CN/.../current/ | sidebars.ts |
| 4.x | versioned_docs/version-4.x/ | i18n/zh-CN/.../version-4.x/ | versioned_sidebars/version-4.x-sidebars.json |
| 3.x | versioned_docs/version-3.x/ | i18n/zh-CN/.../version-3.x/ | versioned_sidebars/version-3.x-sidebars.json |
| 2.1 | versioned_docs/version-2.1/ | i18n/zh-CN/.../version-2.1/ | versioned_sidebars/version-2.1-sidebars.json |
Note: When adding a new page, you must also add its path to the corresponding sidebar file, otherwise it will not appear in the navigation.
Blog posts are located in the blog/ directory. Submit a PR to add or modify blog content.
Community docs are in community/, with navigation controlled by sidebarsCommunity.json. Chinese community content lives under i18n/zh-CN/docusaurus-plugin-content-docs-community/.
All images are stored in static/images/. Use hyphens to separate words in filenames (e.g., query-profile-example.png).

The site is deployed via GitHub Actions:
| Workflow | Trigger | Description |
|---|---|---|
cron-deploy-website.yml | Daily at 01:00 AM | Syncs from Doris master branch and deploys |
manual-deploy-website.yml | Manual | Deploy from a specified branch |
build-check.yml | On PR | Validates the build passes (incrementally by detected version) |