<ul class="contains-task-list">
<li class="task-list-item"><input type="checkbox" id="" disabled="" class="task-list-item-checkbox" checked=""> I have searched the <a href="https://github.com/apache/dubbo/issues">issues</a> of this repository and believe that this is not a duplicate.</li>
<li class="task-list-item"><input type="checkbox" id="" disabled="" class="task-list-item-checkbox" checked=""> I have checked the <a href="https://github.com/apache/dubbo/blob/master/FAQ.md">FAQ</a> of this repository and believe that this is not a duplicate.</li>
</ul>
<h3 dir="auto">Environment</h3>
<ul dir="auto">
<li>Dubbo version: 2.7.3</li>
<li>Operating System version: macOs Sierra</li>
<li>Java version: JDK 1.8</li>
</ul>
<h3 dir="auto">Steps to reproduce this issue</h3>
<ol dir="auto">
<li>Extend the dubbo filter in 2.5.x version, and identify on whether it's RpcInvocation as below.</li>
</ol>
<div class="snippet-clipboard-content notranslate position-relative overflow-auto" data-snippet-clipboard-copy-content="import com.alibaba.dubbo.rpc.RpcInvocation;

public class SomeFilter implements Filter {

    @Override
    public Result invoke(Invoker&lt;?&gt; invoker, Invocation invocation) throws RpcException {
        if (invocation instanceof RpcInvocation) {
            ((RpcInvocation) invocation).setInvoker(invoker);
        }
        return invoker.invoke(invocation);
    }
}"><pre class="notranslate"><code class="notranslate">import com.alibaba.dubbo.rpc.RpcInvocation;

public class SomeFilter implements Filter {

    @Override
    public Result invoke(Invoker&lt;?&gt; invoker, Invocation invocation) throws RpcException {
        if (invocation instanceof RpcInvocation) {
            ((RpcInvocation) invocation).setInvoker(invoker);
        }
        return invoker.invoke(invocation);
    }
}
</code></pre></div>
<ol start="2" dir="auto">
<li>when upgrade it's to 2.7.3, it throws NotFoundClass exception as 2.7.3 removed the com.alibaba.dubbo.rpc.RpcInvocation</li>
</ol>
<p dir="auto">Pls. provide [GitHub address] to reproduce this issue.</p>
<h3 dir="auto">Expected Result</h3>
<p dir="auto">2.7.3 should backward compatible, should not throw exception.</p>
<h3 dir="auto">Actual Result</h3>
<p dir="auto">2.7.3 cannot backward compatible with 2.5.x or 2.6.x.</p>
<ul class="contains-task-list">
<li class="task-list-item"><input type="checkbox" id="" disabled="" class="task-list-item-checkbox" checked=""> I have searched the <a href="https://github.com/apache/dubbo/issues">issues</a> of this repository and believe that this is not a duplicate.</li>
<li class="task-list-item"><input type="checkbox" id="" disabled="" class="task-list-item-checkbox" checked=""> I have checked the <a href="https://github.com/apache/dubbo/blob/master/FAQ.md">FAQ</a> of this repository and believe that this is not a duplicate.</li>
</ul>
<h3 dir="auto">Environment</h3>
<ul dir="auto">
<li>Dubbo version: 2.7.6-SNAPSHOT</li>
</ul>
<h3 dir="auto">Steps to reproduce this issue</h3>
<p dir="auto"><a href="https://github.com/apache/dubbo/blob/master/dubbo-registry/dubbo-registry-etcd3/src/main/java/org/apache/dubbo/registry/etcd/EtcdServiceDiscovery.java#L64">https://github.com/apache/dubbo/blob/master/dubbo-registry/dubbo-registry-etcd3/src/main/java/org/apache/dubbo/registry/etcd/EtcdServiceDiscovery.java#L64</a></p>
<div class="highlight highlight-source-java notranslate position-relative overflow-auto" dir="auto" data-snippet-clipboard-copy-content="private final ConcurrentMap&lt;URL, ConcurrentMap&lt;NotifyListener, ChildListener&gt;&gt; etcdListeners = new ConcurrentHashMap&lt;&gt;();"><pre class="notranslate"><span class="pl-k">private</span> <span class="pl-k">final</span> <span class="pl-smi">ConcurrentMap</span>&lt;<span class="pl-smi">URL</span>, <span class="pl-smi">ConcurrentMap</span>&lt;<span class="pl-smi">NotifyListener</span>, <span class="pl-smi">ChildListener</span>&gt;&gt; <span class="pl-s1">etcdListeners</span> = <span class="pl-k">new</span> <span class="pl-smi">ConcurrentHashMap</span>&lt;&gt;();</pre></div>
<p dir="auto">Need check this line</p>