<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>spring boot webflux: 2.1.6</li>
<li>Operating System version: MacOS</li>
<li>Java version: 1.8</li>
</ul>
<h3 dir="auto">Steps to reproduce this issue</h3>
<p dir="auto"><a href="https://github.com/zjw2011/testdubbo">https://github.com/zjw2011/testdubbo</a></p>
<h3 dir="auto">Expected Result</h3>
<p dir="auto">What do you expected from the above steps？</p>
<h3 dir="auto">Actual Result</h3>
<p dir="auto">What actually happens?</p>
<p dir="auto">If there is an exception, please attach the exception trace:</p>
<div class="snippet-clipboard-content notranslate position-relative overflow-auto" data-snippet-clipboard-copy-content="Exception in thread &quot;Thread-3&quot; java.lang.IllegalStateException: java.lang.IllegalStateException: Socket couldn't be stopped within 3000ms
	at org.springframework.boot.web.reactive.context.ReactiveWebServerApplicationContext$ServerManager.stop(ReactiveWebServerApplicationContext.java:233)
	at org.springframework.boot.web.reactive.context.ReactiveWebServerApplicationContext.stopAndReleaseReactiveWebServer(ReactiveWebServerApplicationContext.java:157)
	at org.springframework.boot.web.reactive.context.ReactiveWebServerApplicationContext.onClose(ReactiveWebServerApplicationContext.java:151)
	at org.springframework.context.support.AbstractApplicationContext.doClose(AbstractApplicationContext.java:1032)
	at org.springframework.context.support.AbstractApplicationContext$1.run(AbstractApplicationContext.java:945)
Caused by: java.lang.IllegalStateException: Socket couldn't be stopped within 3000ms
	at reactor.netty.DisposableChannel.disposeNow(DisposableChannel.java:98)
	at reactor.netty.DisposableChannel.disposeNow(DisposableChannel.java:82)
	at org.springframework.boot.web.embedded.netty.NettyWebServer.stop(NettyWebServer.java:120)
	at org.springframework.boot.web.reactive.context.ReactiveWebServerApplicationContext$ServerManager.stop(ReactiveWebServerApplicationContext.java:230)
	... 4 more"><pre class="notranslate"><code class="notranslate">Exception in thread "Thread-3" java.lang.IllegalStateException: java.lang.IllegalStateException: Socket couldn't be stopped within 3000ms
	at org.springframework.boot.web.reactive.context.ReactiveWebServerApplicationContext$ServerManager.stop(ReactiveWebServerApplicationContext.java:233)
	at org.springframework.boot.web.reactive.context.ReactiveWebServerApplicationContext.stopAndReleaseReactiveWebServer(ReactiveWebServerApplicationContext.java:157)
	at org.springframework.boot.web.reactive.context.ReactiveWebServerApplicationContext.onClose(ReactiveWebServerApplicationContext.java:151)
	at org.springframework.context.support.AbstractApplicationContext.doClose(AbstractApplicationContext.java:1032)
	at org.springframework.context.support.AbstractApplicationContext$1.run(AbstractApplicationContext.java:945)
Caused by: java.lang.IllegalStateException: Socket couldn't be stopped within 3000ms
	at reactor.netty.DisposableChannel.disposeNow(DisposableChannel.java:98)
	at reactor.netty.DisposableChannel.disposeNow(DisposableChannel.java:82)
	at org.springframework.boot.web.embedded.netty.NettyWebServer.stop(NettyWebServer.java:120)
	at org.springframework.boot.web.reactive.context.ReactiveWebServerApplicationContext$ServerManager.stop(ReactiveWebServerApplicationContext.java:230)
	... 4 more
</code></pre></div>
<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.4-SNAPSHOT</li>
<li>Operating System version: macOS10.12.6</li>
<li>Java version: 1.8</li>
</ul>
<p dir="auto">打包的时候测试用例无法通过，dubbo-metadata-report-etcd，无论是本地还是travis-ci中跑。</p>
<div class="highlight highlight-source-java notranslate position-relative overflow-auto" dir="auto" data-snippet-clipboard-copy-content="[INFO] 
[INFO] --- maven-surefire-plugin:2.22.1:test (default-test) @ dubbo-metadata-report-etcd ---
[INFO] 
[INFO] -------------------------------------------------------
[INFO]  T E S T S
[INFO] -------------------------------------------------------
[INFO] Running org.apache.dubbo.metadata.store.etcd.EtcdMetadataReportTest
SLF4J: Failed to load class &quot;org.slf4j.impl.StaticLoggerBinder&quot;.
SLF4J: Defaulting to no-operation (NOP) logger implementation
SLF4J: See http://www.slf4j.org/codes.html#StaticLoggerBinder for further details.
        â„¹ï¸Ž Checking the system...
        âœ” Docker version should be at least 1.6.0
        âœ” Docker environment should have more than 2GB free disk space
log4j:WARN No appenders could be found for logger (io.netty.util.internal.logging.InternalLoggerFactory).
log4j:WARN Please initialize the log4j system properly.
log4j:WARN See http://logging.apache.org/log4j/1.2/faq.html#noconfig for more info.
[ERROR] Tests run: 2, Failures: 0, Errors: 1, Skipped: 1, Time elapsed: 11.156 s &lt;&lt;&lt; FAILURE! - in org.apache.dubbo.metadata.store.etcd.EtcdMetadataReportTest
[ERROR] testStoreConsumer  Time elapsed: 4.239 s  &lt;&lt;&lt; ERROR!
java.lang.IndexOutOfBoundsException: Index: 0, Size: 0
	at org.apache.dubbo.metadata.store.etcd.EtcdMetadataReportTest.testStoreConsumer(EtcdMetadataReportTest.java:104)

[INFO] 
[INFO] Results:
[INFO] 
[ERROR] Errors: 
[ERROR]   EtcdMetadataReportTest.testStoreConsumer:104 Â» IndexOutOfBounds Index: 0, Size..."><pre class="notranslate">[<span class="pl-c1">INFO</span>] 
[<span class="pl-c1">INFO</span>] --- <span class="pl-s1">maven</span>-<span class="pl-s1">surefire</span>-<span class="pl-s1">plugin</span>:<span class="pl-c1">2.22</span>.<span class="pl-c1">1</span>:<span class="pl-en">test</span> (<span class="pl-s1">default</span>-<span class="pl-s1">test</span>) <span class="pl-c1">@</span> <span class="pl-s1">dubbo</span>-<span class="pl-s1">metadata</span>-<span class="pl-s1">report</span>-<span class="pl-s1">etcd</span> ---<span class="pl-s1"></span>
[<span class="pl-c1">INFO</span>] 
[<span class="pl-c1">INFO</span>] -------------------------------------------------------<span class="pl-s1"></span>
[<span class="pl-c1">INFO</span>]  <span class="pl-smi">T</span> <span class="pl-s1">E</span> <span class="pl-smi">S</span> <span class="pl-s1">T</span> <span class="pl-s1">S</span>
[<span class="pl-c1">INFO</span>] -------------------------------------------------------<span class="pl-s1"></span>
[<span class="pl-c1">INFO</span>] <span class="pl-smi">Running</span> <span class="pl-s1">org</span>.<span class="pl-s1">apache</span>.<span class="pl-s1">dubbo</span>.<span class="pl-s1">metadata</span>.<span class="pl-s1">store</span>.<span class="pl-s1">etcd</span>.<span class="pl-s1">EtcdMetadataReportTest</span>
<span class="pl-c1">SLF4J</span>: <span class="pl-smi">Failed</span> <span class="pl-s1">to</span> <span class="pl-smi">load</span> <span class="pl-s1">class</span> <span class="pl-s">"org.slf4j.impl.StaticLoggerBinder"</span>.
<span class="pl-c1">SLF4J</span>: <span class="pl-smi">Defaulting</span> <span class="pl-s1">to</span> <span class="pl-s1">no</span>-<span class="pl-en">operation</span> (<span class="pl-c1">NOP</span>) <span class="pl-smi">logger</span> <span class="pl-s1">implementation</span>
<span class="pl-c1">SLF4J</span>: <span class="pl-smi">See</span> <span class="pl-s1">http</span>:<span class="pl-c">//www.slf4j.org/codes.html#StaticLoggerBinder for further details.</span>
        <span class="pl-s1">â</span>„¹<span class="pl-s1">ï</span>¸<span class="pl-s1">Ž</span> <span class="pl-s1">Checking</span> <span class="pl-s1">the</span> <span class="pl-s1">system</span>...
        <span class="pl-s1">âœ</span>” <span class="pl-s1">Docker</span> <span class="pl-s1">version</span> <span class="pl-s1">should</span> <span class="pl-s1">be</span> <span class="pl-s1">at</span> <span class="pl-s1">least</span> <span class="pl-c1">1.6</span><span class="pl-c1">.0</span>
        <span class="pl-s1">âœ</span>” <span class="pl-s1">Docker</span> <span class="pl-s1">environment</span> <span class="pl-s1">should</span> <span class="pl-s1">have</span> <span class="pl-s1">more</span> <span class="pl-s1">than</span> <span class="pl-c1">2</span><span class="pl-c1">GB</span> <span class="pl-s1">free</span> <span class="pl-s1">disk</span> <span class="pl-s1">space</span>
<span class="pl-s1">log4j</span>:<span class="pl-c1">WARN</span> <span class="pl-s1">No</span> <span class="pl-s1">appenders</span> <span class="pl-s1">could</span> <span class="pl-s1">be</span> <span class="pl-smi">found</span> <span class="pl-s1">for</span> <span class="pl-en">logger</span> (<span class="pl-s1">io</span>.<span class="pl-s1">netty</span>.<span class="pl-s1">util</span>.<span class="pl-s1">internal</span>.<span class="pl-s1">logging</span>.<span class="pl-s1">InternalLoggerFactory</span>).
<span class="pl-s1">log4j</span>:<span class="pl-c1">WARN</span> <span class="pl-smi">Please</span> <span class="pl-s1">initialize</span> <span class="pl-smi">the</span> <span class="pl-s1">log4j</span> <span class="pl-smi">system</span> <span class="pl-s1">properly</span>.
<span class="pl-s1">log4j</span>:<span class="pl-c1">WARN</span> <span class="pl-s1">See</span> <span class="pl-s1">http</span>:<span class="pl-c">//logging.apache.org/log4j/1.2/faq.html#noconfig for more info.</span>
[<span class="pl-c1">ERROR</span>] <span class="pl-s1">Tests</span> <span class="pl-s1">run</span>: <span class="pl-c1">2</span>, <span class="pl-s1">Failures</span>: <span class="pl-c1">0</span>, <span class="pl-s1">Errors</span>: <span class="pl-c1">1</span>, <span class="pl-s1">Skipped</span>: <span class="pl-c1">1</span>, <span class="pl-smi">Time</span> <span class="pl-s1">elapsed</span>: <span class="pl-c1">11.156</span> <span class="pl-s1">s</span> &lt;&lt;&lt; <span class="pl-c1">FAILURE</span>! - <span class="pl-smi">in</span> <span class="pl-s1">org</span>.<span class="pl-s1">apache</span>.<span class="pl-s1">dubbo</span>.<span class="pl-s1">metadata</span>.<span class="pl-s1">store</span>.<span class="pl-s1">etcd</span>.<span class="pl-s1">EtcdMetadataReportTest</span>
[<span class="pl-c1">ERROR</span>] <span class="pl-s1">testStoreConsumer</span>  <span class="pl-smi">Time</span> <span class="pl-s1">elapsed</span>: <span class="pl-c1">4.239</span> <span class="pl-s1">s</span>  &lt;&lt;&lt; <span class="pl-c1">ERROR</span>!
<span class="pl-smi">java</span>.<span class="pl-smi">lang</span>.<span class="pl-smi">IndexOutOfBoundsException</span>: <span class="pl-s1">Index</span>: <span class="pl-c1">0</span>, <span class="pl-s1">Size</span>: <span class="pl-c1">0</span>
	<span class="pl-s1">at</span> <span class="pl-s1">org</span>.<span class="pl-s1">apache</span>.<span class="pl-s1">dubbo</span>.<span class="pl-s1">metadata</span>.<span class="pl-s1">store</span>.<span class="pl-s1">etcd</span>.<span class="pl-s1">EtcdMetadataReportTest</span>.<span class="pl-en">testStoreConsumer</span>(<span class="pl-smi">EtcdMetadataReportTest</span>.<span class="pl-smi">java</span>:<span class="pl-c1">104</span>)

[<span class="pl-c1">INFO</span>] 
[<span class="pl-c1">INFO</span>] <span class="pl-s1">Results</span>:
[<span class="pl-c1">INFO</span>] 
[<span class="pl-c1">ERROR</span>] <span class="pl-s1">Errors</span>: 
[<span class="pl-c1">ERROR</span>]   <span class="pl-smi">EtcdMetadataReportTest</span>.<span class="pl-smi">testStoreConsumer</span>:<span class="pl-c1">104</span> <span class="pl-s1">Â</span>» <span class="pl-s1">IndexOutOfBounds</span> <span class="pl-s1">Index</span>: <span class="pl-c1">0</span>, <span class="pl-s1">Size</span>...</pre></div>