File tree Expand file tree Collapse file tree 1 file changed +9
-28
lines changed
Expand file tree Collapse file tree 1 file changed +9
-28
lines changed Original file line number Diff line number Diff line change @@ -258,34 +258,15 @@ help()
258258}
259259
260260# dynamic node name helper
261- uid () {
262- ERTSVERSION=" $( " $ERL " -version 2>&1 | sed ' s|.*\([0-9][0-9]\).*|\1|g' ) "
263- if [ $ERTSVERSION -lt 11 ] ; then # otp 23.0 includes erts 11.0
264- # Erlang/OTP lower than 23, which doesn's support dynamic node code
265- N=1
266- PF=$(( $$ % 97 ))
267- while
268- case $# in
269- 0) NN=" ${PF} -${N} -${ERLANG_NODE} "
270- ;;
271- 1) NN=" ${PF} -${N} -${1} -${ERLANG_NODE} "
272- ;;
273- 2) NN=" ${PF} -${N} -${1} @${2} "
274- ;;
275- esac
276- N=$(( N + 1 + ( $$ % 5 ) ))
277- " $EPMD " -names 2> /dev/null | grep -q " ${NN%@* } "
278- do : ; done
279- echo $NN
280- else
281- # Erlang/OTP 23 or higher: use native dynamic node code
282- # https://www.erlang.org/patches/otp-23.0#OTP-13812
283- if [ " $ERLANG_NODE " != " ${ERLANG_NODE% .* } " ]; then
284- echo " undefined@${ERLANG_NODE#*@ } "
285- else
286- echo " undefined"
287- fi
288- fi
261+ uid ()
262+ {
263+ uuid=$( uuidgen 2> /dev/null)
264+ [ -z " $uuid " ] && [ -f /proc/sys/kernel/random/uuid ] && uuid=$( cat /proc/sys/kernel/random/uuid)
265+ [ -z " $uuid " ] && uuid=$( printf " %X" " ${RANDOM:- $$ } $( date +%M%S) " )
266+ uuid=$( printf ' %s' $uuid | sed ' s/^\(...\).*$/\1/' )
267+ [ $# -eq 0 ] && echo " ${uuid} -${ERLANG_NODE} "
268+ [ $# -eq 1 ] && echo " ${uuid} -${1} -${ERLANG_NODE} "
269+ [ $# -eq 2 ] && echo " ${uuid} -${1} @${2} "
289270}
290271
291272# stop epmd if there is no other running node
You can’t perform that action at this time.
0 commit comments