[Bug] QoS count command ignores the times argument after cd
Maintainers usually reply within 1 day
Assessment
- Difficulty
- 2/5
- Estimated time
- 1-3 hours
- Newbie friendliness
- 82/100
Research direction
Read CountTelnet#execute and its command usage in the QoS CountTelnet implementation; the issue identifies the argument parsing that selects times. Compare the arguments after cd with those when the service name is supplied, then run or add coverage for count length 3 after cd repro.Echo. Done when it prints the statistics table three times, matching the command without cd.
Written by the indexing model from the issue text.
Description
Apache Dubbo Component
Java SDK (apache/dubbo)
Dubbo Version
3.3 branch (cb05763298), OpenJDK 21, macOS. The argument parsing goes back to CountTelnetHandler in 2.0.7 and was carried over to the QoS CountTelnet in #8175.
Steps to reproduce this issue
- Start a provider with QoS enabled and a dubbo service (here
repro.Echowith a methodlength). - Connect to the QoS port and run
cd repro.Echo, thencount length 3.
The statistics table is printed once. Without cd, count repro.Echo length 3 prints it three times, one second apart.
CountTelnet#execute reads the times like this:
if (service == null || service.length() == 0) {
service = args[0];
method = args.length > 1 ? args[1] : null;
} else {
method = args.length > 0 ? args[0] : null;
}
if (StringUtils.isNumber(method)) {
times = method;
method = null;
} else {
times = args.length > 2 ? args[2] : "1";
}
After cd, the arguments are [method, times], so args[2] does not exist and times falls back to "1". (count length 3 5 after cd runs five times.)
What you expected to happen
count length 3 after cd repro.Echo prints the table three times, like count repro.Echo length 3. The usage message of the command also describes cd XxxService as an alternative to giving the service name (count XxxService xxxMethod 10 ... or "cd XxxService" firstly).
Anything else
count 3 after cd (no method) already works, because a numeric first argument is taken as the times.
Are you willing to submit a pull request to fix on your own?
- Yes I am willing to submit a pull request on my own!
- Dominant language
- Java
- Stars
- 41.6k
- Forks
- 26.3k
- Avg merge
- 19h 56m
- Merged PRs (30d)
- 9
Getting set up
- No Dockerfile or Docker Compose file
- Has a pull request template
- Read the contributing guide
First steps
- Read the whole issue, then the project's contributing guide.
- Comment on the issue to say you are picking it up — it saves two people doing the same work.
- Fork the repository and make your change on a branch.
- Open a pull request that references the issue number.
More from apache/dubbo
-
[Bug] AccessLogFilter accesslog path warnings are garbled and name the wrong accesslog.fixed.path valuePossibly taken @CCCLL claimed this 2 days ago. Open
Difficulty 1/5 1-3 hours Newbie friendliness 88/100
Maintainers usually reply within 1 day
-
[Bug] dubbo.protocol.triple.max-message-size is only read from OS environment variablesPossibly taken @CCCLL claimed this 3 days ago. Open
Difficulty 2/5 1-3 hours Newbie friendliness 72/100
Maintainers usually reply within 1 day
-
[Bug] StreamUtils treats InputStream.available() as the remaining stream lengthPossibly taken A pull request linked to this issue is open or already merged. Opencomponent/need-triage type/need-triage
Difficulty 2/5 1-3 hours Newbie friendliness 75/100
apache/dubbo#16510 · 2 comments ·
Maintainers usually reply within 1 day
-
[Bug] Negative frame data length causes IllegalArgumentException in ExchangeCodecPossibly taken @L1nq0 claimed this 47 days ago. Opencomponent/need-triage type/need-triage
Difficulty 2/5 1-3 hours Newbie friendliness 88/100
Maintainers usually reply within 1 day
-
[Bug] JavaBeanSerializeUtil.serialize() throws IllegalArgumentException on a Map containing a null keyPossibly taken @waterWang claimed this 58 days ago. Opencomponent/need-triage type/need-triage
Difficulty 2/5 1-3 hours Newbie friendliness 78/100
apache/dubbo#16432 · 5 comments · 1 reaction ·
Maintainers usually reply within 1 day
Similar issues
-
enhancement
Difficulty 2/5 1-3 hours Newbie friendliness 65/100
-
bug
Difficulty 2/5 1-3 hours Newbie friendliness 72/100
ReChronoRain/HyperCeiler#1743 ·
Maintainers usually reply within 6 days
-
Weaviate: bump test image to 1.39.13 (CVE-2026-111943) and identify solon-ai via integration headerOpen
Difficulty 2/5 1-3 hours Newbie friendliness 72/100
-
status: needs-triage
Difficulty 2/5 1-3 hours Newbie friendliness 78/100
JabRef/jabref#17546 · 1 comment ·
Maintainers usually reply within 1 day
-
Difficulty 2/5 1-3 hours Newbie friendliness 86/100
hiero-ledger/hiero-sdk-java#3010 ·
Maintainers usually reply within 1 day