[Bug] Dubbo 3.3.5 fails to start with Nacos 3.x due to removed /v1/ns/operator/switches API
- Dominant language
- Java
- Stars
- 41.6k
- Forks
- 26.4k
- Avg merge
- 15h 13m
- Merged PRs (30d)
- 4
Description
### Pre-check
- [x] I am sure that all the content I provide is in English.
### Search before asking
- [x] I had searched in the [issues](https://github.com/apache/dubbo/issues?q=is%3Aissue) and found no similar issues.
### Apache Dubbo Component
Java SDK (apache/dubbo)
### Dubbo Version
| Item | Version |
| --------------- |-----------------|
| Dubbo | 3.3.0 |
| Nacos Server | 3.0.2 |
| JDK | openjdk-17 |
| OS | Windows |
### Steps to reproduce this issue
1.Start Nacos 3.0.2 in standalone mode:
docker run -d -p 8082:8848 -p 8083:9848 \
-e MODE=standalone nacos/nacos-server:3.0.2
Configure Dubbo application.yml:
dubbo:
config-center:
address: nacos://localhost:8082
registry:
address: nacos://localhost:8082
metadata-report:
address: nacos://localhost:8082
Start the Dubbo application.
### What you expected to happen
Application starts successfully with logs:
Successfully connected to nacos config server ...
### Anything else
Actual Behavior
Logs repeatedly print:
Failed to connect to nacos config server. Server status: DOWN. Config Service Available: true.
Root Cause
Dubbo uses GET /nacos/v1/ns/operator/switches to determine the server status.
Nacos 3.x has removed this endpoint and returns 410 Gone, causing Dubbo to treat the server as DOWN.
### Are you willing to submit a pull request to fix on your own?
- [x] Yes I am willing to submit a pull request on my own!
### Code of Conduct
- [x] I agree to follow this project's [Code of Conduct](https://www.apache.org/foundation/policies/conduct)
Contributor guide
Research direction
Reproduce the startup failure with Dubbo 3.3.0, Nacos 3.0.2, and the supplied configuration, then trace the Nacos server-status check that requests GET /nacos/v1/ns/operator/switches. Confirm how the 410 response is interpreted and add compatibility handling with regression coverage. Done means the application starts successfully against Nacos 3.x without repeated DOWN status logs.
Written by the indexing model from the issue text.
Assessment
- Tech stack
- java
- Domain
- backend-api-design, distributed-systems
- Issue type
- Bug
- Difficulty
- 3/5
- Estimated time
- 1-2 days
- Activity status
- Quiet
- Clarity
- Mostly clear
- Newbie friendliness
- 57/100