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.

Informations de source

Dépôt
apache/doris-skills
Dernière activité de la source
24 juillet 2026 à 08:50
Langue détectée de SKILL.md
anglais
Étoiles
47
Forks
15

Options d'installation

Le prompt qui vérifie d'abord la source est sélectionné par défaut. Vous pouvez passer à une commande directe ou télécharger une copie locale.

Vérifiez les fichiers source

Lisez SKILL.md et les fichiers associés affichés par SkillsMP avant de décider de l'installer.

Affichage de SKILL.md

SKILL.md
Instructions source · Aperçu en lecture seule
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`
Voir sur GitHub