[OpenSIPS-Devel] [OpenSIPS/opensips] a35848: clusterer/core: Make a node's URL port optional in...
Liviu Chircu
noreply at github.com
Wed Sep 15 15:01:31 EST 2021
Branch: refs/heads/master
Home: https://github.com/OpenSIPS/opensips
Commit: a3584877e3d136637b358947a67a7e89657f0981
https://github.com/OpenSIPS/opensips/commit/a3584877e3d136637b358947a67a7e89657f0981
Author: Liviu Chircu <liviu at opensips.org>
Date: 2021-09-15 (Wed, 15 Sep 2021)
Changed paths:
M modules/clusterer/node_info.c
M net/trans.c
M socket_info.c
Log Message:
-----------
clusterer/core: Make a node's URL port optional in db_mode 0
This patch directly improves the "my_node_info" and "neighbor_node_info"
modparams, which are used to provision cluster nodes without a DB.
Specifically, due to modparams being parsed very early in the startup
phase before proto_bin is loaded so PROTO_BIN 5555 is defined, when the
BIN port was missing from either BIN socket or above modparam node URLs,
the following errors would be thrown:
ERROR:clusterer:msg_send: send() to 10.0.0.210:0 for proto bin/7 failed
... or:
ERROR:clusterer:add_node_info: non-local socket <10.0.0.212> for ...
The solution involves two changes:
1. always define the PROTO_BIN 5555 port, so a missing node port
can be filled in as early as needed with the default 5555. The
loading of proto_bin can later fill in the other proto fields.
2. when a socket has an undefined port, use the .default_port of
the protocol when comparing it against an input node:port
More information about the Devel
mailing list