Bug 1653734 - [Logs] Useless BindException when ODL fails to bind to a taken port
Summary: [Logs] Useless BindException when ODL fails to bind to a taken port
Keywords:
Status: CLOSED WONTFIX
Alias: None
Product: Red Hat OpenStack
Classification: Red Hat
Component: opendaylight
Version: 13.0 (Queens)
Hardware: Unspecified
OS: Unspecified
medium
medium
Target Milestone: z5
: 13.0 (Queens)
Assignee: Stephen Kitt
QA Contact: Noam Manos
URL:
Whiteboard: Logs
Depends On:
Blocks:
TreeView+ depends on / blocked
 
Reported: 2018-11-27 14:10 UTC by Mike Kolesnik
Modified: 2019-03-06 16:17 UTC (History)
2 users (show)

Fixed In Version:
Doc Type: If docs needed, set a value
Doc Text:
Clone Of:
Environment:
N/A
Last Closed: 2019-03-06 16:14:36 UTC
Target Upstream Version:
Embargoed:


Attachments (Terms of Use)


Links
System ID Private Priority Status Summary Last Updated
OpenDaylight Bug NETCONF-585 0 None None None 2018-11-28 09:23:52 UTC
OpenDaylight Bug OPNFLWPLUG-1054 0 None None None 2018-11-27 15:05:29 UTC
OpenDaylight Bug OVSDB-473 0 None None None 2018-11-28 10:03:11 UTC
OpenDaylight gerrit 78212 0 None None None 2018-11-27 15:27:13 UTC
OpenDaylight gerrit 78250 0 None None None 2018-11-28 09:24:28 UTC
OpenDaylight gerrit 78251 0 None None None 2018-11-28 10:03:36 UTC

Description Mike Kolesnik 2018-11-27 14:10:21 UTC
Description of problem:
When working on Bug 1650260 we saw a BindException indicating that ODL failed to bind to a port, however it's not stating which address:port combination was used, so it's a guessing game to figure out which port wasn't bound.
Also there's a stack trace but it's not pointing to any ODL code (probably since it's using netty IO stack).


Version-Release number of selected component (if applicable):


How reproducible:


Steps to Reproduce:
1. Look at logs from Bug 1650260
2. Shortcut to logs: http://rhos-release.virt.bos.redhat.com/log/bz1650260/
3.

Actual results:
2018-11-15T14:12:00,444 | ERROR | SystemReadyService-0 | SystemReadyImpl                  | 278 - org.opendaylight.infrautils.ready-impl - 1.3.4.redhat-6 | Thread terminated due to uncaught exception: SystemReadyService-0
java.net.BindException: Address already in use
	at sun.nio.ch.Net.bind0(Native Method) ~[?:?]
	at sun.nio.ch.Net.bind(Net.java:433) [?:?]
	at sun.nio.ch.Net.bind(Net.java:425) [?:?]
	at sun.nio.ch.ServerSocketChannelImpl.bind(ServerSocketChannelImpl.java:223) [?:?]
	at io.netty.channel.socket.nio.NioServerSocketChannel.doBind(NioServerSocketChannel.java:128) [65:io.netty.transport:4.1.22.Final]
	at io.netty.channel.AbstractChannel$AbstractUnsafe.bind(AbstractChannel.java:558) [65:io.netty.transport:4.1.22.Final]
	at io.netty.channel.DefaultChannelPipeline$HeadContext.bind(DefaultChannelPipeline.java:1338) [65:io.netty.transport:4.1.22.Final]
	at io.netty.channel.AbstractChannelHandlerContext.invokeBind(AbstractChannelHandlerContext.java:501) [65:io.netty.transport:4.1.22.Final]
	at io.netty.channel.AbstractChannelHandlerContext.bind(AbstractChannelHandlerContext.java:486) [65:io.netty.transport:4.1.22.Final]
	at io.netty.handler.logging.LoggingHandler.bind(LoggingHandler.java:191) [63:io.netty.handler:4.1.22.Final]
	at io.netty.channel.AbstractChannelHandlerContext.invokeBind(AbstractChannelHandlerContext.java:501) [65:io.netty.transport:4.1.22.Final]
	at io.netty.channel.AbstractChannelHandlerContext.bind(AbstractChannelHandlerContext.java:486) [65:io.netty.transport:4.1.22.Final]
	at io.netty.channel.DefaultChannelPipeline.bind(DefaultChannelPipeline.java:999) [65:io.netty.transport:4.1.22.Final]
	at io.netty.channel.AbstractChannel.bind(AbstractChannel.java:254) [65:io.netty.transport:4.1.22.Final]
	at io.netty.bootstrap.AbstractBootstrap$2.run(AbstractBootstrap.java:366) [65:io.netty.transport:4.1.22.Final]
	at io.netty.util.concurrent.AbstractEventExecutor.safeExecute(AbstractEventExecutor.java:163) [62:io.netty.common:4.1.22.Final]
	at io.netty.util.concurrent.SingleThreadEventExecutor.runAllTasks(SingleThreadEventExecutor.java:404) [62:io.netty.common:4.1.22.Final]
	at io.netty.channel.nio.NioEventLoop.run(NioEventLoop.java:463) [65:io.netty.transport:4.1.22.Final]
	at io.netty.util.concurrent.SingleThreadEventExecutor$5.run(SingleThreadEventExecutor.java:886) [62:io.netty.common:4.1.22.Final]
	at io.netty.util.concurrent.FastThreadLocalRunnable.run(FastThreadLocalRunnable.java:30) [62:io.netty.common:4.1.22.Final]
	at java.lang.Thread.run(Thread.java:748) [?:?]



Expected results:
Probably some log message with the address and port that failed would be nice, also if it's possible to avoid the stack trace that would be nice to have


Additional info:

Comment 2 Mike Kolesnik 2018-11-28 08:34:51 UTC
I'm wondering if some of these files also need to be handled since they also seem to be binding to ports:
https://github.com/search?q=org%3Aopendaylight+io.netty.bootstrap.ServerBootstrap&type=Code

Comment 3 Franck Baudin 2019-03-06 16:14:36 UTC
As per depreciation notice [1], closing this bug. Please reopen if relevant for RHOSP13, as this is the only version shipping ODL.

[1] https://access.redhat.com/documentation/en-us/red_hat_openstack_platform/14/html-single/release_notes/index#deprecated_functionality

Comment 4 Franck Baudin 2019-03-06 16:17:08 UTC
As per depreciation notice [1], closing this bug. Please reopen if relevant for RHOSP13, as this is the only version shipping ODL.

[1] https://access.redhat.com/documentation/en-us/red_hat_openstack_platform/14/html-single/release_notes/index#deprecated_functionality


Note You need to log in before you can comment on or make changes to this bug.