- [x] I have searched the [issues](https://github.com/apache/incubator-dubbo/issues) of this repository and believe that this is not a duplicate.
- [x] I have checked the [FAQ](https://github.com/apache/incubator-dubbo/blob/master/FAQ.md) of this repository and believe that this is not a duplicate.

### Environment

* Dubbo version: 2.7.0
* Operating System version: Windows7
* Java version: jdk8

### Steps to reproduce this issue

1. stop dubbo service
2. dubbo client set checked = true.  do get cudbbo client for times.
3. the size of list field [urls] in ReferenceConfig wil increase

Pls. provide [GitHub address] to reproduce this issue.
(project)[https://github.com/vio-lin/incubator-dubbo/tree/error-situation]  
run java file 
 incubator-dubbo\dubbo-demo\dubbo-demo-xml\dubbo-demo-xml-consumer\src\main\java\org\apache\dubbo\demo\consumer\Application.java
### Expected Result
the [urls] in ReferenceConfig will be updated.

### Actual Result
the avalidable registery urls be add to [urls] in ReferenceConfig

invokers.add(REF_PROTOCOL.refer(interfaceClass, url));
                    if (REGISTRY_PROTOCOL.equals(url.getProtocol())) {
                        registryURL = url; // 
                    }
                }
                if (registryURL != null) { // 
                    // 
                    URL u = registryURL.addParameter(CLUSTER_KEY, RegistryAwareCluster.NAME);
                    // 
                    invoker = CLUSTER.join(new StaticDirectory(u, invokers));
                } else { // 
                    invoker = CLUSTER.join(new StaticDirectory(invokers));
                }
            }
        }
        if (shouldCheck() && !invoker.isAvailable()) {
            throw new IllegalStateException("Failed to check the status of the service " + interfaceName + ". No provider available for the service " + (group == null ? "" : group + "/") + interfaceName + (version == null ? "" : ":" + version) + " from the url " + invoker.getUrl() + " to the consumer " + NetUtils.getLocalHost() + " use dubbo version " + Version.getVersion());
        }
        if (logger.isInfoEnabled()) {
            logger.info("Refer dubbo service " + interfaceClass.getName() + " from url " + invoker.getUrl());
        }
        /**
         * @since 2.7.0
         * ServiceData Store
         */
        MetadataReportService metadataReportService = null;
        if ((metadataReportService = getMetadataReportService()) != null) {
            URL consumerURL = new URL(CONSUMER_PROTOCOL, map.remove(REGISTER_IP_KEY), 0, map.get(INTERFACE_KEY), map);
            metadataReportService.publishConsumer(consumerURL);
        }