doris-docker-regression

Runs Apache Doris docker-based regression tests from a clean build package.

15.8k|3.9k|Updated Aug 10, 2017
One-click install
npx skills add https://github.com/apache/doris --skill doris-docker-regression
Or copy as Structured Prompt for Agent
Please help me install this Agent Skill.
Skill: doris-docker-regression
Source: https://github.com/apache/doris/tree/main/.claude/skills/doris-docker-regression
Command: npx skills add https://github.com/apache/doris --skill doris-docker-regression

SYSTEM DOCUMENTATION & REQUIREMENTS

💡 This Skill requires pyyaml, docker.

What problem does it solve?

Running Doris docker regression tests often fails because local edits to conf/ files or startup scripts contaminate the test environment, causing port conflicts, JDWP debug agent errors, or suites silently being skipped.

Core Features & Use Cases

  • Clean Package Preparation: Sanitizes fe.conf, be.conf, and start_fe.sh from git HEAD so the docker image uses default ports and no debug agents.
  • End-to-End Workflow: Covers environment checks, build, Docker image creation, regression configuration, and test execution via run-regression-test.sh.
  • Troubleshooting Guidance: Maps common symptoms (0 suites found, JDWP errors, port conflicts) to concrete fixes.
  • Use Case: A Doris developer modifies FE/BE code, builds with ./build.sh, and needs to validate the change against docker-based regression suites without interference from their local development configs.

Quick Start

Run the Doris docker regression suite for my latest build using a clean package sanitized from git HEAD.

Frequently Asked Questions about doris-docker-regression

High-intent search queries and answers about installing and using this skill.

FAQPage Schema
How do I run Doris docker regression tests?

Build Doris with ./build.sh --fe --be, sanitize configs from git HEAD, build a Docker image using docker/runtime/doris-compose/Dockerfile, create regression-conf-custom.groovy with testGroups set to docker, then run ./run-regression-test.sh --run -d <directory> -s <suite_name>.

Why does the Doris regression run find 0 suites?

Zero suites usually means excludeDockerTest is true or testGroups is not set to docker in regression-conf-custom.groovy. Set excludeDockerTest = false and testGroups = "docker" to enable docker-based suites.

What Python dependencies does Doris docker regression testing need?

It requires Python 3 with packages from docker/runtime/doris-compose/requirements.txt, notably pyyaml and docker. If PyYAML conflicts occur, install pyyaml==5.3.1 and docker==6.1.3 explicitly, or use a virtual environment.

Why do Doris docker tests fail with a JDWP error?

The JDWP error occurs when start_fe.sh in the package contains a debug agent from local edits. Re-sanitize it by running git show HEAD:bin/start_fe.sh into the output package and restoring execute permissions with chmod 755.

How do I fix port conflicts when running Doris docker tests?

Check which processes hold the default Doris ports with lsof -nP -iTCP:8030,8040,8050,8060,8070,9010,9020,9030,9050,9060 -sTCP:LISTEN. Stop the conflicting processes before starting the regression run.