Skip to main content

doris-debug-deployment

Use for Doris FE/BE startup failures, port conflicts, priority_networks misrouting, meta_dir corruption, and ADD/DROP BACKEND issues.

Quellinformationen

Repository
apache/doris-skills
Letzte Quellaktivität
24. Juli 2026 um 08:50
Erkannte Sprache von SKILL.md
Englisch
Sterne
47
Forks
15

Installationsoptionen

Standardmäßig ist der Prompt ausgewählt, der zuerst die Quelle prüft. Sie können zu einem direkten Befehl wechseln oder eine lokale Kopie herunterladen.

Quelldateien prüfen

Lesen Sie SKILL.md und alle von SkillsMP angezeigten Begleitdateien, bevor Sie sich für eine Installation entscheiden.

SKILL.md wird angezeigt

SKILL.md
Quellanweisungen · Schreibgeschützte Vorschau
name
doris-debug-deployment
description
Use for Doris FE/BE startup failures, port conflicts, priority_networks misrouting, meta_dir corruption, and ADD/DROP BACKEND issues.
version
0.2.0
category
deployment
# Deployment & Startup ## Causes | ID | Cause | Evidence | Source anchor | |----|-------|----------|---------------| | A | Port conflict | BE/FE fail to bind; `Address already in use` | `brpc/server.cpp`, `doris_main.cpp` | | B | `priority_networks` misconfig | brpc connection refused / wrong interface | `config.cpp` | | C | meta_dir / storage_root_path not writable | `Permission denied` / `No such file` at startup | `olap/olap_meta.cpp` | | D | FE metadata corruption | FE fails to start after crash; `meta/image.*` errors | `Image.java`, `BDBJEJournal.java` | | E | Mixed version cluster | Protocol mismatch in thrift/brpc between FE-BE | `be/src/agent/`, `heartbeat` | | F | DNS / hostname resolution | `UnknownHostException`, BE heartbeat to wrong address | `Env.java` frontend host check | ## 10 min triage ```bash # FE status curl -s "http://$FE:8030/api/bootstrap" curl -s "http://$FE:8030/api/health" # BE status curl -s "http://$BE:8040/api/health" # Port check ss -tlnp | grep -E "8030|8040|8060|9030" ``` ```sql -- Cluster membership SHOW FRONTENDS\G SHOW BACKENDS\G ``` ## Cause A — Port conflict Default ports (from `fe/conf/fe.conf` and `be/conf/be.conf`): | Service | Port | Config key | |---------|------|------------| | FE HTTP | 8030 | `http_port` | | BE HTTP | 8040 | `webserver_port` | | BE brpc | 8060 | `brpc_port` | | FE MySQL | 9030 | `query_port` | | FE Edit log | 9010 | `edit_log_port` | ```bash # Kill stale process on target port fuser -k 8060/tcp # BE brpc # Then restart BE ``` ## Cause B — priority_networks The most common cause of "BE shows Alive=true but brpc fails." `priority_networks` tells BE which network interface to bind brpc to. ```properties # be.conf — match ONE subnet exactly priority_networks = 10.0.0.0/24 ``` Check what interface BE actually bound: ```bash curl -s "http://$BE:8040/api/health" | grep -o '"ip":"[^"]*"' ``` Validation: the IP in `SHOW BACKENDS` must be reachable from every FE and every other BE on port 8060. ## Cause D — FE metadata recovery ```bash # Check FE meta directory ls -la fe/doris-meta/image/ ls -la fe/doris-meta/bdb/ # If bdb is corrupt and this is a follower/observer: # 1. Remove the bad FE from the cluster # 2. Wipe doris-meta/ # 3. Re-add as a new follower: ALTER SYSTEM ADD FOLLOWER "host:9010" ``` Never remove `doris-meta/` on the **last healthy Master** FE. ## Source - `fe/conf/fe.conf` — port defaults - `be/src/common/config.cpp` — `priority_networks` - `be/src/service/doris_main.cpp` — BE startup - `fe/.../master/Env.java` — FE bootstrap - `fe/.../journal/bdbje/BDBJEJournal.java`
Auf GitHub ansehen