Skip to content

[Bug] The dynamic configuration updates at the application-level are not effective immediately (or in real-time) for application-level calls in Dubbo 3 #15802

@renyuweighub

Description

@renyuweighub

Pre-check

  • I am sure that all the content I provide is in English.

Search before asking

  • I had searched in the issues and found no similar issues.

Apache Dubbo Component

Java SDK (apache/dubbo)

Dubbo Version

Dubbo Java 3.2.11,jdk 1.8,mac os 14.2

Steps to reproduce this issue

1.First, define and deploy the provider of the RPC interface com.demo.framework.dubbo.demo.api.UdubboDemoService

Image

2.Use the FORCE_APPLICATION invocation strategy

dubbo.application.migration.step=FORCE_APPLICATION

3.Start the subscriber application to invoke the provider, and observe the old timeout and retry value

4.Then modify the subscriber’s application-level dynamic configuration for timeout and retries

Image

5.Observe whether the dynamic configuration takes effect

What you expected to happen

The expected values for the timeout and retry configurations in the actual invocation should be consistent with the application-level dynamic configuration, but the settings did not take effect, and the old timeout and retry values were retained.

Anything else

I have identified the potential cause. The issue might be in the following code:

In the ServiceDiscoveryRegistryDirectory class, the return value of the urlChanged method does not reflect changes in the application-level dynamic configuration. Consequently, the invoker is not re-initialized, and the system continues to use the old invoker, which is why the dynamic configuration is not taking effect in real-time. In contrast, dynamic configurations at the service/interface level are taking effect in real-time.

Image

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!

Code of Conduct

Metadata

Metadata

Assignees

No one assigned

    Labels

    help wantedEverything needs help from contributors

    Type

    No type

    Projects

    Status

    Todo

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions