Commit
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
pool: always bind to TCP ports for netty based movers
Motivation: Currently netty-based moves use late port binding, IOW, the bind will happen when first mover is started and unbind when no more active movers there. This has two issues (with the result "No free port within range"): 1) In a situation, where a pool has limited number of ports reserved for xroot and http moves, the it might be that no free ports available. Thus some movers will fail to start. 2) the movers might start and stop in unfortunate sequence, so that after port unbind, the next client comes before TCP port is released y kernel (typically 1m). Thus having early bind have an advantage of either fast fail, if not ports available, and keep the port for pool lifetime. Modification: Update NettyTransferServie to bind the port on startup. Dropped dependency on Spring's SmartLifecycle interface as it gives us no additional value. Result: more predictable pool operation Fixes: #7148 Acked-by: Dmitry Litvintsev Target: master Require-book: no Require-notes: yes
- Loading branch information
Showing
2 changed files
with
13 additions
and
56 deletions.
There are no files selected for viewing
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters