Skip to content

DO NOT MERGE: Exclude reactor and netty from azure-core and azure-core-http-netty libraries#16602

Closed
kushagraThapar wants to merge 2 commits intoAzure:masterfrom
kushagraThapar:exclude_reactor_and_netty_from_azure_core_http_netty
Closed

DO NOT MERGE: Exclude reactor and netty from azure-core and azure-core-http-netty libraries#16602
kushagraThapar wants to merge 2 commits intoAzure:masterfrom
kushagraThapar:exclude_reactor_and_netty_from_azure_core_http_netty

Conversation

@kushagraThapar
Copy link
Member

  • Since we depend on released versions of azure-core and azure-core-http-netty libraries, their released versions will depend on different netty versions than what we prefer to use.
  • Excluding the netty versions from these dependencies since we are seeing issues like below :

This PR is reproducing these issues - #15671

2020-09-29 17:36:58,661       [main] INFO  com.azure.cosmos.TestNGLogListener - beforeInvocation: TestSuiteBase#beforeSuite
2020-09-29 17:36:58,669       [TestNG-method=beforeSuite-1] INFO  TestSuiteBase - beforeSuite Started
2020-09-29 17:36:58,747       [TestNG-method=beforeSuite-1] INFO  com.azure.cosmos.implementation.RxDocumentClientImpl - Initializing DocumentClient with serviceEndpoint [https://paged-flux-test-account.documents.azure.com:443/], connectionPolicy [ConnectionPolicy{requestTimeout=PT5S, connectionMode=GATEWAY, maxConnectionPoolSize=1000, idleHttpConnectionTimeout=PT1M, idleTcpConnectionTimeout=null, userAgentSuffix='', throttlingRetryOptions=RetryOptions{maxRetryAttemptsOnThrottledRequests=9, maxRetryWaitTime=PT33H20M}, endpointDiscoveryEnabled=true, preferredRegions=null, multipleWriteRegionsEnabled=true, proxyType=null, inetSocketProxyAddress=null, readRequestsFallbackEnabled=true, connectTimeout=null, idleEndpointTimeout=null, maxConnectionsPerEndpoint=0, maxRequestsPerConnection=0}], consistencyLevel [Session], directModeProtocol [Tcp]
2020-09-29 17:36:58,959       [parallel-1] INFO  com.azure.cosmos.implementation.RxDocumentClientImpl - Getting database account endpoint from https://paged-flux-test-account.documents.azure.com:443/
2020-09-29 17:36:59,156       [reactor-http-nio-1] WARN  io.netty.channel.DefaultChannelPipeline - An exceptionCaught() event was fired, and it reached at the tail of the pipeline. It usually means the last handler in the pipeline did not handle the exception.
io.netty.channel.ChannelPipelineException: reactor.netty.resources.PooledConnectionProvider$PooledConnectionAllocator$PooledConnectionInitializer.handlerAdded() has thrown an exception; removed.
	at io.netty.channel.DefaultChannelPipeline.callHandlerAdded0(DefaultChannelPipeline.java:624) [netty-transport-4.1.52.Final.jar:?]
	at io.netty.channel.DefaultChannelPipeline.access$100(DefaultChannelPipeline.java:46) [netty-transport-4.1.52.Final.jar:?]
	at io.netty.channel.DefaultChannelPipeline$PendingHandlerAddedTask.execute(DefaultChannelPipeline.java:1463) [netty-transport-4.1.52.Final.jar:?]
	at io.netty.channel.DefaultChannelPipeline.callHandlerAddedForAllHandlers(DefaultChannelPipeline.java:1115) [netty-transport-4.1.52.Final.jar:?]
	at io.netty.channel.DefaultChannelPipeline.invokeHandlerAddedIfNeeded(DefaultChannelPipeline.java:650) [netty-transport-4.1.52.Final.jar:?]
	at io.netty.channel.AbstractChannel$AbstractUnsafe.register0(AbstractChannel.java:502) [netty-transport-4.1.52.Final.jar:?]
	at io.netty.channel.AbstractChannel$AbstractUnsafe.access$200(AbstractChannel.java:417) [netty-transport-4.1.52.Final.jar:?]
	at io.netty.channel.AbstractChannel$AbstractUnsafe$1.run(AbstractChannel.java:474) [netty-transport-4.1.52.Final.jar:?]
	at io.netty.util.concurrent.AbstractEventExecutor.safeExecute(AbstractEventExecutor.java:164) [netty-common-4.1.52.Final.jar:?]
	at io.netty.util.concurrent.SingleThreadEventExecutor.runAllTasks(SingleThreadEventExecutor.java:472) [netty-common-4.1.52.Final.jar:?]
	at io.netty.channel.nio.NioEventLoop.run(NioEventLoop.java:500) [netty-transport-4.1.52.Final.jar:?]
	at io.netty.util.concurrent.SingleThreadEventExecutor$4.run(SingleThreadEventExecutor.java:989) [netty-common-4.1.52.Final.jar:?]
	at io.netty.util.internal.ThreadExecutorMap$2.run(ThreadExecutorMap.java:74) [netty-common-4.1.52.Final.jar:?]
	at io.netty.util.concurrent.FastThreadLocalRunnable.run(FastThreadLocalRunnable.java:30) [netty-common-4.1.52.Final.jar:?]
	at java.lang.Thread.run(Thread.java:834) [?:?]
Caused by: java.util.NoSuchElementException: reactor.netty.resources.PooledConnectionProvider$PooledConnectionAllocator$PooledConnectionInitializer
	at io.netty.channel.DefaultChannelPipeline.getContextOrDie(DefaultChannelPipeline.java:1082) ~[netty-transport-4.1.52.Final.jar:?]
	at io.netty.channel.DefaultChannelPipeline.remove(DefaultChannelPipeline.java:417) ~[netty-transport-4.1.52.Final.jar:?]
	at reactor.netty.resources.PooledConnectionProvider$PooledConnectionAllocator$PooledConnectionInitializer.handlerAdded(PooledConnectionProvider.java:284) ~[reactor-netty-0.9.12.RELEASE.jar:?]
	at io.netty.channel.AbstractChannelHandlerContext.callHandlerAdded(AbstractChannelHandlerContext.java:938) [netty-transport-4.1.52.Final.jar:?]
	at io.netty.channel.DefaultChannelPipeline.callHandlerAdded0(DefaultChannelPipeline.java:609) [netty-transport-4.1.52.Final.jar:?]
	... 14 more

@ghost ghost added the Cosmos label Oct 20, 2020
@kushagraThapar kushagraThapar changed the title Exclude reactor and netty from azure-core and azure-core-http-netty libraries DO NOT MERGE: Exclude reactor and netty from azure-core and azure-core-http-netty libraries Oct 20, 2020
@kushagraThapar
Copy link
Member Author

We are experimenting with taking full dependencies on azure-core and azure-core-http-netty through this PR - #16604
If everything works fine, we will close this PR and will go with the transitive dependencies.

@kushagraThapar
Copy link
Member Author

Closing this PR, as the other solution worked well - #16604

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant